Skip to main content

A Python interface for controlling and receiving data from a UR robot using the Real-Time Data Exchange (RTDE) interface of the robot.

Project description

 

build status pypi
ps-3.12.1 ps-3.15.8 ps-5.5.1 ps-5.17.3

A C++ interface for controlling and receiving data from a UR robot using the Real-Time Data Exchange (RTDE) interface of the robot. The interface can also be used with python, through the provided python bindings.

[!tip] Announcements PolyScopeX is now supported, when using the External Control UR Cap for PolyScopeX :rocket:

Key Features

  • Fast and lightweight interface for programming UR robots.
  • Uses the Real-Time Data Exchange (RTDE) of the robot.
  • Execute with real-time priority on operating systems with a real-time kernel, see the Real-time Setup Guide
  • Available on multiple platforms (Linux, Windows, macOS)
  • Can be used from C++ and Python.
  • Relies only on STL datatypes and can be used with various robot frameworks.
  • Switchable register range (FieldBus / PLC [0..23] or external clients range [24..47])
  • Use it with the UR's ExternalControl UR Cap, download it here see how to install it on the robot here. In order to setup ur_rtde for using it see here.
  • Easy to install and setup.

Documentation

Documentation with installation and build instructions, examples and API resides at https://sdurobotics.gitlab.io/ur_rtde/

Citing

If you use ur_rtde in your research, please cite:

@inproceedings{10871000,
  author={Lindvig, Anders Prier and Iturrate, Iñigo and Kindler, Uwe and Sloth, Christoffer},
  booktitle={2025 IEEE/SICE International Symposium on System Integration (SII)}, 
  title={ur_rtde: An Interface for Controlling Universal Robots (UR) using the Real-Time Data Exchange (RTDE)}, 
  year={2025},
  volume={},
  number={},
  pages={1118-1123},
  keywords={Protocols;Linux;C++ languages;System integration;Writing;Manipulators;Real-time systems;Libraries;Timing;MATLAB},
  doi={10.1109/SII59315.2025.10871000}}

Quick Install

From PPA:

If you are on Ubuntu, you can install ur_rtde with:

sudo add-apt-repository ppa:sdurobotics/ur-rtde
sudo apt-get update
sudo apt install librtde librtde-dev

From PyPi:

If you only want to the use the Python interface, you can install ur_rtde through pip:

pip3 install ur_rtde

:warning: Notice! Make sure your pip version >=19.3, otherwise the install might fail.

Prebuilt python wheels support matrix:

macOS Intel macOS Apple Silicon Windows 64bit Windows 32bit Windows Arm64 manylinux x86_64 manylinux i686 manylinux aarch64 manylinux ppc64le manylinux s390x
CPython 3.6 :x: :x: :x: :x:
CPython 3.7 :x: :x: :x:
CPython 3.8 :x: :x: :x:
CPython 3.9 :x: :x: ✅¹
CPython 3.10 :x: :x: ✅¹
CPython 3.11 :x: :x: ✅¹
CPython 3.12 :x: :x: ✅¹
PyPy 3.7 v7.3 :x: :x: :x: :x: :x:
PyPy 3.8 v7.3 :x: :x: :x: :x: :x:
PyPy 3.9 v7.3 :x: :x: :x: :x: :x:

¹ Windows arm64 support is experimental.

Dependencies

Compatible Robots

  • All CB-Series from CB3/CB3.1 software 3.3
  • All e-Series

Compatible Operating Systems

Currently tested on:

  • Ubuntu 20.04 (Focal Fossa)
  • Ubuntu 22.04 (Jammy Jellyfish)
  • Ubuntu 24.04 (Noble Numbat)
  • macOS 15 (Sequoia)
  • Windows 10 Pro x64

Contact

If you have any questions or suggestions to the interface, feel free to contact Anders Prier Lindvig anpl@mmmi.sdu.dk or create an issue here.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ur_rtde-1.6.1.tar.gz (2.8 MB view details)

Uploaded Source

Built Distributions

ur_rtde-1.6.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

