Quick start
Automatically discover one Exo, subscribe to arm telemetry, and run it in the foreground.
Current version · 1.0.0
Quick start
With one Exo connected, the default SerialConnection() discovers the unique device automatically.
Minimal program
from qnbot_sdk import Sample, Sdk
from qnbot_sdk.exo import ExoConfig, ExoTelemetry
sdk = Sdk(devices=(ExoConfig(),))
exo = sdk.exo()
device = exo.device()
def print_telemetry(sample: Sample[ExoTelemetry]) -> None:
print(sample.value.payload.left_arm.joint_positions_rad)
subscription = device.telemetry().subscribe(print_telemetry)
exo.start()
print("running; press Ctrl+C to stop")
exo.run_forever()Run
python quick_start.pyIf discovery finds zero or multiple devices, call discover_exos() and then set SerialConnection(port=...). Keep subscription alive; releasing it or calling unsubscribe() stops callbacks.