I’m trying to read the Robot Comm message of type Error using the port 30001. Specifically, I’m interested in reading the exact message “Position close to joint limits”
In the simulator I constrained the joint 6 and move the joint such that a protective stop message is encountered. Simultaneously I run the primary parser.
I notice the packet length of Message type 20 (Robot Comm) and subtype 6 (Error code) I receive is of length 35 bytes. Therefore, the fields: uint32_t robotMessageDataType; uint32_t robotMessageData; charArray robotCommTextMessage
are empty.
Since the packet length is 35 bytes, that means the robotCommTextMessage is not received from the controller. Also, robotMessageDataType and robotMessageData are 0.
My motivation is to read the message “Position close to joint limits” remotely using the 30001 port.
Unfortunately the robotCommTextMessage does not contain this information. It is implemented so PolyScope(the frontend) contain a translation from the error code to the message “Position close to joint limits”. The list of error codes can be found on myUR: ErrorCodes
I acknowledge this is not convenient. I will let you know if a better approach shows up.