Freshly buyed Orin Nano 4Gb couldn't be flashed (previous were okay)

Our flashing script for encrypted SSD stuck with this message

 Entering RCM boot

[   0.0187 ] mb1_t234_prod_aligned_sigheader.bin.encrypt filename is from --mb1_bin
[   0.0187 ] psc_bl1_t234_prod_aligned_sigheader.bin.encrypt filename is from --psc_bl1_bin
[   0.0187 ] rcm boot with presigned binaries
[   0.0197 ] tegrarcm_v2 --instance 1-5 --new_session --chip 0x23 0 --uid --download bct_br br_bct_BR.bct --download mb1 mb1_t234_prod_aligned_sigheader.bin.encrypt --download psc_bl1 psc_bl1_t234_prod_aligned_sigheader.bin.encrypt --download bct_mb1 mb1_bct_MB1_sigheader.bct.encrypt
[   0.0206 ] BR_CID: 0x80012344705DE8CC1800000006028240
[   0.0329 ] Sending bct_br
[   0.0364 ] ERROR: might be timeout in USB write.
Error: Return value 3
Command tegrarcm_v2 --instance 1-5 --new_session --chip 0x23 0 --uid --download bct_br br_bct_BR.bct --download mb1 mb1_t234_prod_aligned_sigheader.bin.encrypt --download psc_bl1 psc_bl1_t234_prod_aligned_sigheader.bin.encrypt --download bct_mb1 mb1_bct_MB1_sigheader.bct.encrypt
Cleaning up...

This script was based on the manuals from this forum and mimics SDK manager flashing scripts.

When we trying to flash it by SDK manager by non-encrypted image it also stuck with this message as in the screenshot.

That’s production modules, not devkits.
We using our own carrier boards, but they were not changed.

Could you please guide us, what can be a root cause of this issue?

Since other flashes worked I’ll assume this is not a VM for host PC and that the USB cable itself is likely working. Someone else will probably have to answer, but meanwhile, consider that you can flash a Jetson module on one carrier board and then move it to another carrier board. Do you have a dev kit carrier board available? If so, then try to flash the module on the other carrier board just to see if it works. If you flash the dev kit software on that other carrier board, then that should boot; if you flash your software on while the module is on the dev kit, and then transfer it to your custom carrier board, then that should also work. If you cannot flash at all on a dev kit carrier board, then you’d probably want to post the serial console log and flash log for the case of flashing NVIDIA’s dev kit software (the serial console on the Jetson can be logged during a flash). If the flash does succeed on the dev kit carrier board, then this is likely a problem with the carrier board; if the flash fails even on the dev kit carrier board, then likely this is a problem of the module (it could be a problem of the USB cable, but you’ve stated other modules succeed in flash with this cable).

We have not changed our carrier board. Jetson Orin modules from previous batch was flashed successfully being plugged into our carrier boards.

Thanks for idea with devboard flashing, I really have one - but I don’t have new modules, we need to send them from manufacturing facilty to me, it’s about 1-2 days. The same for serial console, I have one board with soldered UART connectors.

Sometimes there is a revision on a module, e.g., maybe a new type of memory used, which could require a change to firmware. The serial console log would be one way of seeing if that is the case, so I do not think there is any easy way to debug except if you have the module and carrier board physically there. If the serial console works, even with soldered connectors, then that should be just as useful if you monitor that during a flash. It might show something new, but knowing if it works on on a dev kit board would be very useful for debugging.

I’ve just updated SDK manager to the latest version and tried to flash Jetpack 6.2 again.
1st error I’d got you can see on screenshot - nvme device is not accessible

When I tried to do it again I got at the pre-config stage

ERROR
The selected device is not in recovery mode or normal mode.Please manually reboot (power off then power on) the device to continue.

According to lsusb device is in normal mode

Bus 006 Device 002: ID 0955:7035 NVIDIA Corp. Linux for Tegra

We got errors like this before but not permanently.

One time it was fixed by changing USB data cable - it fixed an issue on the laptop, but exactly the same cable did not worked at my desktop.

Second time issue like this was fixed by changing with power supply - using big laboratory PSU exclusively for single flashing unit.

Is it possible that power consumption of the new modules has been changed and now we experiencing all these issuess using the same PSU as before?

Hi,

Please try below commands in your host

sudo -s
echo -1 > /sys/module/usbcore/parameters/autosuspend

And flash again to check whether the issue exists.

Thanks

I will also suggest that due to the “nvme unavailable” you try to plug in the NVMe to another Linux computer and see what shows up. You don’t have to change anything on the NVMe, but do see if it is readable. If the NVMe shows as “/dev/nvme1n1”, then you could do something like this on the machine where that shows up:
sudo gdisk -l /dev/nvme1n1
(this is a read-only list of partitions on the NVMe; the idea being to see if the NVMe responds without error)

Sometimes error messages are not entirely descriptive, but since the lsusb shows up it might be worthwhile to first verify the NVMe.

Incidentally, Jetsons are quite picky about power supply regulation quality.

Reminder at the problem:

  • we have just purchased a new batch of Jetson Orin Nano 4Gb - i will call it “new module”
  • we used Jetson 4Gb modules before successfully - I will call it “old module”
  • we have our own carrier board which were manufactured in the same batch

We found out some workaround looking a bit weird.

We found one piece of the carrier board is able to flash a “new module” - this is a “lucky carrier”
If this module and SSD then moved to the “new” carrier board - they are working.

The only difference between “lucky carrier” and “unlucky carriers” if the lucky carrier was used before for flashing “old modules”.

In the same time if we get an “old module” and “unlucky carrier” it could be flashed with success.

Question: what the flashing process could change at the carrier board?
I know there is some QSPI flashing stage, where is this QSPI chip located - on the module or on the carrier?

P.S. I still waiting parcel with a new Jetson to start experiments with devboard and UART logs, so don’t have additional information from this side.

Hi,
All PCNs are supported on latest Jetpack 6.2. Please put the module to our Orin Nano developer board + NVMe SSD card and flash with the command:

Quick Start — NVIDIA Jetson Linux Developer Guide

$ sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 \
  -c tools/kernel_flash/flash_l4t_t234_nvme.xml -p "-c bootloader/generic/cfg/flash_t234_qspi.xml" \
  --showlogs --network usb0 jetson-orin-nano-devkit internal

If the failure occurs, please save uart log and host log. And attach the log files(in text).

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