Managed to flash jetson xavier nx custom board with JP462 not JP502

Hello,

same flashing method, 462 works fine, impossible to make it work with 502.

I have logs for both setup.

Can you please help?

thanks,
regards,
SDKM_logs_2022-09-19_10-13-13.zip (1.6 MB)
SDKM_logs_2022-09-19_10-54-19.zip (1.7 MB)

Managed to install 501 on nvme …

here are logs
SDKM_logs_2022-09-19_13-29-54.zip (2.2 MB)

Hi,

If this is custom board, please disable cvb read size to 0 in tegra194-mb1-bct-misc-l4t.cfg

eeprom.cvb_eeprom_read_size = 256;

and you cannot use sdkmanager to directly flash it. Need to do manual flash with flash.sh.

1 Like

No luck.

Managed to flash 5.0.1 with command line, it boots fine but not with 5.0.2. Same by modifying parameter eeprom.cvb_eeprom_read_size = 0; in 5.0.2 which is there in 5.0.1 and doesn’t cause boot issue.

Perhaps need to get access to serial logs?

Hi,

Please ignore the nvme case for this moment. Just flash.sh with emmc case and see if you can flash it.

I notice every flash log you provided is trying to flash nvme. Please do not try this case at this moment. Only try basic emmc case first.

Hello,

ok I will try but EMMC is working, the fact is that it’s not the goal to use emmc because way too slow and small storage when you have fast 128GB storage nvme.

Will try to flash emmc with flash.sh, but it does already work with sdk manager, except not enough room for apps.

That (flashing emmc) is just to test the flash functionality.

Hello,

here are the logs : device booted from emmc with both methods.

Linked logs.
flash22092022_nvsdkmgrcmd.txt (90.2 KB)
flash22092022_flashsh.txt (84.5 KB)

Hi,

Please check if your flash port could work as usb device mode in emmc boot case.

Usb device mode is needed for initrd flash to flash the nvme drive. Which is same rule for sdkmanager to flash your nvme drive.

Hi,

I don’t really understand why you ask this.

flash on nvme do work with JetPack 4.6.2 and 5.0.1, it simply doesn’t boot only with nvme and 5.0.2.

It do work with previous version, so there must be a change or bug in the scripts introduced in 5.0.2.

Can you please indicate me what command to test or file to modify to make 5.0.2 flash work on nvme ?

thanks,
regards

Sdkmanager does not use “flash.sh” to flash nvme drive. It is using initrd flash tool to flash.

And this tool needs usb device mode to work fine. The key point here is you indicates you are using custom board. Which means if has chance your usb port does not work either. If usb port fails to work, then initrd flash would fail too.

Thus, my point here is firstly check usb device mode’s functionality. If it is working, then good to check initrd flash tool directly. Link in below:

https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/SD/FlashingSupport.html?highlight=initrd_flash#flashing-with-initrd

Also, in case you didn’t notice. You are the only one who cannot flash nvme recently.

This is not some kind of known issue that I can directly give you a magic patch to resolve. We need you to manually run initrd flash tool and see if you can flash.

We can check this but it would take time.

I’m trying to do what you are saying. I don’t think I’m the only one having difficulties flashing this device! simply searching Internet shows many issue with flashing !

What I still don’t understand is that it do work with 5.0.1 and GUI. So I don’t understand how we couldn’t find the right command line that work in 5.0.1 in 5.0.2, I provided logs from both try.

I see many topics like :

https://forums.developer.nvidia.com/t/an-error-occurred-using-the-method-of-flashing-with-initrd/210667/6

I see also that in this particular topic, it’s said :

it requires “Initrd flash tool requires that you are able to create a ssh connection from the host to the target through the target.”
→ I checked and when booted via emmc : I’m able to log from host computer to xavier nx with ssh and ip 192.168.55.1

but in the documentation you told me here :
https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/SD/FlashingSupport.html?highlight=initrd_flash#flashing-with-initrd

it’s written :

  1. Put the Jetson device in Recovery Mode.
  2. Enter these commands on the host:

I tried commands like :
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 --showlogs jetson-xavier-nx-devkit-emmc nvme0n1p1

it founds no device in booted emmc mode (Initrd flash tool requires that you are able to create a ssh connection from the host) and never works with 5.0.1 and 5.0.2.

But as I explained you, it did work via GUI sdk manager with 5.0.1, but not 5.0.2.

I must miss something and I’m not able to reproduce working flash with 5.0.1 to 5.0.2.

I had no such difficulties with 5 jetson nanos all booting from sdcard, one Jetson Xavier AGX booting from 1TB nvme.

but as you know, jetpack 5.x are not supported on nanos, it’s almost impossible to find a Xavier NX dev kit official at normal price, we are left with Xavier NX custom carrier boards.

I can try everything but still don’t understand that with logs : we cannot find the exact command line I should try and even with documentation, no easy command line to test.

I continue trying to find a solution but for the moment, I don’t see any official way of flashing xavier nx custom board : lot of money for unusable devices and our project is stuck.

thanks,
regards,

tried this command, linked logs :
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-only -c ./tools/kernel_flash/flash_l4t_nvme.xml -S 10240000000 --external-device nvme0n1 jetson-xavier-nx-devkit-emmc external

flash_2-1.4_0_20220922-124447.log (51.7 KB)

it rebooted on the emmc, presume because jetson-xavier-nx-devkit-emmc

so now retrying with :
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-only -c ./tools/kernel_flash/flash_l4t_nvme.xml -S 10240000000 --external-device nvme0n1 jetson-xavier-nx-devkit external

Hello,

I notice this log keeps showing up in both sdkm log and the log you just shared.

[ 288]: l4t_flash_from_kernel: The device size indicated in the partition layout xml is smaller than the actual size. This utility will try to fix the GPT.

What is the partition size you indicated in your xml file? And what is the size of your nvme drive?

And later log says it flashed successfully. Have you confirmed the nvme drive got flashed or not?

BTW, I think you need to have a correct concept here.

Make sure what platform and what release you are referring to in each post.

For example, you said you saw a post like this " https://forums.developer.nvidia.com/t/an-error-occurred-using-the-method-of-flashing-with-initrd/210667/6 "

But obviously, this post is using rel-32 (jetpack4.x) because jp5 was not release at that time… And you already told us you can flash nvme with jp4.6.2. So, what does that mean? It means you don’t need to refer to that post at all. Your issue has nothing to do with it.

And it is pointless to say “oh there are lots of issues there”. My point was there is not much user reporting "jetpack 5 + nvme " case…
You don’t need to try to persuade us there are other posts. I don’t care. We just check and focus on your issue first.

Also, the document does says it needs to use usb device mode… It is just not obvious.
Usb device mode means you can see 192.168.55.1 interface.

Seems I have some news !

I managed to boot nvme only when changing boot order to nvme first after pressing escape at boot …

which I not have to do with 5.0.1, will keep informed here after some more tests.

1 Like

So the nvme is successfully flashed by initrd flash but just boot order is still emmc > nvme.

yes it seems but I need to do more tests.

never saw there was some sort of bios accessible, I presume it’s not a real bios but emmc bios.

there is the same boot order menu on nanos and agx ?

For 5.0.x jetson use uefi. You can use efibootmgr to change the device boot order.

Also the flash command you should use is something like

sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 -c ./tools/kernel_flash/flash_l4t_external.xml -S {size} --erase-all --network usb0 --showlogs {board} nvme0n1p1

1 Like