Flashing a Jetson Computer - Carleton-SRCL/SPOT GitHub Wiki

Overview

The lab utilizes two different Jetson boards as of 2024: the Jetson Xavier NX (for guidance and control) and the Jetson Orin (for computer vision tasks). It is sometimes necessary to flash one or more of the Jetson computers so as to have a clean installation. This can resolve any number of problems, include accidental installation of conflicting software or the accidental deletion of critical OS files. Other then damage to the hardware itself, there is very little that flashing the computers can't repair. To flash the computers, you will need the following:

  • 1x Female-to-Female Jumper Cable;
  • 1x Ethernet Cable;
  • 1x 12V/5A Power Supply;
  • 1x Spare Computer w/ Ubuntu 20.04;

[!WARNING] While you can get quite far into the process using Windows Subsystem for Linux, the flashing WILL eventually fail. The process of flashing the Jetson REQUIRES a dedicated Ubuntu 20.04 computer with USB ports. Note, using Ubuntu 18.04 is possible but you will only be able to install Jetson 5.1.4 on the Jetson Orin. Using Ubuntu 22.04 or newer is also possible, but you will not be able to flash the Xavier's. Thus, Ubuntu 20.04 is the happy middle ground OS for the moment.

Procedure

The following steps can be used to flash either board:

  1. Using the female-to-female jumper cable, short the GND and FC REC pins, as shown:

image

  1. Connect the ethernet cable from your Jetson to your router.

  2. Connect the board to the Ubuntu 20.04 computer via USB (note that the Orin has a USB-C port while some of the older Xavier boards use a USB Micro B port).

  3. Connect the 12V/5A power supply to the Jetson.

  4. If you have not already done so, create an NVIDIA Developer Account.

  5. On the Ubuntu 20.04 computer, open the terminal and confirm that the boards are connected and have booted into recovery mode. Type lsusb into the terminal. For the Jetson Xavier NX, you should see ID 0955:7e19 NVIDIA Corp. APX. For the Jetson Orin, you should see ID 0955:7323 NVIDIA Corp. APX.

[!IMPORTANT] The ID for all Xavier computers will be the same, and the ID for all Orin boards will also be the same. These IDs indicate the computers are in recovery mode. If the IDs are different them those listed above, then the computers are NOT in recovery mode.

  1. Next, download the NVIDIA SDK manager onto the Ubuntu 20.04 machine from this link. Note, you will need to have an NVIDIA developer account to download this file.

  2. Place the sdkmanager .deb file somewhere accessible, such as the home folder. Then, install the manager from the terminal using the command sudo apt install ./sdkmanager_2.2.0-12021_amd64.deb.

  3. Once the sdkmanager is installed, run it from the terminal by typing sdkmanager. This will open the following window:

image

[!IMPORTANT] You will need to log into your NVIDIA developer account here. In the image above, I have already logged into my account.

  1. Once logged into your account, you should see the window below:

image

[!IMPORTANT] When flashing the Jetson Xavier NX computer, you may see the prompt below. Ensure you select the first option.

image

  1. Under Product Category, ensure that Jetson is selected.

  2. Under System Configuration, I recommend unchecking Host Machine. The Target Hardware should automatically pick up the correct hardware, which in this case is the Jetson Orin NX 16GB.

  3. Under SDK Version, select the JetPack SDK you want to install. Generally, the latest compatible version should be installed, unless you have old code that will not work with the latest SDK.

  4. Under Additional SDKs, you will find extra options to install. Generally, for a clean installation we can leave these unselected. These can always be installed later if desired. The final options should look something like this:

image

[!IMPORTANT] In the sample image, I am indeed using Ubuntu 22.04. As previously mentioned, I recommend using Ubuntu 20.04.

  1. Click on Continue to Step 02 to proceed. This should bring you to this page:

image

  1. Select the specific files you want installed. The bare minimum installation is everything under Jetson Linux (assuming you goal is to flash the computer). Alternatively, you can also use this tool to install runtime components or specific SDK components WITHOUT flashing the computer. For most cases, you can leave the defaults selected.

[!IMPORTANT] The Jetson Xavier NX computers have 16 GB of eMMC memory while the Jetson Orin NX 16GB has a 128 GB SSD drive. Thus, if you choose to install all possible components onto the Xavier computer, you will find that it consumes most of the space on the Xavier boards. Unless you have specific code that needs to leverage CUDA, I recommend only selecting Jetson Linus Image and Flash Jetson Linux for the Xavier.

  1. Accept the terms and conditions of the license agreement and click on Continue to Step 03, and you will be prompted to enter your password for the Ubuntu 20.04 host machine:

image

  1. At some point during the flashing, you will be asked to enter information for the board. The image below shows this prompt for the Jetson Xavier NX flashing:

image

  1. Leave the OEM Configuration as Pre-Config, and set the username and password for the Jetson according to which computer it is:
  • Chaser - username: spot-red - password: srcl2023
  • Target - username: spot-black - password: srcl2023
  • Obstacle - username: spot-blue - password: srcl2023
  • Vision - username: spot-vision - password: srcl2023
  1. Allow the process to complete, which can take upwards of an hour depending on which components are being installed and the speed of the host machine.

You have now successfully flashed your Jetson computer!

Click here to go HOME