Flashing Nvidia Xavier NX

Hello everyone,
I have just started working with a Nvidia Xavier NX with emmc. I don’t know a lot about it.
It is pre-configured and I don’t have the administrator password.
I tried to flash it with SDK manager from another PC, but I think I should first delete the previous data. Because it does not have enough space to install new sdk.
I searched internet and there are a lot of solutions, but I couldn’t work with them. For example, I can’t find flash.sh because I don’t have NVIDIA sub-directory. I can’t find Linux_for_Tegra in my target or host PC. What should I do?
I would be grateful if anyone could help.

Flashing in no way requires any password, just a correct release of Ubuntu on a desktop host PC. Recovery mode itself is just a custom USB device. The exception is that if security fuses are burned, then it is only possible to flash the boot content if you have the correct key (SD card models don’t have this ability to burn fuses, eMMC models do). No Jetson is shipped with burned security fuses, so if they are burned, then it means someone specifically went through the steps to do so. No previous data ever needs to be deleted to flash.

Flash itself should generally have enough space on the Jetson itself, although it wouldn’t be unusual for someone to underestimate the required space on the host PC. The host PC is recommended to have at least 50GB of spare space before starting a flash.

During flash with JetPack/SDK Manager there are basically two steps:

  1. Actual Flash, and only the basic system is installed. Then the system automatically reboots to non-recovery mode.
  2. Optional content, e.g., CUDA is added. This requires a fully booted Jetson (which is automatic if the first step succeeded), along with the first boot account setup being completed. The need for an account is because this optional content is added via ssh and needs a user to log in to. Long ago there was a default login name/pass, but California law now forbids this, and so it is up to the end user to set up the login name/pass (at least if distributing in California). There is an option for an end user to set up the name/pass prior to flash if wanted, but it is up to the user to do this (in which case first boot setup would not be needed and would essentially be “preloaded” from the initial flash).

The creation of “~/nvidia/nvidia_sdk/JetPack...verison.../Linux_for_Tegra” is a result of having JetPack/SDKM run and attempt to flash. If the directory “Linux_for_Tegra/” is missing, then likely it is because either (A) sdkmanager was not run, or (B), the host PC lacked the disk space to do so. Does the host PC have about 50GB of spare space? Check:
df -H -T ~
(filesystem type should be ext4, extra space would be recommended at about 50 GB)

1 Like

Thank you very much for your answer!
No, unfortunately my host PC has just 15 GB!
So you mean if my host has more than 50 GB, there is no need to do anything else. Just connect in recovery mode and flash by SDK Manager? There is no difference between flashing for the first time and reflashing?

In reality it probably won’t use 50 GB, but this is what is checked. During flash an image is created of the entire rootfs filesystem prior to flash. If a rootfs is going to be 28 GB, then that much is consumed on the host PC. Then a “sparse” rootfs is created in addition to the original “raw” image (a sparse image is much smaller and flashes faster; if the rootfs image approaches full, then the sparse image approaches the raw size, and you’d end up having two files the size of the rootfs…56 GB in that example). Plus there are a number of smaller files generated before flash.

You are correct, there is no difference between flashing once and reflashing. Recovery mode ignores all previous content and starts from scratch.

1 Like

I tried to use a USB flash drive, but at first I didn’t know that it doesn’t work with NTFS. I can change the format to ext4 but I can’t change Target HW image folder path (Because it says that you should uninstall image first)
I don’t know how to change the path!

I’m unsure of what that means…what is the application which is asking to uninstall something? Are you speaking of SDK Manager? Maybe a screenshot if it is SDKM. Or are you talking about the USB flash drive having issues to change it to NTFS? If it is the flash drive, can you provide the output of:
sudo gdisk -l /dev/<whatever the designation is for the drive>

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