Jetson NanoWill Not Boot on Known Good SD Card

I have been using two Jetson Nanos bought as Jetcar kits since Nov 2019 as a first time AI device for me. I was getting rather proud of integration of Realsense into Python IDE, Hello AI World training models, different motor drivers, etc. big mistake I was formatting an SD card on a USB reader on the Nano, no error messages. It continued to operate fine as best I know. Later that day after shutdown, the Nano will not boot with any of the several system SD cards I have, even the ones that boot fine from its sister Nano. Tried everything I can think of short of jumpering force restart pins including N2 blowing of SD slot. Nothing on GPIO or connected except HDMI. Given the luxury of a sister Nano proving SD image good, I am hoping this eliminates many potential root causes, and some genius can provide some insight if there is hope or if I have a nice paperweight. Many humble thanks in advance.

Moving this to the Jetson Nano forum for visibility.

Thank you.

I would suggest you could flash the problematic Nano with sdkmanager.

Also, one common debug method is to dump the serial console. If you don’t want to flash out one sdcard, you could try this method first.

https://elinux.org/Jetson/General_debug

Wayne, thx for the pointer. The link is comprehensive but being a rookie will take me a while to slog through. One quick question - how do I connect my host Linux X86 to the dead Nano for flashing from SDK? Thx.

HI windsorinca,

Please use common usb cable to connect the host and Nano. Put Nano into recovery mode by using the jumper to short the pin. If your instructions are all correct, you shall see the device is shown on your host with “lsusb” command as a device named “Nvidia Corp”.

You could download the sdkmanager from our dlc here. Actually, all the resources are here too.

Your pointing me to the SDK greatly appreciated, I would never have found. Downloaded, device shows lsusb just like you said, select Jetson OS only, follow the well written SDK instructions, gets to 85% done then quits in a hail of red terminal errors and a message “could not detect Kano”. Tried everything I could think of to new SD, USB cable, reboot host no joy. Full disclosure I am not a developer but an old guy who thinks this is cool stuff and your boss probably does not want you working on amateur hour, but if there is something obvious in the attached error logs I would be most grateful. NV_L4T_FLASH_NANO_DEVKIT_WITH_OS_IMAGE_COMP.log (15.0 KB)

Hi,

According to below log, even the flash process failed. Could you connect the serial console and dump the log when you run the flash process? It shall tell us what is going on over device side during the flash.

