Mass Flashing Xavier NX

Hi
I am quite new to the nvidia Flashing tools and I am trying to sort out the Mass flashing tool with using intird mass flash.

I am able to do normal single flashing using the ./flash.sh but can’t seem to get the intrid flashing going. I am not sure if I am missing a step.

I am following the docs at Flashing Support — Jetson Linux Developer Guide documentation

following the Flashing with initrd section. I get up to flashing the boards after setting up the environment and then try to flash a board it comes up with no devices to flash.

I have checked that the board is able to be seen using lsusb, but it can’t seem to find it to flash. I am not too sure where I need to go from here. Let me know what kind information is needed as well, not sure exactly what to look at

Thanks

Hi michael.romeo,

Are you using the devkit or custom board for Xavier NX?
What’s the Jetpack version in use?

Please refer to Workflow 7: Initrd Massflash in <Linux_for_Tegra>/tools/kernel_flash/README_initrd_flash.txt for massflash.

Please share the result of lsusb run from your host when you’ve connected the board in force recovery state.

I am using an custom board, an A203. I am using Jetpack 5.0.2

I was following workflow 6, which resembles what is in the docs. What is the difference between the two?

lsusb returns:

Bus 001 Device 062: ID 0955:7e19 NVIDIA corp. APX

Also I am wanting to use an old image I have been using originally for this rather, than a new one. How would I set this up?

It’s quite an old release w/o several ferautes.
Do you have the plan to update it to the latest JP5.1.4?

What is the workflow you’ve seen? Could you share your README file for further check?

Sorry that I’m not clear about what do you mean here. Could you elaborate on your use case?

There wasn’t any plan to at the moment to update the Jetpack version

README_initrd_flash.txt (22.3 KB)

This is the file I have been using, it has workflow 6, which is similar to the one in the docs, and then it had a second one called workflow 7, called secure massflash

For the last part, I have an older Xavier with an image we have edited and made changes to, I then backup up the image using;

sudo ./flash.sh -r -k APP -G bootloader/system.img jetson-xavier-nx-devkit-emmc mmcblk0p1

Then when I needed to flash a new Xavier I used:

sudo ./flash.sh -r jetson-xavier-nx-devkit-emmc mmcblk0p1

To resuse that backup image and not overwrite it. Could I do something similar to use the older image like I have in this case?

Okay, it is workflow 6 with your release.
Could it work in your case?

It sounds like not relating to mass flash.
Are you trying to backup APP partition from the first board and restore to other board?

Sorry that I’m not clear about this. Could you elaborate on this and let us know what’s your use case?

I am not sure, I was following workflow 6 and it kept returning unable to detect boards to flash, and I was able to detect the unflashed boards in recovery mode

Sorry if I am not explaining that second part well. But essentially I want to clone one Jetson into many others, for mass production. I followed the clone section from the docs from before Flashing Support — Jetson Linux<br/>Developer Guide 34.1 documentation

It has worked on individual boards, but I want to try and do it for mass production

Please share the full log when you refer to the steps in Workflow 6 from the host.

It would only restore the APP partition. Is that what you are looking for?
If your new module has not been flashed yet, then it would not boot if you just restore APP partition.

I think you can create a custom mass flash package(with all your required package installed), then performing mass flash for other devices.

I am not too sure what you mean here. Step 3 of the To clone a jetson indicates if the the system has never been flashed to run sudo ./flash.sh -r <board> mmcblk0p1

Correct me if I am wrong, but I have been doing that and I have been able to boot up and ssh into the boards.

How would you go about doing this?

Okay, it should work with specifying -r option to use backup system.img rather than generating system image from <Linnux_for_Tegra>/rootfs/.

You can specify --use-backup-image in the command
Please refer to Workflow 3: To massflash the backup image in README_backup_restore.txt for details.

I have tried this workflow as well. My board type is jetson-xavier-nx-devkit-emmc, and when I run the first command in that workflow sudo ./l4t_backup_restore.sh -b -c jetson-xavier-nx-devkit-emmc, it returns invalid board name for this. I was wondering if there was a way to get around this as I already have the image I want to use? Could I copy it into the tools/kernal_flash/images folder as a certain name?

I’ve verified this command working on the devkit.
Please share the full log when you run this command.

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