Software Setup (User)¶
The following installation must be done in the Host PC that will communicate with Diablo as Diablo’s Raspberry Pi comes pre-installed with ROS2 Foxy. It is recommended to follow the instructions provide in ROS Foxy Docs for latest info on installation.
Set Up Your Sources List¶
sudo sh -c 'echo "deb [arch=amd64,arm64] http://packages.ros.org/ros2/ubuntu DISTRO main" > /etc/apt/sources.list.d/ros2-latest.list'
Replace DISTRO
with your distribution name (e.g., focal
for Ubuntu 20.04).
Set Up Your Keys¶
curl -fsSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
Update Your Package Index¶
sudo apt update
Install ROS 2 Foxy Packages¶
sudo apt install -y ros-foxy-desktop
This command installs the ROS 2 Foxy Fitzroy desktop packages, including common dependencies and tools.
Source the ROS 2 Setup Script¶
source /opt/ros/foxy/setup.bash
To avoid running this command each time you open a new terminal, consider adding it to your shell’s startup script (e.g., ~/.bashrc
).
Install ROS 2 Dependencies¶
You may need to install additional dependencies based on your specific use case. Common dependencies include:
python3-colcon-common-extensions
: Useful for building ROS 2 packages.
Install them using apt
:
sudo apt install -y python3-colcon-common-extensions
Create a ROS 2 Workspace (Optional)¶
You can create a workspace to organize your ROS 2 packages and build them:
mkdir -p ~/ros2_ws/src
cd ~/ros2_ws
colcon build --symlink-install
This step is optional but recommended for working with ROS 2 packages.
Test Your ROS 2 Installation¶
To verify that your ROS 2 installation is working correctly, open a new terminal and run:
ros2 doctor
This command checks the system and reports any issues or missing dependencies.
You can also try running a basic ROS 2 command like:
ros2 --help
This should display the ROS 2 command-line interface help message.
ROS2 Diablo Domain ID¶
Finally in your .bashrc
put the ROS DOMAIN ID 5 which is the default domain id of diablo.
export ROS_DOMAIN_ID=5
Congratulations! You have successfully installed ROS 2 Foxy Fitzroy on your Linux system. You can now start developing and running ROS 2 applications.
For further documentation and tutorials, refer to the official ROS 2 documentation: https://docs.ros.org/en/foxy/index.html
Software Setup (Diablo)¶
Connect to WiFi¶
Connect to Diablo via ethernet lan cable.
Then use sudo nmap -sP 192.168.0.*
to find ip. The name diablo in one of thec connections should turn up.
Enter diablo via ssh, enter the command terminal and enter the following:
ssh -X diablo@192.168.0.###
The password is:
diablo123
Connect the Raspberry pi to your local WiFi network via
sudo nmtui
The new ip can be located via
ifconfig
Nav2 Performance¶
Install and add the export command to your .bashrc
file to enable smooth ROS2 nav experience.
sudo apt install ros-foxy-rmw-cyclonedds-cpp
export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
Also to perform buffer increase for cyclone (do only once)
echo "net.core.rmem_max=8388608\nnet.core.rmem_default=8388608\n" | sudo tee /etc/sysctl.d/60-cyclonedds.conf
MBS Drivers¶
The package is designed to work on the Diablo. To install the package request it from MBS Support .
Copy the provided ROS2 package into your
ros2_ws
and build
colcon build --symlink-install
Network Setup¶
To set up a connection to the Diablo, please follow the provided guidelines:
Connect an Ethernet cable from your Host PC to the Ethernet port of the Diablo (Raspberry pi).
Next in your Host PC, create a static connection from your network manager with an ip of
192.168.0.51
. For the netmask, use255.255.255.0
.Once the static connection is setup correctly, one can
ssh
into the on-board PC as described below.
To ssh, enter the command terminal and enter the following:
ssh -X diablo@192.168.0.<diablo_ip>
The password is:
diablo123