A framework for creating and modifying software components for robotics.

RoboComp is an open-source Robotics framework providing the tools to create and modify software components that communicate through public interfaces. Components may require, subscribe, implement or publish interfaces in a seamless way. Building new components is done using two domain specific languages, IDSL and CDSL. With IDSL you define an interface and with CDSL you specify how the component will communicate with the world. With this information, a code generator creates C++ and/or Python sources, based on CMake, that compile and execute flawlessly. When some of these features have to be changed, the component can be easily regenerated and all the user specific code is preserved thanks to a simple inheritance mechanism. More cutting-edge software engineering technologies are being included in RoboComp to simplify the life-cycle of robotics components and to facility the deployment of very large networks of components that more a more start to resemble a "biological" computational device.

lightbulb_outline View ideas list


  • c++
  • python
  • zeroc ice
  • cmake
  • gnu/linux


  • robotics
  • framework
  • computer vision
comment IRC Channel
email Mailing list
mail_outline Contact email

Robocomp 2016 Projects

  • Basil
    A new graphical tool for deploying components
    Two main reason for this to be an important idea. (1) Sometimes we will have to work with component networks which contains hundreds ...
  • ibarbech
    Automatic code generation for State Machines
    When you run robocompdsl in addition to create the file example .cdsl, will create an example file where state machine will be defined. When you run...
  • dgallegos
    Qt5 and ROS support
    The project is about implementing a Qt5 and ROS support in RoboComp’s DSL
  • Harit
    RoboComp: Object detection for simulated environments
    Object detection and recognition are central problems in computer vision literature and essential for a vision based library. Recent advances in...
  • Yash Sanap
    Writing a name and port service for running components
    This Project deals with writing a new component in RoboComp that will provide a naming and port service. When starting, components will now contact...