Universal Robots+

Universal Robots launches ROS driver

Hi ROS enthusiasts and UR+ community,

We are delighted to announce, that we have launched a Universal Robots backed ROS driver!

Robot Operating System (ROS) is widely used within the industrial research and educational field, for exploring robot technology, or for developing advanced systems. Since the beginning of UR, clever minds in the research field have developed 3rd party drivers, enabling the ROS community to communicate with UR robots for various purposes. Impressively, more than 200 different forks of UR-compatible drivers filled up the ROS landscape. However UR has never supported nor developed any of these drivers. Until now!

With so many community developed ROS-drivers in the landscape, it became difficult to find out which fork had the latest features, supported the right version of your UR software, or utilized the UR functionality in the best way. To mitigate these issues, and ensure that a solid driver utilizing all the best feats of the UR was available, we partnered with the German research institute FZI to cooperate on the development of an ROS driver that is backed by UR to ensure its stability and robustness.


The new ROS driver provides a number of key benefits:

  • Ease of use
    For ROS users, the driver provides an easy and plug’n’play use of UR robots.
  • Performance
    The ROS driver utilizes all the key features of the UR robot to achieve state of the art performance.
    It provides an industrial grade interface to the best extent allowed by current ROS practice.
    The driver includes the specific robot’s factory calibration data for improved accuracy.
  • Stability
    The driver is built on stable and versioned API’s, and is integrated into UR’s continuous testing engine for assured quality.
  • Community
    The driver will remain open-source and rely on future community contributions.

The ROS driver is provided through UR’s GitHub account, which allows for open collaboration within the ROS community.
There are two modes of operation for the driver:

  1. Remote Control
    Target Audience: easy programming research, embedding in OEM systems.
    In this mode, the driver works like classic ROS drivers, assuming full remote control of the robot without interaction on the teach pendant.
  2. ROS usage in URCap
    Target Audience: Developers of vision systems, force/torque control, picking algorithms or similar products, which integrate with ROS.
    In this mode, a sample URCap enables ROS control only where it is needed in the UR program. In this way it enables easier integration with ROS compatible devices into UR applications. It further enables commercialization of cutting edge technologies based on ROS.

Get started

Go check out the new ROS driver today;

Furthermore, you can check out the two accompanying URCap implementations;

Support and issues

If you encounter issues or bugs using the ROS driver, please use the Issue-reporting system for the respective GitHub repository.
Should you have questions to using the ROS driver, or general support requests, please use the ROS category in this forum.
You can choose to mention @ROSSupport

Happy development,

Your Universal Robots team :robot::computer:


Will this be the official replacement of the ur_modern_driver?

It is our recommendation to use this new driver, since this will be covered by our continuous integration testing, to ensure compatibility towards newer software versions.

ur_modern_driver was just recently officially depreciated.

Refer to the announcement on ROS Discourse for more information.