ur_rtde-1.6.1-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (4.8 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

ur_rtde-1.6.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

ur_rtde-1.6.1-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (4.8 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

ur_rtde-1.6.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

ur_rtde-1.6.1-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (4.8 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

ur_rtde-1.6.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

ur_rtde-1.6.1-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (4.8 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

ur_rtde-1.6.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

ur_rtde-1.6.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (4.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

ur_rtde-1.6.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

ur_rtde-1.6.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (4.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

ur_rtde-1.6.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

ur_rtde-1.6.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (4.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

ur_rtde-1.6.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

ur_rtde-1.6.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (4.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ i686

ur_rtde-1.6.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

ur_rtde-1.6.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (4.8 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ i686

ur_rtde-1.6.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

ur_rtde-1.6.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl (4.8 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ i686

ur_rtde-1.6.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ x86-64

ur_rtde-1.6.1-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl (4.8 MB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ i686

File details

Details for the file ur_rtde-1.6.1.tar.gz.

File metadata

  • Download URL: ur_rtde-1.6.1.tar.gz
  • Upload date:
  • Size: 2.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.20

File hashes

Hashes for ur_rtde-1.6.1.tar.gz
Algorithm Hash digest
SHA256 50ece9bdcab9471fbcd55f9eee2e72a061fdba6b654a95a0889443a979fec4c5
MD5 8f8f16f49d5840b151dc5d1b01cf2bda
BLAKE2b-256 718a02e2b67991cb91e47aec7752e7efe624f45c98fdf458d2231abb2809b3b1

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 eeff27284dd85c4f1a65015e11c4eede415eb8dfdbce72e468be7cc936b79acc
MD5 8bbe46c9ef2f07e477647ff62d4ec195
BLAKE2b-256 c2a6d423f1fa2c962598b5172ed4b526e331fc8bd1ee9bd4bf49466ff40492f1

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 e0e70acc6753ea97528ad8c055f9914fda3cf7ffa27cf6f1413a915f9dd29f81
MD5 76bef3037bae436ebb89075d1c50d47d
BLAKE2b-256 2c429fc7be26ffb3f52dfdfb0ae51628f86be9f3bb11aeaf3135b1da1e16fc86

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dd0082ab3963af276f2f2be0c4478ac4611a3fb3b95fd90231184149277c3220
MD5 ce6bc0e05fa5e4a70b381deac025fd97
BLAKE2b-256 96d6eee913de2770b5c553b15076369299c36301613fc86a1929ea1ff5c10198

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 fbc9b309fd07b84d2ed741630d34cd249c4d22786d44856728ebcd7f50de3415
MD5 fef01bff7c1d6e80bf12ddbbb42720bb
BLAKE2b-256 9e7142b936b076a9afb5e37174570b2c79a6c6d16c2c7d2064c5295463681064

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d91f0e0c917ac81aecc66c226a1e71a573b8664f091be343e3864d1d6eadac40
MD5 6da27a63cb11ed1cfa8f1617f869af55
BLAKE2b-256 5d5fbb9d51b7f0157abbde367c60529a140ffebf8d65f1b25bcb2f41484a4caf

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 b2675cbad18b3e6a0fdc736e7114a3c04fe57aa6b38c39d1b52ee30a56641823
MD5 a03d619fa170fed5e17cabd0084896f0
BLAKE2b-256 e459b3d070d2d5fd9816b38fadbf60ad75aa457996cff4a8bd291241ffb5b4c1

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9aaaefbee6cbb513a541e9c5443c7deeb9f92400a1cfa6f9567635a7e90beb4f
MD5 3c282b41d7a39ab43c480a75945c9274
BLAKE2b-256 c3c0f8e3798255b89332797748764c972f34e8af40d9735a67661d70993dcec3

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 1c4d6003e6bcbd0c624db432f823ca777250c1cce8766a67ab1f60095ad86466
MD5 b0d455b882b51aa1be0a49863d60d559
BLAKE2b-256 f5decaaaf0222eba33ba1339d4cff85c6e5eaf022b6aee71947becf2a2bba3f3

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9149c5b9d9738850643227265300cc9dfc4084947bc977b26597faec1aaaffba
MD5 d70a43123ec40e2e6aaa6115f193acc1
BLAKE2b-256 c39f62ae668e349b852ad9803e9c8b46ca9ac1b64c9688ad714021a410cbaf57

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 8192416ab005a7051ab3e5b850d4f06cbf53cc83cbf24ec410a8365f2e3ab86f
MD5 6cf70d6b436e428027e2a20896802c02
BLAKE2b-256 008bd569054c8a942caed3d5d16b222133c6a24c9eb267becf6fe6f1fc33bce0

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dc9e9dcfc2659a5143fb88566d3ff77e07087b5dbe1dae4cfa35b640c858a40d
MD5 e55c59382bd5fafa7e8d8a40a27c1e7f
BLAKE2b-256 3752193c154c3432c1c59ba84e58e3140d7742d4b2c21b19a25f578371aaca43

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 13c361d9af9ea63e464d5066427a15b2f2f12ea4e27981b5c7287a4394c88f9f
MD5 0ce3b2589d80298223eaa2dd77bb5317
BLAKE2b-256 703e7db87e9dddb6f372b9fdd7c293e84501cc8855622fce150a3606ba006e4f

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b78e8eb440185e803c81292f206f60f833aea6d1691d829cf2dde2f0a07c9df6
MD5 69e653ab975d368472946d26f5e8fe88
BLAKE2b-256 f5e8799bdd93a3207970cdf882ba981a1be72e81114129775c58c9687ab3b531

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 ba58f03e89a174093982cad3e28ba58368c06715c890d7a79a06f8a15d0fe995
MD5 065359184993afbc6598f86aa41a32f2
BLAKE2b-256 dd6526fff9ebc175e727404f10f496e5dbcdb9aff8f614716d0a74c494e08f55

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fbb8172e90493068d75dd3a0a5356949d9898d33414e7c0609ee6d5111f769a9
MD5 cc5c0a66d4b27f272722226844275ea7
BLAKE2b-256 30717c7f2fe0b1e421f573e035ca06a7b6564664d9d8bff3057aea91adab5531

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 b9f6e451817481339f768d6045e44aa4f3995f228878bf74804be62c94054db4
MD5 b7969146abbb328f4c26cf6b29c03aa0
BLAKE2b-256 d715a7a9f7646441bf4dbe4e6e2fa1d1941f74d3355a2d30ec62cb7a49924732

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1c0db5c9b7ab0e6a2312eb3610cc7f9fff1429bb0b70e21c554eaf61a0ae0423
MD5 3db9573c840119bb1f087de16f529a2f
BLAKE2b-256 e3cf9bbac69cb1cae7f2859f6250e7a45d42011458ea25b1d5732c9e147acb47

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 94a39e2484095d47b59d90f34fb4eff97aaffa7131b1b2071f273db2340ea548
MD5 ed68117e73f25da9809ee222ac3a830f
BLAKE2b-256 bc9755d8fe62d04ab59277b2479abb42ac60c1b6f46007331cf571ec97de6925

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2975399a01574e09b9f21dc6082eca08ac75ac2f1ffb55821fcb052136757743
MD5 f1e31df0314adee6d3c2088c9f01e41f
BLAKE2b-256 2a38cd7ecf75db9cf2a8aa64055068e5a2c7908894287c8a8d3b61e93eef72d5

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 d7d2937a8c6ee00f58f1ff80486434c98d53e9e75e43ab832ddc997c0a073602
MD5 9ed94dc433fa4c4546ed035a18472a0c
BLAKE2b-256 239b8aac688b8ae50742a45253dc8757afba44462c08941b2efad435490c2771

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 71cec5c6f9521bc9093c95848f067612f2e0f5176c5bec5794cecfe5fcc7b581
MD5 643577f2107b4b9e4bec7dd7ef4bd638
BLAKE2b-256 abf847303329234376ead7cf96c98ede31045634b4c11e4217dc048d0ff29953

See more details on using hashes here.

File details

Details for the file ur_rtde-1.6.1-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ur_rtde-1.6.1-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 15a9c72886ba9a2d11df0c638ee45b37569aa54012b166c69ffa9084b11919b3
MD5 c2a23caa1b65fe217d371abbee3204b0
BLAKE2b-256 42f80d30e49e8e5cbca5d141a99847e4d574e95bf00f56ba832f5da8756501d4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page