Realtime Client Interface

The information contained herein is the property of Universal Robots A/S and shall not be reproduced in whole or in part without prior written approval of Universal Robots A/S. The information herein is subject to change without notice and should not be construed as a commitment by Universal Robots A/S. This document is periodically reviewed and revised.

Universal Robots A/S assumes no responsibility for any errors or omissions in this document.

Copyright © 2009–2026 by Universal Robots A/S.

Contents


Introduction

The Realtime communications Interface

(The RealTime interface has been deprecated since version 3.5. It is recommended to use the RTDE Interface, instead)

The information in this section applies to UR software versions shown below:

  • Realtime client = port 30003

  • Realtime client read-only = port 30013

The realtime communications interface is also known as the Matlab interface.

e-Series (500 Hz):

RealTime 5.9

(The RealTime interface has been deprecated since version 3.5. It is recommended to use the RTDE Interface, instead)

Meaning

Type

Number of values

Size in bytes

Gnuplot col.

Notes

Message Size

integer

1

4

Total message length in bytes

Time

double

1

8

1

Time elapsed since the controller was started

q target

double

6

48

2 - 7

Target joint positions

qd target

double

6

48

8 - 13

Target joint velocities

qdd target

double

6

48

14 - 19

Target joint accelerations

I target

double

6

48

20 - 25

Target joint currents

M target

double

6

48

26 - 31

Target joint moments (torques)

q actual

double

6

48

32 - 37

Actual joint positions

qd actual

double

6

48

38 - 43

Actual joint velocities

I actual

double

6

48

44 - 49

Actual joint currents

I control

double

6

48

50 - 55

Joint control currents

Tool vector actual

double

6

48

56 - 61

Actual Cartesian coordinates of the tool: (x,y,z,rx,ry,rz), rotation vector

TCP speed actual

double

6

48

62 - 67

Actual speed of the tool given in Cartesian coordinates

TCP force

double

6

48

68 - 73

Generalized forces in the TCP

Tool vector target

double

6

48

74 - 79

Target Cartesian coordinates of the tool: (x,y,z,rx,ry,rz), rotation vector

TCP speed target

double

6

48

80 - 85

Target speed of the tool given in Cartesian coordinates

Digital input bits

double

1

8

86

Current state of the digital inputs (bits encoded as int64_t)

Motor temperatures

double

6

48

87 - 92

Temperature of each joint in degrees Celsius

Controller Timer

double

1

8

93

Controller real-time thread execution time

Test value

double

1

8

94

A value used by Universal Robots software only

Robot Mode

double

1

8

95

Robot mode

Joint Modes

double

6

48

96 - 101

Joint control modes

Safety Mode

double

1

8

102

Safety mode

Tool Accelerometer

double

3

24

109 - 111

Tool x,y, and z accelerometer values (software version 1.7)

Speed scaling

double

1

8

118

Speed scaling of the trajectory limiter

Linear momentum norm

double

1

8

119

Norm of Cartesian linear momentum

V main

double

1

8

122

Masterboard: Main voltage

V robot

double

1

8

123

Masterboard: Robot voltage (48V)

I robot

double

1

8

124

Masterboard: Robot current

V actual

double

6

48

125 - 130

Actual joint voltages

Digital outputs

double

1

8

131

Digital outputs

Program state

double

1

8

132

Program state

Elbow position

double

3

24

133 - 135

Elbow position

Elbow velocity

double

3

24

136 - 138

Elbow velocity

Safety Status

double

1

8

139

Safety status

Payload Mass

double

1

8

143

Payload Mass [kg]

Payload CoG

double

3

24

144 - 146

Payload Center of Gravity (x, y, z) [m]

Payload Inertia

double

6

48

147 - 152

Payload Inertia (Ixx, Iyy, Izz, Ixy, Ixz, Iyz) [kg*m^2]

TOTAL

153

1220

If fewer than 1220 bytes are received, the protocol follows the structure listed above but only includes the entries up to the received byte count.

RealTime 5.10

(The RealTime interface has been deprecated since version 3.5. It is recommended to use the RTDE Interface, instead)

Meaning

Type

Number of values

Size in bytes

Gnuplot col.

Notes

Message Size

integer

1

4

Total message length in bytes

Time

double

1

8

1

Time elapsed since the controller was started

q target

double

6

48

2 - 7

Target joint positions

qd target

double

6

48

8 - 13

Target joint velocities

qdd target

double

6

48

14 - 19

Target joint accelerations

I target

double

6

48

20 - 25

Target joint currents

M target

double

