Trying to get NVMe flashed on Jetson Orin Nano via VirtualBox Ubuntu 22.04 LTS

Update 1:

So I found that I can install balenaEtcher on Nvidia Jetson Nano by building the ARM version myself - I following instructions: https://github.com/futurejones/balena-etcher-arm

After downloading Jetpack 6.1 cdcard image - I flashed it to my system NVMe drive, resized APP partition to full size, powered down Jetson Nano - removed SD card - and booted - but seems boot loader is still expecting to find image at /dev/mmcblk0p1 (sdcard) instead of NVMe disk /dev/nvme0n1p1 - will investigate further later :-)

Update 2:

And finally I found that I can mount /dev/nvme0n1p1 to e.g. /mnt/nvme0n1p1.
Then as super user I can modify /mnt/nvme0n1p1/boot/extlinux/extlinux.conf, and change:

root=/dev/mmcblk0p1
root=/dev/nvme0n1p1

And then it boot from NVMe without sdcard or any need to using SDK Manager to flash it.

If you have a M.2 to USB adaoter, this should make it possible to flash the NVMe SSD on any linux system:

  1. Insert NVMe M.2 SSD into an M.2 to USB adapter.
  2. Use balenaEtcher to flash Jetpack sdcard image to NVM’e.
  3. Mount partition “nvme0n1p1” (use Disk manager to identify it name on your linux system)
  4. On the mounted partition, modify /boot/extlinux/extlinux.conf, so that root=/dev/mmcblk0p1 is placed with root=/dev/nvme0n1p1

Insert M.2 SSD into Nvidia Jetson Nano, boot and follow guide with display / keyboard attached.
(I will test this scenario tomorrow when my M.2 to USB arrives).

3 Likes