The installation process required for the UXA-90 Humanoid robot ROS software based on NimbRo ROS Soccer Package. For more information please visit


  • Ubuntu 14.04 LTS (anything else and you are on your own)
  • Suggested kernel: Xenial Xerus
sudo apt-get install linux-generic-lts-xenial
  • ROS Indigo
sudo apt-key adv --keyserver hkp:// --recv-key 0xB01FA116
sudo apt-get update
sudo apt-get install ros-indigo-desktop-full
sudo rosdep init
rosdep update
sudo apt-get install ros-indigo-rqt-rviz
sudo apt-get install ros-indigo-joy
  • The QGLViewer library
sudo apt-get install libqglviewer-dev
  • GNU Scientific Library (GSL)
sudo apt-get install libgsl0-dev
  • The G2O library
sudo apt-get install ros-indigo-libg2o
  • Controllers for Gazebo
sudo apt-get install ros-indigo-gazebo-ros-control
sudo apt-get install ros-indigo-ros-controllers
sudo apt-get install ros-indigo-controller-manager
sudo apt-get install ros-indigo-rqt-controller-manager
  • Vision packages
sudo apt-get install v4l-utils v4l2ucp v4l-conf
sudo add-apt-repository ppa:pj-assis/ppa
sudo apt-get update
sudo apt-get install guvcview
  • Python dependencies
sudo apt-get install sshpass
sudo apt-get install python-pip python-dev build-essential
sudo pip install --upgrade pip
sudo pip install --upgrade virtualenv
sudo pip install --upgrade --no-deps --force-reinstall pexpect
sudo pip install termcolor
  • The ncurses Library
sudo apt-get install libncurses5-dev
  • The x264 Library
sudo apt-get install libx264-dev
  • GCC ARM Compiler
sudo apt-get install gcc-arm-none-eabi
  • Doxygen Documentation System
sudo apt-get install doxygen
  • Utilities (optional, choose relevant ones)
sudo apt-get install curl tshark ssh screen
sudo apt-get install git git-gui gitk qgit
sudo apt-get install joe vim nano kwrite kdiff3 colordiff kompare
sudo apt-get install gdb valgrind tree htop


  • Clone my repository
git clone ~/NimbRo-OP
  • Place the following into your .bashrc
source /opt/ros/indigo/setup.bash
source ~/NimbRo-OP/src/nimbro/scripts/ # Or alternate path
export NIMBRO_ROBOT_VARIANT=igus_op_hull

System setup

The robotcontrol node needs realtime permissions to run reliably. Create a file etc/security/limits.d/nimbro.conf with contents (replace USER with your username)

* hard rtprio 0
* soft rtprio 0
USER hard rtprio 20
USER soft rtprio 20

You will need to log out and in again to load the security settings. Alternatively, you can use the following to emulate the login:

sudo -i -u user

If you want to set up udev rules for devices you want to use, then refer to


For installation and deployment of the required files to the robots, a special installation folder is required:

sudo mkdir -p /nimbro
sudo chown $USER /nimbro

A logging and backup directory is also required

sudo mkdir -p /var/log/nimbro
sudo chmod 777 /var/log/nimbro

For everything to work properly you may also need to modify the first two lines of your /etc/hosts to something like this, where mycomp is the name of your computer: localhost mycomp mycomp.local

Build model

The nimbro utility (present once the script is sourced, e.g. in your .bashrc) can help you in your daily work. Type nimbro help for usage information. The command source is, as mentioned, in the script. Start by compiling the source code using the following command:

nimbro make

Launch model

roslaunch nimbro_op_gazebo nimbro_op.launch         # starts gazebo, creates the world and spawns the robot.
roslaunch launch gazebo_robot_standing_cap.launch   # starts the robotcontrol node and connects to the virtual robot.

If you get this issue in the terminal:

Warning [] Waited 1seconds for namespaces.
Warning [] Waited 1seconds for namespaces.
Warning [] Waited 1seconds for namespaces.
Warning [] Waited 1seconds for namespaces.
Warning [] Waited 1seconds for namespaces.
Error [] Waited 11 seconds for namespaces. Giving up.
Error [] No namespace found
Error [] No namespace found
Error [] No namespace found
Error [] No namespace found
Error [] No namespace found
Error [] No namespace found
Error [] No namespace found

Please press Ctrl+C to break and try to fix:

mkdir ~/.gazebo/models
  • Edit /usr/share/gazebo-2.2/
sudo gedit /usr/share/gazebo-2.2/

then change to

  • Edit /usr/share/gazebo/
sudo gedit /usr/share/gazebo/

then change to
Close all terminal and launch again

Install develop IDE

sudo apt-get install kdevelop