How To install ROS Kinetic on Raspberry Pi 3 (Ubuntu Mate)

The ROS framework is compatible with a short list of Linux distributions. Neither the hardware side is not better. There are just few hardware architectures compatible with ROS. Raspberry Pi is one of the development boards compatible in terms of hardware with ROS.

So, I thought to install ROS Kinetic on the Raspberry Pi 3 running Ubuntu Mate. But only a certain version of Ubuntu Mate is compatible with ROS and Raspberry Pi 3, it is about the Ubuntu MATE for Raspberry Pi 3. This is an OS version released last year and include support for the WiFi and Bluetooth modules integrated into the Pi 3.

Probably the best books to learn ROS

The OS version used by me on Raspberry Pi 3 is Ubuntu MATE 16.04.2.

The ROS version that I have installed is Kinetic Kame. Kinetic was released early last year and is compatible with Ubuntu Mate 16.04. I chose this version for two reasons:

  1. it will be officially supported for the next five years;
  2. it is the most complete version after Indigo;

The first step in installing ROS on Raspberry Pi 3 is called Mate. Ubuntu Mate. The operating system is simple to install. I followed the steps on the download page, and within minutes I managed to have a Pi 3 running Ubuntu Mate.

What you find below are the steps to install ROS Kinetic on the Raspberry Pi 3.

Step 1: Go to System -> Administration -> Software & Updates

Step 2: Check the checkboxes to repositories to allow “restricted,” “universe,” and “multiverse.”

Software and Updates

Software and Updates

Step 3: Setup your sources.list

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' 

Step 4: Setup your keys

wget http://packages.ros.org/ros.key -O - | sudo apt-key add -

Step 5: To be sure that your Ubuntu Mate package index is up to date, type the following command

sudo apt-get update

Step 6: Install ros-kinetic-desktop-full

sudo apt-get install ros-kinetic-desktop-full

Step 7: Initialize rosdep

sudo rosdep init
rosdep update

Step 8: Setting up the ROS environment variables

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

Step 9: Create and initialize the catkin workspace

mkdir -p ~/catkin_workspace/src
cd catkin_workspace/src
catkin_init_workspace
cd ~/catkin_workspace/
catkin_make

Step 10: Add the catkin_workspace to your ROS environment

source ~/catkin_workspace/devel/setup.bash
echo “source ~/catkin_workspace/devel/setup.bash” >> ~/.bashrc

Step 11: Check the ROS environment variables

export | grep ROS
The setup looks like in the picture

The setup looks like in the picture

Check the ROS installation

  1. Open a new terminal and type: roscore
  2. Open a new terminal and type: rosrun turtlesim turtlesim_node
turtlesim

turtlesim

The error that you see in the last picture (libEGL warning: DRI2: failed to authenticate) is generally caused by the graphics memory allocation on the Raspberry Pi being too low.

  • Posted in: ROS

Commerce Content is independent of articles and advertising, and if you buy something through our posts, I may get a small share of the sale.

2 comments » Write a comment

  1. Thank you very much, again, for a 🙂 ‘most excellent’ (: set of ROS/RPi install instructions and, as always, fantastic site. ~ very best2u’n’urs, curtis

Leave a Reply

Required fields are marked *.