Sunday, 12 November 2017

How to install JetPack 3.1 on Nvidia Jetson TX2

Earlier this year I was writing about How to install JetPack on Jetson TX1. Soon after (in March) NVIDIA released a new version of the Tegra processor, TX2, and also its development board, Jetson TX2. Consequently, a new version of JetPack development toolset was released as well, with the major version increased to 3. See here the full spec of the Jetson TX2 Module and the Development Kit.

Jetson TX2 with connected peripherals on the right side: Ethernet, HDMI, USB (4-way USB hub for connecting keyboard, mouse and memory stick), micro USB (connected to host PC), 2 Wi-Fi antennas, power plug 
I got hold of Jetson TX2 and the first thing I did was installing the latest version of JetPack on my host machine and also on the Jetson board.

Jetson TX2

One significant change I noticed was that it is not necessary to switch back to Ubuntu 14.04 on a host machine anymore - entire installation goes well with running Ubuntu 16.04 (16.04.3 in my case) on the host. This is still not official recommendation though - official JetPack installation guide states that Ubuntu 14.04 is required.

Tegra TX2 module is under this heat sink and fan

Entire installation process is very similar to installing JetPack 2 on TX1. Nevertheless, I'll show you here all necessary steps.

Download first JetPack installer from Jetson Development Pack download page. At the time of writing, the latest was version 3.1: JetPack-L4T-3.1-linux-x64.run. Place it in the folder on the host machine where you intend to install JetPack. I chose /opt/JetPack. Make the file executable, either in Terminal or by right-clicking the file and opening Properties dialog: 



Running the installer from the terminal:


...opens an Installation Wizard:


We'll confirm the installation directory and Jetson module:



Installation requires elevation of privileges:


Component Manager opens where we have to select JetPack version we want to install and also Jetson module:


If we have previous version of the JetPack installed, we can uninstall it by selecting that version and set the Action to uninstall:


Component Manager shows suggested actions for each component for the selected JetPack and Jetson module. Components are grouped into two groups: Host (Ubuntu) and Target (Jetson).


We have to accept legal stuff:


...after which downloading of the installers for each component starts:


After all installers are downloaded and just before the installation starts, Component Manager will warn you to stay at your keyboard as your input might be required. When we hit Next button, installation starts.


Installation on the host will eventually be completed:


Now select your network configuration. In my case both host (PC with Ubuntu) and target (Jetson TX2) were connected to the local router (both via WiFi):


In the next step we have to select network interface through which is the host machine connected to the same network as the Jetson. Run ifconfig to get the names of all interfaces:


...then select in the Wizard the one connected to the local router:


In the next step Jetpack installer lists all actions that will be performed on the Jetson:


JetPack installer opens a separate Terminal window (on the host) with instructions on how to manually prepare Jetson for flashing:


Once Jetson is in recovery mode, host sees it as the USB device.


Flashing then starts:



Once flashing of the Linux for Tegra on the Jetson is done (via USB cable), installation of all Nvidia JetPack modules selected earlier starts. This happens via SSH connection so installer is trying to determine target's IP address:


Here I rebooted my Jetson after a while as thought Installation was stuck in this state forever...and later re-ran Jetson Installer. This was probably not necessary as next time I got the same message but waited a bit more after which I was prompted for entering the IP manually:




 JetPack installer will now push all modules listed below via SSH tunnel:



Installation of the modules eventually completes:


After closing the Terminal window, JetPack Installer Wizard shows the last page where we can opt for removing all module installers from the host machine:


In order to verify that installation was indeed successful, we can run the OceanFFT application - a demo suggested by Nvidia:



The duration of the entire installation process depends on the host's processing power and internet speed. With fast hosts and broadband connections it could last about 15 minutes.

What are your experiences with installing JetPack on TX2? Did you also have success with running Ubuntu 16.04 on the host PC?

How to find Windows Product Key