JetsonHacks

Developing on NVIDIA® Jetson™ for AI on the Edge

JetPack 1.1 – NVIDIA Jetson TK1 Development Pack

A few months ago, I wrote an article about using a beta version of JetPack to install development tools and flash OS images to the Jetson TK1 Development Kit. Since then, JetPack has graduated from being a beta product, and a new version of Linux for Tegra (L4T) has been released, version 21.3. Looky here:

You can read more information on the Jetson TK1 Development Pack 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 TK1, 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. It will NOT run on a Jetson. In the video, a Dell Inspiron 3000 Series i3847-3850BK Desktop (3.5 GHz Intel Core i3-4150 Processor, 8GB DDR3, 1TB HDD, Windows 8.1 with Ubuntu installed dual boot) is being used as the host. The PC is running Ubuntu 14.04 64-bit, but 12.04 64-bit works too.

L4T 21.3

There are several issues that are addressed in the 21.3 release. See the L4T 21.3 Release Notes. One of the more important ones is that the 1.0 Gb/s ethernet issue has been addressed, which means that the ethernet link can be run at full speed now without causing trouble.

Another issue that you have seen mentioned on this blog is instability of JPEG video stream decoding. This has also been addressed. In general, 21.3 is a release which addresses some of the stability issues that have come up in the last few months.

The kernel version has not changed from version 21.2 to 21.3, which means that any modules that you compiled for 21.2 should work with 21.3.

JetPack Installation

For the most part, installation is easy. From an Ubuntu 12.04 or 14.04 x86 PC host computer (64 bit), you simply download the JetPack software from the NVIDIA web link above (you’ll have to sign in with your developer account) and follow the instructions in the setup guide. Some people have tried to run JetPack using Virtual Machines (VM), with varying degrees of success.

The set of tools that you can install on the host and the Jetson is flexible, and includes Linux for Tegra (L4T) 21.1, CUDA 6.5, OpenCV 2.4.10 as well as the Tegra System Profiler and PerfKit. Also, you have the option to install a cross compiler on the host for building your Jetson programs on the PC host. 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 ran a couple of the samples in the video.

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

If you’re flashing your Jetson for the first time, this is a good way to go! You won’t have to know a whole lot other than how to connect the cables and place the Jetson into ‘Recovery Mode’. There are explicit instructions during the flashing process in JetPack on how to place the Jetson into ‘Recovery Mode’.

Another note, the packages are only downloaded once for JetPack. When JetPack is subsequently launched, it checks to see if it has downloaded the files. If it has, it uses those files. Assuming that you don’t compile and copy the samples over to the Jetson during your normal development cycle, it usually takes around 10 minutes to flash the Jetson the second time around.

After Party!

Here are some tips for running the Jetson in a desktop environment and enabling the USB 3.0 port:
After LT4 21.3 Flash Setup

Facebook
Twitter
LinkedIn
Reddit
Email
Print

11 Responses

  1. When the jetson is connected through pc host usb port, how can we know jetson ipaddress? It is needed to push some datas. Thanks

    1. You can get the Jetson IP address in several different ways. First, on a Terminal on the Jetson you can execute ‘$ ifconfig’ and the IP address will be listed. Also on the Jetson, you can go to “Settings->Network->Wired” where the IP Address is listed.

      If you are on you Host PC, you can channel Trinity from the Matrix and use the program ‘nmap’. The command

      $ nmap tegra-ubuntu.local

      should list the IP address. The command ‘arp’ could also be used.

  2. Hi,

    Thank you for the detailed steps in the video. I downloaded the latest version of Jetson TK1 Development pack from https://developer.nvidia.com/jetson-tk1-development-pack (L4T r21.4 )

    While I successfully flashed the Jetson, there was an error when it came to the section: Push and Install Components on Target.

    It downloaded some files for a while and then an error message popped up stating:

    “CUDA cannot be installed on device. Please use apt-get command in a terminal to make sure following packages are installed correctly on device before continuing:
    cuda-toolkit-6-5 libgomp1 libfreeimage-dev libopenmpi-dev openmpi-bin”

    I am not sure how and where to run the apt-get command.

    Also, before the flash began, I could detect the Jetson in the lsusb command. After the flash began and it reached the error stated above, I ran the lsusb again and this time it did not detect the Jetson. Is that how it should be? Or was I supposed to push force recovery when the Jetson rebooted itself after the flash.

    Thanks.

    1. Hi Parth,
      To run the apt-get command, on the Jetson open up a Terminal.
      I believe that it is asking you to:
      $ sudo apt-get cuda-toolkit-6-5 libgomp1 libfreeimage-dev libopenmpi-dev openmpi-bin

      After flashing and the Jetson reboots, it goes into normal mode which means that it will not be detected by lsusb. The CUDA and OpenCV4Tegra libraries are transferred via ethernet to the Jetson from the host PC. Issues with the ethernet connection will cause the installation of CUDA and OpenCV to fail.

      Hope this helps

      1. Hi Kangalow,

        I figured it might have been due to an internet issue. I uninstalled the software from my host machine and re-flashed the jetson with dedicated ethernet cables to both the devices and I have it working now 🙂

        However, I have another issue with the wireless and bluetooth connectivity.
        Before I flashed the Jetson, I could connect to the internet using a USB WiFi dongle.
        However, now the bluetooth settings are locked as well. I tried the basic steps suggested by people on various ubuntu forums to unlock the bluetooth, but nothing works.

        Would you happen to have any insight on this issue?
        Greatly appreciate your help.

        Thanks again.

Leave a Reply

Your email address will not be published. Required fields are marked *

Disclaimer

Some links here are affiliate links. If you purchase through these links I will receive a small commission at no additional cost to you. As an Amazon Associate, I earn from qualifying purchases.

Books, Ideas & Other Curiosities