# RTDE \[WinError 10053\] & "pose\_inv" fail

**URL:** <https://forum.universal-robots.com/t/rtde-winerror-10053-pose-inv-fail/34705>\
**Category:** Robot Communication\
**Created:** [June 11, 2024, 7:46pm UTC](https://forum.universal-robots.com/t/rtde-winerror-10053-pose-inv-fail/34705 "2024-06-11T19:46:05Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![anthony.a.sharonov](https://avatars.discourse-cdn.com/v4/letter/a/ad7895/32.png) [@anthony.a.sharonov](https://forum.universal-robots.com/u/anthony.a.sharonov)\
**Post date:** [June 11, 2024, 7:46pm UTC](https://forum.universal-robots.com/t/rtde-winerror-10053-pose-inv-fail/34705/1 "2024-06-11T19:46:05Z")

</div>

Hello,

I am running RTDE scripts and communicating with robot as normal. However, I need to compute the “pose\_inv” of a certain pose I have and return it. I decided to write a new script to test it out but got nothing. Here’s my code:

```auto
import socket
import time

ip = "192.168.X.XXX" # (censored for privacy reasons)
port = 30004

s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.settimeout(2)
s.connect((ip,port))
time.sleep(2)
s.send(("pose_inv(p[0.1104911905226538, -0.34939614486365744, 0.6564523211369121, -0.025329895430537173, 0.029401735236980375, -0.09949301737799898])\n").encode())
time.sleep(5)
message = s.recv(4096)
print(message)

time.sleep(5)

s.send(('pose_inv(p[0.12,0.36,-0.12,0,0,0])\n').encode())
time.sleep(5)
message2 = s.recv(4096)
print(message2)

```

After running pose\_inv, I get an output of simply

```auto
b''

```

Which is my first problem. Where is my pose? If I do the same on the Polyscope, I get the expected pose. My second problem is being able to send a command after that. When sending the second pose\_inv (aka message2) I this error:

```auto
    message2 = s.recv(4096)
               ^^^^^^^^^^^^
ConnectionAbortedError: [WinError 10053] An established connection was aborted by the software in your host machine 

```

Any ideas? Thanks

---

<div class="post-metadata">

**Author:** ![krmi](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.universal-robots.com/krmi/32/1945_2.png) [@krmi](https://forum.universal-robots.com/u/krmi)\
**Post date:** [June 12, 2024, 12:32pm UTC](https://forum.universal-robots.com/t/rtde-winerror-10053-pose-inv-fail/34705/2 "2024-06-12T12:32:02Z")

</div>

Pose\_inv is not an input that RTDE can read so you won’t be able to get a response for it. Also, you haven’t setup a recipe for the client and server to sync up on. Take a look at the example in our RTDE article below:  
[https://www.universal-robots.com/articles/ur/interface-communication/real-time-data-exchange-rtde-guide/](https://www.universal-robots.com/articles/ur/interface-communication/real-time-data-exchange-rtde-guide/)

Additionally, you can read up on remote operation of the robot here:  
[https://www.universal-robots.com/articles/ur/interface-communication/remote-operation-of-robots/](https://www.universal-robots.com/articles/ur/interface-communication/remote-operation-of-robots/)

---

<div class="post-metadata">

**Author:** ![anthony.a.sharonov](https://avatars.discourse-cdn.com/v4/letter/a/ad7895/32.png) [@anthony.a.sharonov](https://forum.universal-robots.com/u/anthony.a.sharonov)\
**Post date:** [June 12, 2024, 12:47pm UTC](https://forum.universal-robots.com/t/rtde-winerror-10053-pose-inv-fail/34705/3 "2024-06-12T12:47:27Z")

</div>

I’m using the third party “ur\_rtde” for RTDE communication, which handles recipes on its own. This was just an example code. Thanks for letting me know that RTDE can’t read pose\_inv. Are there any other ways to print the pose\_inv on my python side? When sending through socket communication, I get literal bytes in response that can’t be decoded by .decode(). I saw the other forum posts regarding functions that can decode them, is this really the only way?

Thanks

---

<div class="post-metadata">

**Author:** ![krmi](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.universal-robots.com/krmi/32/1945_2.png) [@krmi](https://forum.universal-robots.com/u/krmi)\
**Post date:** [June 12, 2024, 1:45pm UTC](https://forum.universal-robots.com/t/rtde-winerror-10053-pose-inv-fail/34705/4 "2024-06-12T13:45:48Z")

</div>

Oh, well the ur\_rtde library may have ways to send that script to the robot and get a response using other interfaces. That library was developed by a third-party so you may have better luck asking them:

> **[Issues · SDU Robotics / ur\_rtde · GitLab](https://gitlab.com/sdurobotics/ur_rtde/-/issues)**
>
> A C++ interface for controlling and receiving data from an UR robot using the Real-Time Data Exchange (RTDE) interface of the robot. The interface can also be used...

Natively there are a couple ways you could probably do it. One may be to assign the pose\_inv to a variable and send the full script line to the Primary/Secondary interface. From there you could connect to the Dashboard server on port 29999 and call “getVariable xxxxx” to get the variable value back in Python.

---

<div class="post-metadata">

**Author:** ![anthony.a.sharonov](https://avatars.discourse-cdn.com/v4/letter/a/ad7895/32.png) [@anthony.a.sharonov](https://forum.universal-robots.com/u/anthony.a.sharonov)\
**Post date:** [June 12, 2024, 2:23pm UTC](https://forum.universal-robots.com/t/rtde-winerror-10053-pose-inv-fail/34705/5 "2024-06-12T14:23:27Z")

</div>

Yeah that was my last resort, to do everything through script calling. Thanks!
