Get Actual Digital Output Bits
SUMMARY
Get Actual Digital Output Bits returns the state of all digital outputs as a packed integer bitmask. Each bit corresponds to a single digital output channel.
Bit assignments: bits 0–7 are standard digital outputs, bits 8–15 are configurable digital outputs, and bits 16–17 are the two tool digital outputs.
SUPPORTED ROBOTS
This skill is currently supported on Universal Robots only. Calling this method on other robot brands will raise a NotImplementedError.
The Skill
bits = robot.get_actual_digital_output_bits()The Code
Example: Read and Display All Digital Output States
Connect to the robot, read the digital output bitmask, and display it in binary.
from loguru import logger
from telekinesis.synapse.robots.manipulators import universal_robots
robot_ip = "192.168.1.2" # replace with your robot's IP
robot = universal_robots.UniversalRobotsUR10E()
# Connect
robot.connect(ip=robot_ip)
bits = robot.get_actual_digital_output_bits()
logger.info(f"Digital output bits: {bits:#018b}")
# Check whether standard digital output 0 is high
do0 = bool(bits & (1 << 0))
logger.info(f"DO0: {do0}")
# Disconnect
robot.disconnect()The Explanation of the Code
get_actual_digital_output_bits returns all digital output states as a single bitmask integer. Bit position n corresponds to digital output channel n. This gives a complete snapshot of all output states in one RTDE read.
How to Tune the Parameters
This skill takes no parameters.
Return Value
| Type | Description |
|---|---|
int | Bitmask of all digital output states. Bits 0–7: standard outputs; 8–15: configurable outputs; 16–17: tool outputs. |
Where to Use the Skill
- Output state verification — Confirm that output commands have been applied
- I/O logging — Capture a full output state snapshot in each control cycle
When Not to Use the Skill
Do not use Get Actual Digital Output Bits when:
- You need the digital input states — use Get Actual Digital Input Bits instead

