Flash Jetson from itself

Hello World,

I’m working on a system that will require many Jetsons. We would like to industrialize the flashing of the Jetson. Is there a way to flash the Jetson directly from an SD Card without using an external computer ?

That would save us so much time to just flash multiple Jetson in parallel.

Best regards,

In theory the eMMC is just a disk, and if you boot to an SD card, then you could use dd to write images. You would essentially be making a clone of the entire eMMC of the Jetson you want to install a copy of, then using a rescue system to dd that onto the eMMC while booted to alternate media (e.g., the SD card). Do note that there is partition layout data at the start of the eMMC, so you may require more than just individual partitions, e.g., clone via dd of mmcblk0 would be different than cloning of each mmcblk0p1-N.

The R28.1 docs give information on how an external computer can flash multiple Jetsons at the same time…the Documentation download has information on how to do this without resorting to dd.

Incidentally, if I were to do this via the dd method, I would create an NFS export on another computer with lots of RAM of a partition dedicated to just the image to flash…make it read-only on the export…and then after the first read the caching would make this very fast. Reading gigabytes from an SD card (even the compressed/sparse image is probably a couple of GB) is very slow…reading from a cached read-only NFS export is very fast and makes the same caching a benefit to multiple readers.

The R28.1 documentation about multi_tegra_flash.sh is broken. The R28.2 documentation has a corrected multi_tegra_flash.sh.

More info at https://devtalk.nvidia.com/default/topic/1030257/jetson-tx2/flashing-multiple-tx2s-at-the-same-time-/post/5244157/#5244157.