Do NOT install the version of ROS supplied with your operating system (such as Ubuntu). This is not up to date and will not work with MiRo.
Please follow the instructions below.


The Robot Operating System (ROS) is a communications layer (amongst other things) that is popular in robotics R&D. MiRo exposes its interface to the network as a ROS node, so you will need to install ROS on your workstation in order to use either the robot or the simulator.

These instructions are for installing on Ubuntu 16.04. See below for the slight variations required if you are using a variant (such as Linux Mint).

Ubuntu 16.04

This section is based on the Ubuntu install of ROS Kinetic from

1) First, install the package source.

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

2) Next, add the security keys.

$ sudo apt-key adv --keyserver 'hkp://' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

3) Update your local package information.

$ sudo apt-get update

4) Finally, install ROS.

$ sudo apt install ros-kinetic-ros-base ros-kinetic-cv-bridge \ ros-kinetic-tf2-ros ros-kinetic-image-transport-plugins \ ros-kinetic-tf ros-kinetic-camera-info-manager

OPTIONAL) If you wish, you can broaden out your ROS installation to include the graphical tools. This is not necessary for working with MiRo, but is shown below.

$ sudo apt install ros-kinetic-ros-desktop

Mint 18

The Ubuntu installation steps work also for Mint 18, but the command $(lsb_release -cs), used above, does not. Replace the token with Ubuntu's release name 'xenial' in step (1), as follows, then proceed from step (2) as for Ubuntu.

$ sudo sh -c 'echo "deb xenial main" > /etc/apt/sources.list.d/ros-latest.list'
We officially support Ubuntu 16.04 LTS (Xenial) with ROS Kinetic only.
We are preparing to offer support also for ROS Noetic on Ubuntu 20.04 LTS.


You should now be able to run the ROS core as follows.

$ roscore ... Checking log directory for disk usage. This may take awhile. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB. started roslaunch server ros_comm version 1.12.2 SUMMARY ======== PARAMETERS * /rosdistro: kinetic * /rosversion: 1.12.2 NODES auto-starting new master process[master]: started with pid [21504] ROS_MASTER_URI= setting /run_id to a617fb4a-85d4-11e6-885b-74d02bce982a process[rosout-1]: started with pid [21517] started core service [/rosout]