[   0.0323 ] tegrasign --key None --getmode mode.txt
[   0.0354 ] Assuming zero filled SBK key
[   0.0359 ] 
[   0.0361 ] Generating RCM messages
[   0.0400 ] tegrarcm --listrcm rcm_list.xml --chip 0x21 0 --download rcm nvtboot_recovery.bin 0 0
[   0.0457 ] RCM 0 is saved as rcm_0.rcm
[   0.0520 ] RCM 1 is saved as rcm_1.rcm
[   0.0521 ] List of rcm files are saved in rcm_list.xml
[   0.0521 ] 
[   0.0521 ] Signing RCM messages
[   0.0553 ] tegrasign --key None --list rcm_list.xml --pubkeyhash pub_key.key
[   0.0596 ] Assuming zero filled SBK key
[   0.0772 ] 
[   0.0773 ] Copying signature to RCM mesages
[   0.0804 ] tegrarcm --chip 0x21 0 --updatesig rcm_list_signed.xml
[   0.0916 ] 
[   0.0917 ] Parsing partition layout
[   0.1123 ] tegraparser --pt flash.xml.tmp
[   0.1193 ] 
[   0.1194 ] Creating list of images to be signed
[   0.1327 ] tegrahost --chip 0x21 0 --partitionlayout flash.xml.bin --list images_list.xml
[   0.1526 ] 
[   0.1527 ] Generating signatures
[   0.1566 ] tegrasign --key None --list images_list.xml --pubkeyhash pub_key.key
[   0.1616 ] Assuming zero filled SBK key
[   0.3136 ] 
[   0.3137 ] Generating br-bct
[   0.3362 ] tegrabct --bct P3448_A00_4GB_Micron_4GB_lpddr4_204Mhz_P987.cfg --chip 0x21 0
[   0.3395 ] Copying Sdram info from 0 to 1 set
[   0.3450 ] Copying Sdram info from 1 to 2 set
[   0.3451 ] Copying Sdram info from 2 to 3 set
[   0.3451 ] 
[   0.3451 ] Updating boot device parameters
[   0.3489 ] tegrabct --bct P3448_A00_4GB_Micron_4GB_lpddr4_204Mhz_P987.bct --chip 0x21 0 --updatedevparam flash.xml.bin
[   0.3519 ] Warning: No sdram params
[   0.3524 ] 
[   0.3525 ] Updating bl info
[   0.3554 ] tegrabct --bct P3448_A00_4GB_Micron_4GB_lpddr4_204Mhz_P987.bct --chip 0x21 0 --updateblinfo flash.xml.bin --updatesig images_list_signed.xml
[   0.3608 ] 
[   0.3609 ] Updating secondary storage information into bct
[   0.3641 ] tegraparser --pt flash.xml.bin --chip 0x21 0 --updatecustinfo P3448_A00_4GB_Micron_4GB_lpddr4_204Mhz_P987.bct
[   0.3671 ] 
[   0.3672 ] Updating Odmdata
[   0.3768 ] tegrabct --bct P3448_A00_4GB_Micron_4GB_lpddr4_204Mhz_P987.bct --chip 0x21 0 --updatefields Odmdata =0x94000
[   0.3803 ] Warning: No sdram params
[   0.3814 ] 
[   0.3815 ] Get Signed section of bct
[   0.3853 ] tegrabct --bct P3448_A00_4GB_Micron_4GB_lpddr4_204Mhz_P987.bct --chip 0x21 0 --listbct bct_list.xml
[   0.3907 ] 
[   0.3908 ] Signing BCT
[   0.3984 ] tegrasign --key None --list bct_list.xml --pubkeyhash pub_key.key
[   0.4012 ] Assuming zero filled SBK key
[   0.4028 ] 
[   0.4028 ] Updating BCT with signature
[   0.4060 ] tegrabct --bct P3448_A00_4GB_Micron_4GB_lpddr4_204Mhz_P987.bct --chip 0x21 0 --updatesig bct_list_signed.xml
[   0.4107 ] 
[   0.4109 ] Copying signatures
[   0.4139 ] tegrahost --chip 0x21 0 --partitionlayout flash.xml.bin --updatesig images_list_signed.xml
[   0.4306 ] 
[   0.4307 ] Updating BFS information on BCT
[   0.4338 ] tegrabct --bct P3448_A00_4GB_Micron_4GB_lpddr4_204Mhz_P987.bct --chip 0x21 0 --updatebfsinfo flash.xml.bin
[   0.4378 ] 
[   0.4379 ] Boot Rom communication
[   0.4410 ] tegrarcm --chip 0x21 0 --rcm rcm_list_signed.xml
[   0.4453 ] BootRom is not running
[   0.4892 ] 
[   0.4893 ] Sending BCTs
[   0.4936 ] tegrarcm --download bct P3448_A00_4GB_Micron_4GB_lpddr4_204Mhz_P987.bct
[   0.4975 ] Applet version 00.01.0000
[   0.5185 ] Sending bct
[   0.5188 ] [................................................] 100%
[   0.6111 ] 
[   0.6160 ] tegrahost --chip 0x21 --align cboot.bin
[   0.6201 ] 
[   0.6239 ] tegrahost --magicid EBT --appendsigheader cboot.bin cboot.bin_blheader
[   0.6340 ] 
[   0.6379 ] tegrasign --key None --list cboot.bin_list.xml
[   0.6411 ] Assuming zero filled SBK key
[   0.6819 ] 
[   0.6855 ] tegrahost --updatesigheader cboot.bin_blheader.encrypt cboot.bin_blheader.hash zerosbk
[   0.6914 ] 
[   0.6977 ] tegrahost --chip 0x21 --align tegra210-p3448-0000-p3449-0000-a02.dtb
[   0.7008 ] 
[   0.7035 ] tegrahost --magicid DTB --appendsigheader tegra210-p3448-0000-p3449-0000-a02.dtb tegra210-p3448-0000-p3449-0000-a02.dtb_blheader
[   0.7107 ] 
[   0.7156 ] tegrasign --key None --list tegra210-p3448-0000-p3449-0000-a02.dtb_list.xml
[   0.7191 ] Assuming zero filled SBK key
[   0.7361 ] 
[   0.7402 ] tegrahost --updatesigheader tegra210-p3448-0000-p3449-0000-a02.dtb_blheader.encrypt tegra210-p3448-0000-p3449-0000-a02.dtb_blheader.hash zerosbk
[   0.7469 ] 
[   0.7486 ] Sending bootloader and pre-requisite binaries
[   0.7516 ] tegrarcm --download ebt cboot.bin.encrypt 0 0 --download rp1 tegra210-p3448-0000-p3449-0000-a02.dtb.encrypt 0
[   0.7543 ] Applet version 00.01.0000
[   0.7708 ] Sending ebt
[   0.8360 ] 
Error: Return value 1
Command tegrarcm --download ebt cboot.bin.encrypt 0 0 --download rp1 tegra210-p3448-0000-p3449-0000-a02.dtb.encrypt 0
Failed flashing t210ref.
Info: [ Component Install Finished with Error ]
Info: [ 8.43 GB used. Disk Avail: 816.15 GB ]
Info: [ NV_L4T_FLASH_NANO_DEVKIT_WITH_OS_IMAGE_COMP Install took 5m6s ]
Error: [error]: Run commands failed at step Install: command sudo ./flash.sh jetson-nano-qspi-sd mmcblk0p1 finished with error