6

48

26 - 31

Target joint moments (torques)

q actual

double

6

48

32 - 37

Actual joint positions

qd actual

double

6

48

38 - 43

Actual joint velocities

I actual

double

6

48

44 - 49

Actual joint currents

I control

double

6

48

50 - 55

Joint control currents

Tool vector actual

double

6

48

56 - 61

Actual Cartesian coordinates of the tool: (x,y,z,rx,ry,rz), rotation vector

TCP speed actual

double

6

48

62 - 67

Actual speed of the tool given in Cartesian coordinates

TCP force

double

6

48

68 - 73

Generalized forces in the TCP

Tool vector target

double

6

48

74 - 79

Target Cartesian coordinates of the tool: (x,y,z,rx,ry,rz), rotation vector

TCP speed target

double

6

48

80 - 85

Target speed of the tool given in Cartesian coordinates

Digital input bits

double

1

8

86

Current state of the digital inputs (bits encoded as int64_t)

Motor temperatures

double

6

48

87 - 92

Temperature of each joint in degrees Celsius

Controller Timer

double

1

8

93

Controller real-time thread execution time

Test value

double

1

8

94

A value used by Universal Robots software only

Robot Mode

double

1

8

95

Robot mode

Joint Modes

double

6

48

96 - 101

Joint control modes

Safety Mode

double

1

8

102

Safety mode

Tool Accelerometer

double

3

24

109 - 111

Tool x,y, and z accelerometer values (software version 1.7)

Speed scaling

double

1

8

118

Speed scaling of the trajectory limiter

Linear momentum norm

double

1

8

119

Norm of Cartesian linear momentum

V main

double

1

8

122

Masterboard: Main voltage

V robot

double

1

8

123

Masterboard: Robot voltage (48V)

I robot

double

1

8

124

Masterboard: Robot current

V actual

double

6

48

125 - 130

Actual joint voltages

Digital outputs

double

1

8

131

Digital outputs

Program state

double

1

8

132

Program state

Elbow position

double

3

24

133 - 135

Elbow position

Elbow velocity

double

3

24

136 - 138

Elbow velocity

Safety Status

double

1

8

139

Safety status

Payload Mass

double

1

8

143

Payload Mass [kg]

Payload CoG

double

3

24

144 - 146

Payload Center of Gravity (x, y, z) [m]

Payload Inertia

double

6

48

147 - 152

Payload Inertia (Ixx, Iyy, Izz, Ixy, Ixz, Iyz) [kg*m^2]

TOTAL

153

1220

If fewer than 1220 bytes are received, the protocol follows the structure listed above but only includes the entries up to the received byte count.

RealTime 5.26

(The RealTime interface has been deprecated since version 3.5. It is recommended to use the RTDE Interface, instead)

Meaning

Type

Number of values

Size in bytes

Gnuplot col.

Notes

Message Size

integer

1

4

Total message length in bytes

Time

double

1

8

1

Time elapsed since the controller was started

q target

double

6

48

2 - 7

Target joint positions

qd target

double

6

48

8 - 13

Target joint velocities

qdd target

double

6

48

14 - 19

Target joint accelerations

I target

double

6

48

20 - 25

Target joint currents

M target

double

6

48

26 - 31

Target joint moments (torques)

q actual

double

6

48

32 - 37

Actual joint positions

qd actual

double

6

48

38 - 43

Actual joint velocities

I actual

double

6

48

44 - 49

Actual joint currents

I control

double

6

48

50 - 55

Joint control currents

Tool vector actual

double

6

48

56 - 61

Actual Cartesian coordinates of the tool: (x,y,z,rx,ry,rz), rotation vector

TCP speed actual

double

6

48

62 - 67

Actual speed of the tool given in Cartesian coordinates

TCP force

double

6

48

68 - 73

Generalized forces in the TCP

Tool vector target

double

6

48

74 - 79

Target Cartesian coordinates of the tool: (x,y,z,rx,ry,rz), rotation vector

TCP speed target

double

6

48

80 - 85

Target speed of the tool given in Cartesian coordinates

Digital input bits

double

1

8

86

Current state of the digital inputs (bits encoded as int64_t)

Motor temperatures

double

6

48

87 - 92

Temperature of each joint in degrees Celsius

Controller Timer

double

1

8

93

Controller real-time thread execution time

Test value

double

1

8

94

A value used by Universal Robots software only

Robot Mode

double

1

8

95

Robot mode

Joint Modes

double

6

48

96 - 101

Joint control modes

Safety Mode

double

1

8

102

