Robots Atlas>ROBOTS ATLAS
Universal Robots URCap SDK

Development · SDKs

Universal Robots URCap SDK

PolyScope X 10.7·Universal Robots A/S

Active Real-time capable API available
CATEGORYDevelopment · SDKs
READINESSTRL 9
ADOPTION SCALEProduction – Broad Deployment
LICENSESLicenseRef-Proprietary
FIRST RELEASE2015

Universal Robots URCap is the official extension model for all UR cobots — UR3, UR5, UR10, UR16 (CB-Series since 2008, e-Series since 2018) plus UR20/UR30 (2023, Series e). A URCap is a `.urcap` file (effectively a JAR + bundled HTML/JS), installed on the PolyScope teach pendant (Linux on ARM); it extends the UI with new Program Nodes (tiles in the program tree, e.g. 'Pick & Place from Conveyor'), Installation Nodes (hardware configuration), Toolbars, and Daemons (background services).

Tech stack: **PolyScope 5.x** (CB/e-Series) is based on OpenJDK 8 + Eclipse RCP — URCaps are written in Java 8 (Swing for UI). **PolyScope X** (2024+, the new generation on UR20/UR30) is built on Linux + web tech — URCaps are HTML/CSS/TypeScript Single Page Apps. Both targets can be addressed from a single URCap via the `cross-platform` SDK. Regardless of the UI, a URCap injects **URScript** (the robot's procedural language, syntax similar to Python) into the generated PolyScope program.

Wire protocols for communicating with external systems:

**RTDE (Real-Time Data Exchange)** — TCP port 30004, 125 Hz update rate (every 8 ms), allows telemetry to be received (joint positions, TCP pose, forces) and setpoints to be sent. **Dashboard Server** (port 29999) — load, play, stop, status commands — used for orchestration. **Primary Interface** (30001) and **Secondary Interface** (30002) — legacy URScript streaming. **XML-RPC** (port 30003, e-Series only) — an alternative to RTDE.

ROS support: the official `Universal_Robots_ROS2_Driver` (since 2022, maintained by UR + PickNik Robotics) uses RTDE under the hood and exposes `joint_trajectory_controller` plus `cartesian_compliance_controller`. The earlier `ur_modern_driver` for ROS 1 was community-maintained.

Type & Roles
Software types
Robot manufacturer SDK
SDK

An SDK (Software Development Kit) is a curated set of libraries, interfaces, tools, sample code, and documentation intended for building applications and integrating with a specific hardware device, platform, or service. In robotics, an SDK typically exposes device control, telemetry, sensor access, configuration, and execution functions, significantly reducing the time-to-first-integration for developers targeting a specific robot or platform.

API Library

An API Library is a software package that exposes programmatic interfaces for communicating with a device, service, or system. In robotics it typically forms a lightweight integration layer built on top of the manufacturer's official API or an open-source project, abstracting low-level protocol details and providing language-native bindings (Python, C++, Java, etc.).

Developer Tool

A Developer Tool is software designed to support the development workflow, including configuration, debugging, testing, monitoring, validation, and integration of robotic and embedded systems. Examples include IDE plugins, visual debuggers, log analysers, hardware-in-the-loop (HIL) test harnesses, and code-generation utilities specific to robotics platforms.

Select an item to see its description.
Main category
SDKsDrivers & FirmwareControl & PlanningDeveloper Tools
Roles in robotics ecosystem
Robot ControlDevice IntegrationAPI AccessMotion PlanningDeveloper EnablementVisualization
Software family
Family

A family of official SDKs and APIs provided by robot manufacturers: Boston Dynamics (Spot SDK), ABB (RobotStudio), KUKA (RSI / KUKA Sunrise), Universal Robots (URCap / RTDE), Agility Robotics (Digit SDK), Apptronik (Apollo SDK).

Maturity & Adoption
9 / 9
Proven in operational conditions
ResearchPrototypeProduction
Adoption scaleProduction – Broad Deployment
Maintenance statusActively Maintained – LTS
First release2015
Last update20 May 2026
Deployments

Over 75,000 UR cobots sold by 2024; the UR Marketplace has ~300 public URCaps and ~150 certified partners. Deployments: BMW (door assembly with UR10), Volkswagen (headlight bonding with UR5), Mercedes-Benz (UR5e with Robotiq gripper in quality testing), Continental (packing with UR10e), Nissan (transmission assembly with UR10), Foxconn (electronics testing with UR3), Ford (pre-assembly with UR10). Collaborative applications in e-commerce (Amazon, DHL) and medical device assembly (Boston Scientific).

Community

The UR+ ecosystem (ur-plus.com) with ~300 URCaps and ~750 certified HW components (grippers, sensors). github.com/UniversalRobots/Universal_Robots_ROS2_Driver ~890★. The forum.universal-robots.com has ~30k registered developers. UR Academy with free online courses (~200k graduates).

Target robotic platforms
Industrial Robot
Robotic Arm
Service Robot
ROS supportCompatibility with ROS / ROS 2 ecosystem
Official Vendor ROS 2 WrapperOficjalny wrapper ROS 2 tworzony i utrzymywany przez producenta sprzętu lub oprogramowania
Official Vendor ROS 1 WrapperOficjalny wrapper ROS 1 tworzony i utrzymywany przez producenta sprzętu
Community ROS 2 WrapperWrapper ROS 2 tworzony i utrzymywany przez społeczność, nie przez producenta
System capabilities
Open source
Source code is publicly available under an open-source license — enables security audits, custom modifications, and integration without licensing barriers.
×
Real-time capable
Designed with timing-determinism guarantees — meets the requirements of control loops, safety systems, and tasks demanding low, predictable latency.
⟨/⟩
API available
The software exposes a programmable interface (REST, gRPC, SDK, or language bindings) that enables automation and integration with other systems.
📦
Pre-built / binary
Distributed as ready-to-use binary packages, container images, or installers — no need to build from source.
Programming languages
PythonC++JavaScript
Operating systems
Ubuntu 22.04Ubuntu 20.04DebianWindowsmacOS
Minimum hardware requirements
Minimum hardware requirements
CPUUR controller (Intel Atom for CB3, Intel x86-64 for e-Series, ARM Cortex-A53 for UR20/30 PolyScope X). Dev workstation: dual-core x86-64 ≥ 2.4 GHz.
RAM (GB)4
GPUNot required for URCap development. Simulating PolyScope in a VM (URSim) works on integrated graphics.
Disk (GB)5

OpenJDK 8 for PolyScope 5.x URCaps. Node.js + TypeScript for PolyScope X URCaps. URSim (the official simulator VM) is free. The URCap SDK is free, but URCap digital signing via the UR Marketplace requires partner registration (free of charge).

Packaging & distribution
Package managers
Prebuilt Binary (direct download)GitHub Releases / GitHub Actions Artifacts
CPU architectures
x86_64 (AMD64)ARM64 / AArch64
Installation difficulty
LevelModerate
Protocols and interfaces
Communication protocols
Ethernet / TCP-IPREST API (HTTP/HTTPS)RTDE (Real-Time Data Exchange)Modbus TCP/RTUPROFINETEtherCAT
Hardware interfaces
Ethernet 1000BASE-T (Gigabit Ethernet)Ethernet 100BASE-TX (Fast Ethernet)USB 2.0USB 3.0 / 3.1 Gen 1
Latency classes
Soft Real-Time (20–100 ms)Deterministic (protocol-dependent)Soft Real-Time (100–500 ms)
Deployment types
On RobotLocal WorkstationEdgeHybrid
Supported simulators
Gazebo Harmonic
NVIDIA Isaac Sim
Official Docker images
ros:humble-desktop
Licenses
LicenseRef-ProprietaryProprietary – All Rights Reserved

License family: Proprietary – Commercial

Version history
PolyScope X 10.7Nov 2024

Full cross-platform URCap support (one codebase for 5.x + X), AI Accelerator integration (NVIDIA Jetson on the UR pendant).

PolyScope X + UR20/UR30Apr 2023

A new PolyScope generation (web-based UI), URCaps as HTML/TS SPAs, launch of UR20/UR30.

Universal_Robots_ROS2_Driver 1.0Sept 2022

Official ROS 2 driver co-developed with PickNik Robotics — ros2_control + RTDE.

e-Series + PolyScope 5.0Jun 2018

New e-Series controller, built-in force/torque sensor, URCap SDK with the new Cartesian API.

RTDE wprowadzonyMar 2017

Real-Time Data Exchange (port 30004) as the official wire protocol for external control.

URCap SDK 1.0 (PolyScope 3.1, CB3)Jun 2015

Introduction of URCap — the Java plug-in model in PolyScope 3 on CB3.

PolyScope 1.x (CB1/CB2)Dec 2008

First release alongside the UR5 robot. No URCap yet — only URScript over TCP.