NICO originally was based on the NimbRo-OP from the AIS Group in Bonn. Due to continuous adaptations of the head and upper body, the current version of NICO consists of a completely redesigned torso, head, and arms. The NICO torso can be assembled using the instructions and resources below. For a legged version, the original NimbRo-OP legs can be assembled, following the instructions from the University of Bonn.
If you use the NICO robot, the software API, the NICO CAD files, or any parts of each, please cite the following paper:
Matthias Kerzel, Erik Strahl, Sven Magg, Nicolás Navarro-Guerrero, Stefan Heinrich, Stefan Wermter. NICO – Neuro-Inspired COmpanion: A Developmental Humanoid Robot Platform for Multimodal Interaction. Proceedings of the IEEE International Symposium on Robot and Human Interactive Communication (RO-MAN). pages 113 - 120. Lisbon, Portugal. 2017.
Here is a video showing the assembly of our NICO torso:
3D CAD files for printing
The head, all connectors for the arms, spacers, and the front plate can be 3D printed. All necessary STL and AutoDesk Inventor files can be found in our GitHub repository:
The software needed to control the NICO robot is based on PyPot and other Python libraries and offers
To install the software, please follow the steps below:
1. Cloning repository
The first step is to clone the repository. You can achieve this by using the following command:
2. Setup API
The setup of the API is automatically done via a setup script which installs all necessary libraries and builds the API with all interfaces. For the setup to succeed, make sure you have ROS installed (catkin_make is started by the installer) and that the ROS environment variables are correctly set (i.e. by "source /opt/
Start the setup script with:
If you need additional python libraries in conjunction with the API, include them in the setup script by adding the corresponding "pip install" commands to it or contact the current API maintainer to do so.
The API and the script have been tested on the following system and software versions:
|Python||2.7||Should be compatible with Python3|
Dependencies will be updated and the API tested on the new version at the beginning of each semester. We will update the table with each successful install. If you have successfully installed the API on a version not listed, please let us( strahl"AT"informatik.uni-hamburg.de) know!
3. Build Documentation
We use Sphinx to build the documentation. Install Sphinx, either from a distribution package or from PyPI with
$ pip install Sphinx
To build the API documentation change to the "
$ make <target>
The resulting documentation can be found at the
Example: For a stand-alone HTML documentation, run
The resulting documentation can be found _build/html/.