JetPack 3.0 – NVIDIA Jetson TX2 Development Kit

JetPack 3.0 is a tool that installs the software tools and operating system for a Jetson Development Kit. In the following video, JetPack installs on a Jetson TX2 Development Kit. Looky here:

JetPack Information

JetPack 3.0 may be used to install the development tools on a Jetson Development Kit, either a Jetson TK1, TX1 or TX2. You can read more information on the JetPack web page. There’s a list of all of the System Requirements, as well as the different tools that can be installed.

Note

In addition to the Jetson TX1, you will need another desktop or laptop computer with an Intel or AMD x86 processor. These types of machines are commonly called a PC for Personal Computer. This computer is referred to as the host for the flashing process. JetPack is an x86 binary and will not run on an ARM based machine. In the video, an older Dell Inspiron 3000 Series i3847-3850BK Desktop (3.5 GHz Intel Core i3-4150 Processor, 8GB DDR3, 1TB HDD with Ubuntu installed) is being used as the host.

Installation

It’s that time again! When NVIDIA introduces a new Jetson model, they usually come out with a new revision of JetPack to support it. We are now on revision 3.

For the most part, installation pretty easy. From an Ubuntu 14.04 PC 64 bit host computer, you simply download the JetPack software from the NVIDIA web link above (you’ll have to sign in with your developer account to download JetPack) and follow the instructions in the setup guide.

The set of tools that you can install is flexible. You have the option to install a cross compiler on the host for building your Jetson programs on your PC. Using the cross compiler you can build CUDA and GameWorks samples, then copy the sample binaries to the Jetson.

For the demo, I installed the cross compiler and built the samples. I thought they might be fun to play with at some point. You can see one of the deep learning examples in the video.

Installation from the demo host computer to the Jetson took about an hour fifteen all together, including all the downloads on a 30 MBs Internet link, flashing the Jetson, cross compiling the samples and then loading them onto the Jetson.

The one tricky bit in all of this is setting the Jetson into recovery mode. Follow the on-screen instructions to set the Jetson into recovery mode, open a Terminal, and then type:

$ lsusb

In the output you should see the Jetson listed as Nvidia. If you don’t see the Jetson using lsusb, then the device will not be flashed. Some people who have tried using virtual machines with JetPack have to use some tricks to allow for USB to see the device. Note: Some of the virtual machines just won’t work with JetPack.

Note: On the Jetson TK1, the procedure to enter recovery mode is just slightly different. Refer to the installation manual for details.

Tools Available

Currently the Jetson TX1 uses L4T 23.1 (Jetson TK1 uses L4T 21.4). JetPack flashes the appropriate L4T to the Jetson. Here are some of the JetPack release highlights for the Jetson TX2:

  • Linux for Tegra r27.1 (Developers Preview)
  • TensorRT 1.0
  • cuDNN 5.1
  • VisionWorks 1.6
  • CUDA 8.0
  • Multimedia API

Developer Tools

  • Tegra Graphics Debugger
  • Tegra System Profiler
  • PerfKit

Each Jetson has its own L4T Version:

Product L4T Version Notes
Jetson TX2 27.1
NEW!
64-bit Ubuntu 16.04
Kernel 4.4
Developer Preview Release
Jetson TX1 24.2.1
Unchanged
64-bit Ubuntu 16.04
Kernel 3.10.96
Production Release
Jetson TK1 21.5
Unchanged
32-bit Ubuntu 14.04
Kernel 3.10.40
Production Release

Do I have to have an Ubuntu PC?

The short answer is yes. You may be able to use a VM, but it is not officially supported. Here’s what NVIDIA wrote in the Jetson Forum:

The flashing must be performed from within 64-bit Linux on an x86-based machine. Running an Ubuntu 14.04 x86_64 image is highly-recommended for the flashing procedure. If you don’t already have a Linux desktop, and are trying to avoid setting up dual-boot, you can first try running Ubuntu from within a virtual machine. Although convenient, flashing from VM is technically unsupported — warning in advance that while flashing from within VM, you may encounter issues such as the flashing not completing or freezing during transfer. Chances will be improved if you remove any USB hubs or long cables in between your Jetson and the host machine.

The next logical step would be to boot your desktop/laptop machine off Ubuntu LiveCD or USB stick (using unetbootin tool or similar).

Finally, if you have an extra HDD partition, you can install Ubuntu as dual-boot alongside Windows. Flashing natively from within Ubuntu is the supported and recommended method for flashing successfully. It may be wise to just start in on dual-boot from the get-go, otherwise you may end up wasting more time trying to get the other (potentially more convenient, but unsupported) methods to work.

Note also that Ubuntu 16.04 is not officially supported, but people have been reporting success using that OS. If you encounter issues, please ask questions on the Jetson & Embedded Systems development forums.

Conclusion

The first time through, setting up the system and flashing the Jetson can take around a little more than an hour or so depending on your download speeds and the speed of your PC. In the video, a simple cable modem 30MBs was used for downloading. Downloading all of the components only happens the first time you do an installation, subsequent installations check for updates and if none are available then simply flash the Jetson, saving a lot of time.

4 Comments

    • The Jetson TX2 comes with an HD camera already installed. Selecting additional cameras is highly dependent on the intended application, so there is no general recommendation. This is mainly because there is such a range in quality and price that it is difficult to survey the entire market.

Leave a Reply

Your email address will not be published.


*