Awaiting cable thanks again for direct to how-to.

Uh-oh. Per video installed Minicom, serial port cable to “good” Nano and worked great complete readout through whole boot sequence. Connected to “dead” Nano, powered on green LED/fan on but nothing. Unplugged USB restarted Minicom and “no ttyUSB0”. Plugged USB back in Minicom started fine but nothing when powered on dead Nano. Recabled good Nano worked great. Recabled dead Nano nothing. Last rites?

Hi,

Are you trying to “boot” the good and dead device or “flash”? Actually, I want the log during “flash” but not boot.

Sry, here is “flash the dead one” minicom output


Welcome to minicom 2.7.1

OPTIONS: I18n
Compiled on Aug 13 2017, 15:25:34.
Port /dev/ttyUSB0, 14:45:02

Press CTRL-A Z for help on special keys

[0008.700] Enabled early print
[0008.703] [L4T TegraBoot] (version 00.00.2018.01-l4t-7cdf0720)
[0008.708] Processing in recovery mode
[0008.712] A02 Bootrom Patch rev = 1023
[0008.715] Power-up reason: pmc por
[0008.718] Established communication link with host
[0009.897] NvTbootI2cClearBus(): error code 0x00000005 Bus clear timeout
[0009.903] NvTbootI2cDeviceRead(): error code 0x00000005 I2c Open Failed
[0009.910] NvTbootI2c: Read failed for slave 0xac, offset 0x00 with error code 5
[0014.184] Odmdata from BCT: 0x00094000
[0014.188] DebugPort= 0x3
[0014.201] NvTbootI2cWaitForTransferComplete(): error code 0x00000005 I2C Transe
[0014.222] NvTbootI2cWaitForTransferComplete(): error code 0x00000005 I2C Transe
[0014.232] NvTbootI2cWrite(): error code 0x00000005 Error while starting write n
[0014.239] NvTbootI2cDeviceRead(): error code 0x00045001 Error while sending the
[0014.248] NvTbootI2c: Read failed for slave 0xac, offset 0x00 with error code 1
[0014.256] Reading Board-Type unsuccessful
[0014.260] BoardId read from EEPROM/NCT: 0
[0014.263] Unsupported Platform 0
[0014.266] Downloaded BCT successfully

You have accidentally modified the eeprom value through i2ctool, right? Did you do such thing on your board?

I have to laugh at myself I do not know what you are talking about and if I have such a tool am unaware. Last thing I was doing was formatting an old SD card with disk tool to image as Jetpack. It shut down normally and never started up.

Hi windsorinca,

I have to laugh at myself I do not know what you are talking about and if I have such a tool am unaware. Last thing I was doing was formatting an old SD card with disk tool to image as Jetpack. It shut down normally and never started up.

Sorry about my assumption. Too many users have such issue so this idea comes to my mind directly.

There is a eeprom component on module and could be accessed by i2c. Booting and flashing requires to read the board ID on this component. If someone accidentally change the value inside, the booting and flashing would fail.

Replacing the sdcard should not modify it. Perhaps the eeprom module is broken by itself.
Please RMA this device. Sorry for inconvenience.

I owe you many humble thanks. Even if the board is "broken”, thanks to your patience I now know how to flash a board and connect a serial cable. And I know what is wrong with the thing so can continue building knowledge without fear of repeating a “mistake” that would kill it’s sister. Thank you.

1 Like

If your device is not yet send out, you could also refer to the steps we have shared on this topic.

Wayne, thanks but these posts are crazy far over my head. All I was doing was merrily running demos and tutorials. I did request RMA authorization we will see if that flies. Regardless, I learned a lot. Thanks for the help!

Ok. That’s fine.
Thanks.