Jackal UGV and NVIDIA:  A Match Made in Heaven

Jackal UGV and NVIDIA: A Match Made in Heaven

The original article is available here

Any quick search online for computing platforms for artificial intelligence or machine learning, and especially embedded modules, will lead you directly to the Jetson line from NVIDIA.

Described as “AI supercomputers the size of a credit card,” these modules are the go-to for getting your project going quickly, whether you are in academic or commercial research, or even for your personal projects. NVIDIA has put a lot of power into these little machines, and being such a low-cost system compared to most computers capable of powering AI projects, you can’t find a better bang-for-your-buck.

Recently, Clearpath partnered with NVIDIA to pair the Jetson TX2 module with the Jackal UGV, creating a robotic systems package that allows users to experience the computing rocket fuel packed into the Jetson, with the open source environment of the Robot Operating System (ROS), all inside a small and fast, indoor/outdoor capable, and highly customizable robot. Info about this package is in the list of available Jackal UGV packages.

This can happen thanks to the NVIDIA JetPack SDK. If you’re not familiar with the NVIDIA ecosystem, what JetPack does is group their software together into a neat and tidy package, including: TensorRT, the CUDA toolkit, OpenCV, and more. All of this gets installed on top of Ubuntu 16.04 (Linus Based), which is the key to easily installing ROS on the Jetson and let it be the brain of your robot.

After testing and deploying Jetson on Jackal themselves, NVIDIA has made Jackal UGV one of the “Quick Start” platforms for development with Jetson. As mentioned by NVIDIA, “Developers can use these hardware platforms to jump start AI application development, minimizing time spent on initial hardware assembly. These platforms offer flexibility for adding additional sensors and come with software tools and APIs for developing AI enabled applications.”

We’re proud that Jackal is a reference platform for such a game changing computing module, and can be the wheels for your deep learning, neural network or other AI related robotics projects!

ADDING JETSON TO YOUR JACKAL UGV: A GUIDE

If you already own a Jackal UGV, and want to run ROS on Jetson with it, here’s a fairly straightforward walk through, brought to you by Clearpath’s ROS Tutorials.

First, you’ll need to Download Jetpack, and from there, simply follow NVIDIA’s Jetpack Install Instructions and install at least the “Linux for Tegra Host Side Image Setup”.

Once the TX2 image is downloaded, place it into “{install_directory}/64_TX2/Linux_for_Tegra_tx2/”.

Open up a terminal and navigate to “{install_directory}/64_TX2/Linux_for_Tegra_tx2/”.

Use pbzip2 to decompress the image. “pbzip2 -d {image_name}.img.bz2”. Pbzip2 is the parallel version of bzip2. Note: Unzipping can take some time.

Caution: you will need 32 GB of free space for the image. Copy the uncompressed image and rename it to “bootloader/system.img”.

After the image is unzipped, connect to the TX2 with a micro USB cable to the USB0 port. Power on the TX2 either by turning on the Jackal or using the included power supply.

Next you will need to put the TX2 into recovery mode. To do this:

  • Make sure the TX2 is powered off
  • Press and hold the REC button
  • Press the power button.

Once you’re in recovery mode, run “sudo ./flash.sh -r -k APP jetson-tx2 mmcblk0p1” on the host computer. Doing this will copy the image file to the device.

Another Note: This is over USB 2.0 so it will take some time.

When the flash is completed, the TX2 will reboot and will have ROS Kinetic installed along with the Jackal drivers, YAY!

To make sure that the Jackal is connected correctly,open up a terminal and execute “rostopic echo /status”. You should see a 1Hz message containing the Jackal’s diagnostic information.

From there, you’re ready to get working with Jackal just like you regularly would in ROS, except now you have the computing firepower of the Jetson TX2 under the hood!

For more information about physically mounting Jetson on your Jackal (removing the Jackal computer and installing the Jetson), as well as how to use your host computer with the Jackal, take a look at the full, expanded version of this tutorial on the Jackal UGV Guides.

Previous article White Paper: Comparing Accuracy of Open Source vs. Proprietary Localization Software
Next article A Guide to Lasers for Robots (Part 2)