UEFI not detecting USB Sticks

UEFI not detecting USB Sticks

We are using a bootable usb flash memory stick to run our Production Testing software from so that the test software can be independent of the Application software that is tegra-flashed onto the eMMC of the Orin.

We have seen an intermittent issue related to USB Flash Memory stick detection in the UEFI bootloader that has now become a major reliability problem in our Production workflow.

This occurs with a variety of different brands, sizes, and types e.g. USB2.0 and 3.2

What is happening is that the UEFI is not detecting the USB stick at all so it will not then boot from the USB stick.

This happens with either a cold boot power on or warm boot where the Orin is reset but not power cycled.

If I interrupt the boot with the F11 key and enter the EUFI shell there is no USB stick detected.

When we allow the UEFI to boot our Linux Application software from the internal eMMC we find that the USB stick is detected by Linux and that we can read and write from the USB stick without issue.

The USB is powered from our USB port, and we have confirmed that power is present at the USB at boot time.

We are using the USB0 interface on the Orin, Pins F12 and F13.

Unfortunately, the problem is only occurring in our Production Facility, so I only have remote access, and we have not been able to reproduce the problem with any of our local units.

This is the version of UEFI we are running:

UEFI Interactive Shell v2.2
EDK II
UEFI v2.70 (EDK II, 0x00010000)

When things are operating correctly, I can view the USB stick as an fs device in the UEFI shell, and the units boot from the EFI partition on the bootable USB stick.

We have had no issues over 100’s of boots and 100’s of different Orin modules up until recently when device being tested in our Production fixture would no longer boot from USB.

Is there any debugging we can do in the UEFI shell to help understand what is happening?

Are there any conditions that must be met or limitations we should know about so that USB flash drive devices can be detected by the UEFI bootloader on the Orin AGX module?

*** Please note that this reply is generated by LLM automatically ***

The issue you’re experiencing with the UEFI bootloader not detecting the USB flash memory stick on the Jetson AGX Orin module is a complex problem that requires a thorough analysis. I’ll provide you with a comprehensive answer, including potential debugging steps and conditions that must be met for USB flash drive devices to be detected by the UEFI bootloader.

Debugging Steps in UEFI Shell:

  1. Verify USB port configuration: Ensure that the USB0 interface (Pins F12 and F13) is enabled and configured correctly in the UEFI settings. You can check this by navigating to the UEFI settings menu and looking for the USB configuration options.
  2. Check USB device detection: Use the UEFI shell command devices to list all detected devices, including USB devices. If the USB stick is not listed, try using the usb command to scan for USB devices.
  3. Verify USB device configuration: Use the UEFI shell command usb -v to display detailed information about the USB devices, including the device descriptor, configuration, and interface information.
  4. Check USB device enumeration: Use the UEFI shell command usb -e to enumerate the USB devices and verify that the USB stick is properly enumerated.
  5. Verify UEFI driver loading: Ensure that the UEFI driver for the USB controller is loaded correctly. You can check this by using the UEFI shell command drivers to list all loaded drivers.

Conditions for USB Flash Drive Detection:

  1. USB port power: Ensure that the USB port is powered and that the power is present at the USB port during boot time.
  2. USB device compatibility: Verify that the USB flash drive is compatible with the UEFI bootloader and the Jetson AGX Orin module.
  3. USB device configuration: Ensure that the USB flash drive is configured correctly, including the correct partition table, file system, and boot loader.
  4. UEFI settings: Verify that the UEFI settings are configured correctly, including the USB configuration options and the boot order.
  5. Firmware version: Ensure that the UEFI firmware is up-to-date and that there are no known issues with the current version.

Comparison with Other UEFI Versions:

The UEFI version you’re running (UEFI Interactive Shell v2.2, EDK II UEFI v2.70, EDK II 0x00010000) is a relatively old version. It’s possible that newer UEFI versions may have resolved the issue you’re experiencing. However, without access to the same hardware and UEFI version, it’s difficult to make a direct comparison.

Additional Recommendations:

  1. Try a different USB port: If possible, try using a different USB port on the Jetson AGX Orin module to rule out any issues with the specific USB port.
  2. Use a different USB flash drive: Try using a different USB flash drive to rule out any issues with the specific USB flash drive.
  3. Update UEFI firmware: If possible, update the UEFI firmware to the latest version to ensure that you have the latest fixes and features.
  4. Contact NVIDIA support: Reach out to NVIDIA support for further assistance and guidance on resolving the issue.

By following these debugging steps and verifying the conditions for USB flash drive detection, you should be able to identify the root cause of the issue and potentially resolve it.

*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***

This is the only USB port accessible external to our product once assembled, it’s direct to the Nvidia Orin AGX 32 USB0 port.

Hi user55525,

Do you mean the issue happens on the specific one device?
If so, I would suggest to clarify if it may be caused from the specific AGX Orin module, or the specific USB stick.

And it seems the USB stick cannot be detected in UEFI anymore?

To further debug the issue, please use the debug UEFI binary to capture more log during UEFI boot.
Please compare the full log between the working and failing case and let us know the difference.

We are talking 1 USB stick across hundreds of AGX modules, when we find a working USB stick we try to stick with it, as long as possible, the variability appears in various AGX modules / setup.

Sorry our production site is the opposite side of the planet, others there are watching this ticket for ideas.

If you have a list of approved USB vendors ?

Sorry that there’re too many USB sticks in the market and we don’t verify all of them or approve any of them.
If your issue happens on the specific USB stick, then we would suggest just using another one.
If you want to debug further why it cannot be detected, please use debug UEFI binary to capture more logs in UEFI.