Which pin to use for ID on Micro B connector for initrd massflashing?

Hi all,

when trying to use the initrd flash method (e.g. for use with the new mass-flash method introduced in JP5) for flashing a Jetson Xavier NX on our own carrier board implementation, we run into the issue that the host system is waiting infinitely on booting up the target boards.

While reading through the forum, it came out that there was a faulty / contra-dictional description in the legacy L4T Documentation (Jetson Module Adaptation and Bring-Up: Jetson Xavier NX Series — Jetson Linux
Developer Guide 34.1 documentation (nvidia.com)
) and the Xavier NX DevKit Board Reference Schematics. In short words:

  • to use a USB Port as a OTG Port (as mentioned in the recent L4T docs), an ID Signal has to be connected to the corresponding Pin on the USB-Connector. Because in the reference schematics, no such pin is connected but the default image is configured to use the port in OTG Mode, this implementation is and was dysfunctional for the Xavier NX DevKit carrier board.
  • Because we aligned our carrier board schematics to the reference, we also don’t have this pin on our board connected.

Our customer needs this implementation for mass-flash purposes, so we think about:

Following this documentation, we run (again!) in several issues:

Furhermore, other than experienced with all L4T BSP version prior than 35.1, in 35.3.1 there is written:

This is the USBConnectorClass device node and property list based on the device tree structure and the table of GPIO states and corresponding output cable states for GPIO_PZI that is customized for Jetson Xavier NX, where the ID pin that is floating the port is fixed in the device role:

So, beside mentioning the misleading issues above, we currently want:

  • to know which pin we can actually use
  • and if we need further configuration beside the one found in the L4T Documentation?

Hi, here is an example for the ID pin design: USB 2.0 Functionality - #15 by arvindprksh


To make it more easier to understand, initrd flash needs the usb can work fine in device mode and that needs to be done by device tree. Which means initrd flash will depend on correct device tree content. But flash.sh does not.

You don’t need to make it in “OTG mode”. You just need to make sure it is in “device mode”.

Also, you just need to use your hardware design but not 100% follow the document.

For example, if you are not using Q0 or M3, then change to other GPIO pin you want to use and mark them in the device tree as the document taught.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.