Skip to content

Flashing TX2 on development board

Fei Kuan edited this page May 27, 2023 · 1 revision

Introduction

The goal of this tutorial is to reinstall the Ubuntu Linux OS on the TX2, for reasons such as starting from scratch or upgrading. This tutorial is for installing the TX2 on the development board, not on carrier board.

Requirements

You will need the following:

  • x86_64 computer running Linux with Docker support (I am using Kubuntu 20.04). Ubuntu-based distribution is recommended.
  • NVIDIA Jetson TX2
  • Network Connectivity for your computer (Wi-Fi or wired) and Jetson TX2 (through wired Ethernet)
  • Ethernet cable
  • Micro USB cable
  • HDMI display
  • USB Keyboard/Mouse (will need a USB hub if no using one wireless receiver for both)

If your computer is running Ubuntu 18.04

In this case, Docker is not necessary and you can install and run SDK Manager directly on the computer with GUI. The instructions below are not necessary (but will still work). Refer to step 3 below for choosing the correct version, and step 5 for the installation.

Installing

Note: this guide is partly based on the tutorial found here.

Installing NVIDIA SDK Manager

Docker

Note: While previous members were able to get the GUI of the SDK Manager working, I am not able to. Therefore this tutorial will use the official NVIDIA SDK Manager Docker image which only has command line support.
First, we need to install Docker:

sudo apt-get remove docker docker-engine docker.io
sudo apt-get update
sudo apt install docker.io
docker --version

You should see an output stating your Docker version.

SDK Manager

Note: Official NVIDIA documentation: Link Download Ubuntu 18.04 Docker Image on this website: Link. Register an NVIDIA Account when required. Load the downloaded image and tag it as latest (your version name will be different):

docker load -i Downloads/sdkmanager-1.8.1.10392-Ubuntu_18.04_docker.tar.gz
docker tag sdkmanager:1.8.1.10392-Ubuntu_18.04 sdkmanager:latest

Flashing

WARNING: To avoid troubles, it is highly recommended to have a large amount of free disk space in the root partition. At least 50GB is recommended.
Note: You will be asked to login to your NVIDIA account every time you run SDK Manager, just do it, it's annoying.

  1. Connect power to TX2, connect microUSB to computer. Turn on the board.
  2. Check whether the board is connected: docker run -it --privileged -v /dev/bus/usb:/dev/bus/usb/ -v /dev:/dev -v /media/$USER:/media/nvidia:slave --rm sdkmanager --listconnected all
  3. Check the versions available for install: docker run -it --privileged -v /dev/bus/usb:/dev/bus/usb/ -v /dev:/dev -v /media/$USER:/media/nvidia:slave --rm sdkmanager --query. Pick the largest common version number between this list and the container version list. Use this website to convert between the L4T and JetPack version. As of writing this is 32.7.1 and 4.6.1
  4. Perform the installation with this command docker run -it --privileged -v /dev/bus/usb:/dev/bus/usb/ -v /dev:/dev -v /media/$USER:/media/nvidia:slave --network host sdkmanager --cli install --logintype devzone --product Jetson --version 4.6.2 --targetos Linux --host --target JETSON_TX2_TARGETS --flash all --license accept --staylogin true, swapping the 4.6.2 version to the version you wish to flash. NOTE: --host might not be necessary, but I have not tested it.
  5. Follow the instructions in the SDK Manager, keeping the following in mind:
    • Install everything
    • When it prompts you to flash the TX2, select Automatic Setup as we are not in Recovery Mode. The IP Address is most likely 192.168.55.1 and username/password should be subbots.
    • You will need an HDMI monitor and USB keyboard and mouse after flashing is complete to complete first time user setup, then go back to SDK Manager to complete installation.
  6. Running sudo apt update then sudo apt upgrade is probably a good idea.

Clone this wiki locally