Skip to main content
Version: ROS 2 Jazzy
Leo Rover with mounted Jetson Orin Nano Integration

NVIDIA Jetson Orin Nano Integration

This tutorial will guide you through the process of connecting a Jetson Orin Nano to your Leo Rover. The Jetson Orin Nano is a powerful edge AI computing module that significantly extends the processing capabilities of your Leo Rover. By following this tutorial, you will learn how to integrate this component with your rover system, enabling advanced computing, machine learning, and autonomous capabilities.

What to expect?​

After completing this tutorial, you will have ROS 2 installed, be able to run custom ROS 2 nodes directly on your Jetson Orin Nano, and have it communicating with the Leo Rover's main system over ROS interfaces.

Prerequisites​

Below is the list of all necessary tutorials and hardware components required to complete the integration.

📄Connect to Leo Rover AP
Learn how to connect to your Leo Rover via Wi-Fi.
📄Connect to Leo Rover via SSH
Guide on how to connect to your Leo Rover using SSH for remote access
📄Connect to network
Guide on how to connect your Leo Rover to a Wi-Fi network, enabling internet access

Referenced products​

Leo Rover with Jetson Orin Nano Integration
Jetson Orin Nano Integration
The Jetson Orin Nano Integration is a hardware bundle that Jetson Orin Nano and mounting accessories enabling integrating the computing module with Leo Rover.
info

Three Allen keys (sizes: 2.5, 3, and 4 mm) are required for the mechanical installation. Please note that these tools are not included in the kit.

Setting up the Jetson Orin Nano​

info

It is recommended to set up the Jetson before mounting it on the rover. That way, you can use the Jetson with a regular monitor, keyboard and mouse, which makes the setup process easier.

In order to set up the Jetson Orin Nano, you will need to flash the official NVIDIA image on it and update the firmware. Follow the steps below to complete the setup:

  1. Go through the official Jetson Orin Nano setup guide.
  2. During flashing, install JetPack 7.2 with L4T firmware at least 39.2.
  3. Ensure the Jetson has internet access (either via Ethernet or Wi-Fi) before proceeding.
  4. Finish the initial setup and create a user account when prompted.
  5. Ensure that your Jetson is running in MAXN SUPER mode for optimal performance.
tip

You can find all the JetPack images in the JetPack Archive.

After the initial setup is complete, install the latest packages directly on the Jetson (either with an attached display or over SSH):

sudo apt update && sudo apt upgrade

The next step is to install ROS 2 by following the instructions in the ROS 2 documentation.

tip

If you don't plan to use ROS GUI tools (like RViz or rqt) on the Jetson, you can install the ros-jazzy-ros-base package instead of the full ros-jazzy-desktop one. This saves Jetson storage space.

tip

To avoid sourcing the ROS 2 environment manually in every new terminal, add it to your ~/.bashrc:

echo "source /opt/ros/jazzy/setup.bash" >> ~/.bashrc

Now you can turn off Wi-Fi on the Jetson, since later on it will be connected to the rover's network via Ethernet. You can do this either with the OS GUI or with the following command:

nmcli radio wifi off

Keeping both connections active could cause network routing conflicts. Once the Jetson is connected to the rover, it will access the internet through the rover, so make sure the rover is connected to a network whenever the Jetson needs internet access.

At this point you can proceed with the hardware integration and mounting the Jetson on the rover.

Hardware integration​

The Jetson Orin Nano Integration kit includes all necessary mounts, screws, and cables required to install the NVIDIA Jetson Orin Nano on your Leo Rover. The kit has been designed to ensure a straightforward and robust assembly process.

Mounting​

To assemble the kit, first insert the Jetson Orin Nano into the base mounts, then secure the Jetson with the 3D-printed bracket using M3 x 8 bolts as shown below.

Securing the Jetson Orin Nano into the base mounts with a 3D-printed bracket
Securing the Jetson Orin Nano into the base mounts with a 3D-printed bracket

Place the Ethernet adapter in its mount and secure it with the 3D-printed holder and M3 x 8 bolts.

Placing and securing the Ethernet adapter into its mount
Placing and securing the Ethernet adapter into its mount

The assembled kit can be mounted on the Leo Rover using M5 x 10 bolts:

