Universal Robots Forum

Possibilities of a URCaps plugin


URCaps make it possible to seamlessly extend any Universal Robot with customized functionality. The URCap Software Platform enables the tight integration of 3rd party software solutions with the ‘UR workflow’. The platform is introduced with UR Software version 3.3.

Using the URCap Software Platform, a URCap developer can define customized installation screens and program nodes for the end user. These can, for example, encapsulate new complex robot programming concepts, or provide friendly hardware configuration interfaces and easy programming integration for devices such as vision cameras, Force/Torque sensors and grippers.

After a URCap has been installed through the Setup screen in PolyScope, these external contributions to PolyScope are automatically loaded when PolyScope starts up.


  • PolyScope program node contribution: Create a programming element with graphical user interface (GUI), that can be used and selected like any other ‘Structure tab’ command.
  • PolyScope Installation tab node contribution: Provide settings (e.g. for specific hardware) through a graphical user interface (GUI), that are saved within the Installation and shared between programs.
  • Design GUIs for installation and program node contributions using a subset of HTML and CSS. Review the resulting layout in any web browser.
  • Implement installation and program node contributions using Java, including behavior and data persistence.
  • Operating system daemon executable contribution can provide for instance a device driver to interface with hardware. The daemon executable can be any script (e.g. python) or binary file (e.g. written in C/C++) that can be directly executed in the Linux shell on the control box. The daemon process could communicate with an installation or program node contribution in PolyScope.
  • Real-Time Data Exchange (RTDE) interface: Synchronize external executables/applications with the UR controller over a standard TCP/IP connection without breaking any real-time properties. An alternative to the real-time client interface on port 30003. Can be used for control-loops and monitoring software. See RTDE guide for detailed information.
  • External Force/Torque sensors can feed their measurements (directly) into UR’s force control-loops (Force mode) thereby increasing the sensitivity and precision of Force mode.
  • XML-RPC: Use Remote Procedure Calls as an alternative to sockets to easily communicate with for instance an external daemon executable. XML-RPC support is part of URScript and is described the Script manual and in this example.

Getting started

URCap tutorial

The URCap tutorial serves as a basic introduction to the features of the URCap Software Platform. The tutorial includes two URCaps, the Hello World and the My Daemon URCaps, as running examples. These are small URCaps that are meant to demonstrate the main features of the URCap Software Platform.

The URCap tutorial is part of the URCap SDK.


On this page, it is possible to download the URCap SDK. The URCap SDK contains everything a URCap developer needs to quickly get started developing his own URCaps.

The SDK includes the following:

  • A Java package defining the API that the developer will program against
  • C/C++ cross-compiler
  • Documentation
  • Sample URCap projects
  • Easy building and deployment using Maven
  • Means of easily creating a new empty template URCap project. This project can easily be imported into an IDE for Java, e.g. Eclipse, Netbeans or IntelliJ.