Safety mode

Reserved

double

6

48

103 - 108

Values used by Universal Robots software only

Tool Accelerometer

double

3

24

109 - 111

Tool x,y, and z accelerometer values (software version 1.7)

Reserved

double

6

48

112 - 117

Values used by Universal Robots software only

Speed scaling

double

1

8

118

Speed scaling of the trajectory limiter

Linear momentum norm

double

1

8

119

Norm of Cartesian linear momentum

Reserved

double

1

8

120

A value used by Universal Robots software only

Reserved

double

1

8

121

A value used by Universal Robots software only

V main

double

1

8

122

Masterboard: Main voltage

V robot

double

1

8

123

Masterboard: Robot voltage (48V)

I robot

double

1

8

124

Masterboard: Robot current

V actual

double

6

48

125 - 130

Actual joint voltages

Digital outputs

double

1

8

131

Digital outputs

Program state

double

1

8

132

Program state

Elbow position

double

3

24

133 - 135

Elbow position

Elbow velocity

double

3

24

136 - 138

Elbow velocity

Safety Status

double

1

8

139

Safety status

Reserved

double

1

8

140

A value used by Universal Robots software only

Reserved

double

1

8

141

A value used by Universal Robots software only

Reserved

double

1

8

142

A value used by Universal Robots software only

Script control line

double

1

8

143

Script line number that is actually in control of the robot given the robot is locked by one of the threads in the script. If no thread is locking the robot this field is set to ‘0’.
Script line number should not be confused with program tree line number displayed on PolyScope

Payload Mass

double

1

8

144

Payload Mass [kg]

Payload CoG

double

3

24

145 - 147

Payload Center of Gravity (x, y, z) [m]

Payload Inertia

double

6

48

148 - 153

Payload Inertia (Ixx, Iyy, Izz, Ixy, Ixz, Iyz) [kg*m^2]

Joint position deviation ratio

double

1

8

154

A C153 or C159 protective stop is triggered if the value is ever equal to or exceeds 1.0

Collision detection ratio

double

1

8

155

A C157 or C158 protective stop is triggered if the value is ever equal to or exceeds 1.0

Time scale source

double

1

8

156

Time Scale Source

Reserved

double

1

8

157

A value used by Universal Robots software only

Reserved

double

1

8

158

A value used by Universal Robots software only

Reserved

double

1

8

159

A value used by Universal Robots software only

Target gravity

double

3

24

160 - 162

Currently active gravity (x, y, z) [m/s²] input through the PolyScope mounting screen or using the “set_gravity()” URScript function

Target base acceleration

double

6

48

163 - 168

Currently active external base acceleration (x, y, z, rx, ry, rz) [m/s², m/s², m/s², rad/s², rad/s², rad/s²] input using the “set_base_acceleration()” URScript function.
It is currently not possible to set the angular acceleration to non-zero values

Reserved

double

6

48

169 - 174

Values used by Universal Robots software only

Reserved

double

6

48

175 - 180

Values used by Universal Robots software only

Controller step

double

1

8

181

Control time steps since URControl executable launch

TOTAL

182

1452

If fewer than 1452 bytes are received, the protocol follows the structure listed above but only includes the entries up to the received byte count.

Message Sources

A summary of different sources of the states:

  • [source1]

  • [source2]

  • [source3]

Safety Mode Types

Safety Mode Type

Description

Normal

No safety issue, robot can be operated as intended

Reduced

Reduced operational capabilities due to minor safety concerns

Protective Stop

The robot is stopped due to a safety issue that needs to be resolved before restarting

Recovery

Safety issue detected, robot requires recovery actions

Safety Status Types

Safety Status Type

Description

Protective Stop

The robot is in a protective stop mode due to a detected issue

Emergency Stop

An emergency stop has been triggered

Violation

Safety system violation has been detected

Fault

A fault in the safety system has been detected

Control Modes

Control Mode

Description

Position

Controls the robot in position mode

Teach

Robot is in teach mode for programming

Force

Controls the robot in force mode

Robot Modes

Robot Mode

Description

Manual

Robot is in manual mode and can be controlled manually

Automatic

Robot is in automatic mode and follows pre-programmed instructions

Semi-Automatic

Robot is in semi-automatic mode with some manual interventions

Joint Modes

Joint Mode

Description

Free Drive

Joint is in free drive mode for manual adjustments

Brake

Joint brake is activated

Disable

Joint is disabled

Tool Modes

Tool Mode

Description

Idle

Tool is idle

Active

Tool is active

Error

Tool has encountered an error