Preliminary Orin nano & Orin NX flashing guide
Last updated
Last updated
This guide is intended to be used with the Orin modules Orin nano & Orin NX series. As the integration of the flashing capabilities are not yet integrated into the SDK manager from Nvidia. This guide is meant to bridge the time until the SDK manager can be used. Not that not all functionalities of your carrier board like the JNX42 or JNX45 are supported yet (like some USB ports may not work). This will be fixed in a future release following soon.
Please make sure to use a Linux host PC with Ubuntu 18.04 LTS or Ubuntu 20.04 LTS (other versions may work, but some caused problems in the past!) operating system. Please use a native setup (no virtual machine). This Host PC should have a high bandwidth internet connection for the download of 3GByte+ installation file in the following steps.
You will also need a high-quality standard USB 2.0 Type A to micro-USB 2.0 cable.
If you are using an AGX Orin please use the Advanced flashing guide.
Download the installation file for your selected JetPack from the NVIDIA archive into a working directory of your choice. The following table shows step by step where to download the appropriate files.
Open a terminal window (CTRL + ALT + T) on your Linux host PC and navigate to your download location.
Device | Example |
---|---|
Extract the tar.gz file you just downloaded.
Device | Example |
---|---|
Change directory to the extracted rootfs folder.
Device | Example |
---|---|
Extract the rootfs.
Device | Example |
---|---|
Change directory to the extracted Linux_for_Tegra folder.
Install the flashing prerequisites.
Apply the binaries.
On Auvidea carrier boards, you have to adjust the EEPROM size:
change cvb_eeprom_read_size = <0x100>;
in <working directory>/Linux_for_Tegra/bootloader/t186ref/BCT/tegra234-mb2-bct-misc-p3767-0000.dts
to cvb_eeprom_read_size = <0x0>
Connect the system to the Linux host PC. Please use a USB 2.0 cable (micro-USB on the carrier board).
Connect your system to power (please see specifications to apply the right voltage for your system when using your own power supply). The system will start automatically and detect the host PC and enter the flashing state (also called force recovery mode). In some cases, you will have to manually press or short pins before connecting to your power source to enter force recovery mode. For example, with the JN30D you will need to short Pins 7 & 8 of J32 to enter force recovery. A simple way is to use tweezers. Please see the Technical Reference Manual for a detailed pin description. You can also see the FAQs in this document for further information.
Check that the connection is established with the “lsusb” command. You should find one entry with “Nvidia Corp.” as highlighted below.
Your system is now connected properly and ready to be flashed
Use this flash command for your system.
Please connect a monitor to the system. After the flashing process has completed, the system should automatically boot and show the Ubuntu desktop.
You now have a functioning system ready for your needs.
Do NOT use sudo apt-get upgrade!
After successful flashing please be aware that if you use “sudo apt-get upgrade” some applied changes performed in this guide (Bootloader, Kernels, DTBs, …) will be overwritten by standard Nvidia packages. This will most probably brick some board functionality and some interfaces may not work correctly anymore.
When overriding the Auvidea configurations only basic functionality like 1080p HDMI, some USB ports, Ethernet may work.
Without the correct configurations and packages 4k HDMI, PCIe ports, some USB ports, CSI, CAN, … will not work.
If you know what you are doing, you can exclude the Nvidia Debian packages from the Nvidia sources.list from being updated. This prevents overriding relevant files and changes.
If you are unsure, we recommend NOT UPGRADE YOUR SYSTEM.
In the case you accidental upgraded your system and some board functionality stopped working correctly, we recommend to reflash your system according to this guide.
Device | Example |
---|---|
Device | Example |
---|---|
Device | Example |
---|---|
Device | Example |
---|---|
Device | Example |
---|---|
Device | Example |
---|---|
Example | |
---|---|
Host PC
cd <path_to_downloadeded_tar>
Host PC
tar xf Jetson_Linux_R35.2.1_aarch64.tbz2
Host PC
cd Linux_for_Tegra/rootfs/
Host PC
sudo tar xpf ../../Tegra_Linux_Sample-Root-Filesystem_R35.2.1_aarch64.tbz2
Host PC
cd Linux_for_Tegra
Host PC
sudo ./tools/l4t_flash_prerequisites.sh
Host PC
sudo ./apply_binaries.sh
Before
After
Host PC
lsusb
Terminal host PC example
Host PC
HDMI monitor Jetson system