Mounting the fully assembled Jetson Orin Nano Integration kit onto the Leo Rover
Mounting the fully assembled Jetson Orin Nano Integration kit onto the Leo Rover

Wiring​

Proper cable management is essential to ensure reliable operation and prevent hardware damage. Follow these steps to connect the kit's electronics to the Leo Rover:

  1. Connect the USB-C cable from the USB-Ethernet adapter to the rover's external interface. Route the cable neatly, ensuring it is properly folded and safely clear of the Jetson's cooling fan.
  2. Replace the standard MEB-battery power cable with the included modified version featuring a barrel jack connector. Plug the barrel jack directly into the Jetson Orin Nano's power port.
Routing the USB-C data cable and connecting the barrel jack power supply
Routing the USB-C data cable and connecting the barrel jack power supply
  1. Link the Ethernet adapter to the Jetson Orin Nano using the provided Ethernet patch cable.
Connecting the Ethernet adapter to the Jetson Orin Nano with the Ethernet patch cable
Connecting the Ethernet adapter to the Jetson Orin Nano with the Ethernet patch cable

Once all connections are secured and verified, enclose the assembly by installing the protective cover using M4 x 12 bolts.

warning

Take extra care during this step. Carefully inspect the perimeter of the cover to ensure that no cables are pinched, crimped, or squeezed between the mechanical components.

Installing the protective cover over the assembled Jetson Orin Nano Integration kit
Installing the protective cover over the assembled Jetson Orin Nano Integration kit

Now the rover is ready for software integration.

Software integration​

Sharing Leo Rover network with the Jetson​

Since the Jetson's Ethernet port is connected to the rover via a USB-to-Ethernet adapter, a new Ethernet interface is created and it needs to be configured to bridge the rover's network to the connected device.

To do that, log in to the Raspberry Pi via SSH (either from the Jetson or from your local machine) and open the Netplan configuration file that manages the Ethernet bridge:

sudo nano /etc/netplan/10-eth-bridge.yaml

Add the eth1 interface configuration to the /etc/netplan/10-eth-bridge.yaml file. The final file should look like this:

/etc/netplan/10-eth-bridge.yaml
# Creates a bridge interface and adds Ethernet interfaces to it.
network:
version: 2
ethernets:
eth0:
renderer: networkd
optional: true
eth1:
renderer: networkd
optional: true
bridges:
br0:
renderer: networkd
interfaces: [eth0, eth1]
addresses: [10.0.0.1/24]
link-local: []

Restart the Raspberry Pi to apply changes:

sudo reboot
note

This will disconnect you from the rover's Wi-Fi network, so make sure to reconnect after the reboot.

Now your Jetson should receive an IP address in the 10.0.0.x range and be accessible from the rover network.

tip

In order to find the Jetson's IP address, you can use nmap from your local machine connected to the Leo Rover network:

sudo apt install -y nmap
nmap -sn 10.0.0.1/24

Now you can connect to the Jetson Orin Nano via SSH, using the username you created during the setup and the IP address you found above:

ssh <username>@<jetson_ip_address>

To verify that the Jetson can communicate with the rover, list the available ROS topics. You should see the rover's topics, such as /firmware/battery:

ros2 topic list

You can also check that the data is coming through by printing the battery messages:

ros2 topic echo /firmware/battery
tip

If the rover's topics are not visible, make sure that both the Jetson and the rover use the same ROS_DOMAIN_ID. You can find more information in the ROS Development guide.

What's next?​

With the Jetson Orin Nano connected to the rover's network, you can move computationally heavy tasks off the Raspberry Pi. To learn more about creating your own ROS 2 nodes and packages, check out our ROS Development guide.

The Jetson is well suited for real-time computer vision tasks, such as object detection, tracking and segmentation, and for autonomous navigation. For GPU-accelerated ROS 2 packages and AI models, see NVIDIA Isaac ROS and the Jetson AI Lab.

The Jetson works best when paired with a camera or a depth sensor. If you need a complete solution, check out our Vision Pack, which combines a Jetson Orin Nano with a ZED2i stereo camera. You can also browse our cameras and lidars integrations, or the whole Integrations page, for other components that might complete your setup.