Skip to main content
The same Step list you simulate can run on hardware. The robot controllers expose three transports, each suited to a different setup.
Deploying drives a real robot. Start on a stand or with clearance, keep an emergency stop reachable, and test in simulation first. SSH transports need the deploy extra: pip install "cadenza-lab[deploy]".

DDS: run directly on the robot

Best when your code runs on the robot’s onboard computer. Lowest latency.

SSH: upload and run a script

Best when your code runs on a laptop and you want to push a self-contained script to the robot and let it execute there.
A lower-level connection helper is also available:

Bridge: host model, live control

Best when your VLA / policy runs on your host PC and needs real-time control of the physical robot. Starts a bridge on the robot and returns a live handle.

G1 humanoid

The G1 controller mirrors the API (default IP 192.168.123.164):

Choosing a transport

Build and validate the exact Step sequence in the viewer first, then switch go1.run(...) to go1.deploy(...). The action list is identical.