Articles Download Safety & Security Forum myUR Go to Main Site

Universal Robots A/S
Energivej 51
DK-5260 Odense S

T: +45 8993 8989
sales@universal-robots.com

 
  • Articles
  • Download
  • Safety & Security
  • Forum
  • myUR
  • Go to Main Site
  • Support
  • Articles
  • Overview of client interfaces

Overview of client interfaces

Overall explanation of client interfaces

Last modified on Nov 18, 2024

UR robot can interact with external devices by different types of communication interfaces.

 

  • Primary/Secondary Interfaces

UR controller provide servers to send robot state data and receive URScript commands. The primary interface transmits robot state data and additional messages. The secondary interface transmits robot state data only. The data is mainly used for communication between GUI and controller. Both accept URScript commands with 10 Hz update rate. It makes possible to control robot remotely without robot program. Information in regards to ports and update, please check this article: Remote Control Via TCP/IP

  • Real-time Interfaces

The functionality of real-time interface is similar with primary/secondary interfaces. The controller transmits the robot state data and receives URScript commands. The main difference is update rate. Information in regards to ports and update, please check this article: Remote Control Via TCP/IP

  • Dashboard Server

A Universal Robot can be controlled from remote by sending simple commands to the GUI over a TCP/IP socket. This interface is called the "Dashboard Server". Main functions of the server are to load, play, pause, and stop a robot program, set user access level, and receive feedback about robot state.

  • Socket Communication

UR robot can communicate with outside equipment through TCP/IP protocol. Data can be transferred via socket communication between robot and other device. In the socket communication, robot acts as client and other device play a role as server. URScript provides commands which open and close sockets, and send and receive different data formats.

  • XML-RPC

XML-RPC is a Remote Procedure Call method that uses XML to transfer data between programs over sockets. With it, the UR controller can call methods/functions (with parameters) on a remote program/server and get back structured data. By using it, a complex calculation which is not available in URScript can be performed. In addition, other software packages can be combined with URScript.

  • RTDE (Real-Time Data Exchange)

RTDE is designed as robust replacement for the real-time interface. This allows UR controller to transmit custom state data and accept custom set-points and register data. Information in regards to ports and update, please check this article: Remote Control Via TCP/IP - 16496

  • ROS/ROS2 Driver

The ROS driver is developed on top of the Universal_Robots_Client_Library and supports key cobot functionalities such as: pause at emergency stop, safeguard stop, automatic speed scaling to avoid violating safety settings, and manual speed scaling from the teach pendant. In addition, the externalControl URCap allows the integration of ROS2 behaviors into the robot program.

The driver is compatible with the entire UR robot lineup, from 3 kg payload to 30 kg payload, and includes all robots from the CB3 series and newer. For more detailed documentation, consult the GitHub repository.

Interface Type

Link

 

Primary/Secondary Interfaces

 Remote Control Via TCP/IP

Real-time Interface

 Remote Control Via TCP/IP

Dashboard Server

 Dashboard Server e-Series, port 29999

 Dashboard Server CB-Series, port 29999

Socket Communication

 Ethernet socket communication via URScript

XML-RPC

 XML-RPC communication

Real-Time Data Exchange (RTDE)

 Real-Time Data Exchange (RTDE) Guide

ROS/ROS2 Driver

 ROS/ROS2 Driver

 

Good Practice

If you try connecting to a port which is already being used, it would cause a conflict and communication failure. It is recommended to use other ports than occupied ports and frequently used ports to avoid conflicts. 

Ports used in UR robots include the followings.

Port Number Interface
80 Reserved by UR
502 Modbus TCP
2222 Ethernet/IP
7827 Internally used
7828 Internally used
8080 Not recommended since many old URCaps default to this port
29919 Internally used
29998 Internally used
29999 Dashboard server
30001 Primary
30002 Secondary
30003 Real-time
30004 RTDE
30011 Primary read only
30012 Secondary read only
30013 Real-time read only
30020 Interpreter mode
34964 Profinet
40000 Ethernet/IP
40002 Profinet
44818 Ethernet/IP
49152 Profinet
50003 Internally used (e-Series only)
50004 Internally used (e-Series only)
50005 Internally used (e-Series only)
50006 Internally used (e-Series only)

 

An overview of local host usage(include 3rd party contributors) is available here: https://forum.universal-robots.com/t/overview-of-used-ports-on-local-host/8889  

logo

Product

  • UR3e Robot
  • UR5e Robot
  • UR10e Robot
  • UR16e Robot
  • UR20 Robot
  • UR+ Products

Company

  • About us
  • Contact us
  • Careers We're hiring
  • UR merchandise

Training / Resources

  • Academy
  • Technical Resources
  • Articles
  • FAQ

Insights

  • Blog
  • Case stories
  • Content library
  • News centre
  • Podcast
  • Webinars & Events

Get in touch

  • Ask an Expert
  • Schedule a no-cost assessment
  • Find a distributor
  • Customer support

Connect with us

  • LinkedIn
  • Facebook
  • Twitter
  • YouTube
  • Instagram
  • Universal Robots A/S
  • Energivej 51
  • DK-5260 Odense S
  • T: +45 89 93 89 89
  • sales@universal-robots.com
  • US Corporate Office
  • 27-43 Wormwood St.
  • 02210 Boston, MA.
  • +1-844-GO-COBOT
  • ur.na@universal-robots.com
  • Copyright @ Universal Robots 2025
  • Cookie policy
  • Privacy policy
  • Universal Robots A/S
  • Energivej 51
  • DK-5260 Odense S
  • T: +45 89 93 89 89
  • sales@universal-robots.com
  • US Corporate Office
  • 27-43 Wormwood St.
  • 02210 Boston, MA.
  • +1-844-GO-COBOT
  • ur.na@universal-robots.com

Copyright © Universal Robots 2025

Cookie policy
Privacy policy