Skip to main content

Jetson Operating System Installation

In this guide you will find out how to customize the Jetson Nano system image to work with ROSbot XL.

Write Image to the microSD Card

First you will need to install the official Jetson Nano image from Nvidia (based on Ubuntu 18.04), please follow instructions from the Nvidia guide.

Setup and First Boot

Follow the setup step of the Nvidia guide to fully complete the installation.

Internet connection

Now please connect your Jetson to the Internet using Wi-Fi. You can use GUI or nmcli tool (nmcli device wifi connect PLACE_YOUR_WIFI_SSID_HERE password PLACE_YOUR_WIFI_PASSWORD_HERE).

SSH is already installed, from now on you can switch to a remote connection.

Netplan installation

Install netplan and other useful network utilities:

sudo apt update
sudo apt install -y netplan.io wireless-tools net-tools unison rfkill network-manager

Robot configs installation

Next install robot configs using:

git clone https://github.com/husarion/robot-configs
sudo ./robot-configs/install.sh
rm -rf robot-configs
sudo setup_robot_configuration rosbot_xl ros2_humble

Open netplan configuration file:

sudo vim /etc/netplan/01-network-manager-all.yaml

And replace "PLACE_YOUR_WIFI_SSID_HERE" with your SSID (Wi-Fi network name) and "PLACE_YOUR_WIFI_PASSWORD_HERE" with your Wi-Fi password, save the file and quit (:wq). Now apply changes:

sudo netplan apply

Docker installation

Use the following commands to install Docker Engine:

sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release
sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
sudo groupadd docker
sudo usermod -aG docker $USER

Now install Docker compose v2.16.0:

sudo mkdir -p /usr/local/lib/docker/cli-plugins
sudo curl -SL https://github.com/docker/compose/releases/download/v2.16.0/docker-compose-linux-aarch64 -o /usr/local/lib/docker/cli-plugins/docker-compose
sudo chmod +x /usr/local/lib/docker/cli-plugins/docker-compose

To create symlinks first open the file:

sudo vim /etc/udev/rules.d/10-local.rules

copy and paste the following lines:

ACTION=="add", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6015", SYMLINK+="ttyUSBDB"
ACTION=="add", ATTRS{idVendor}=="10c4", SYMLINK+="ttyRPLIDAR"

then save and quit (:wq).

Husarnet installation

Use the following command to install Husarnet:

curl -s https://install.husarnet.com/install.sh | sudo bash

Reboot to make sure that all changes were applied.

Reference projects

Now you're ready for one of our demo projects:

linkdescription
rosbot-xl-mappingCreate a map (using slam_toolbox) of the unknow environment with ROSbot controlled in LAN or over the Internet
rosbot-xl-navigationAutonomous navigation (using navigation2) on a map created with the rosbot-xl-mapping demo linked above.