videosdk_teleop.adapters.lerobot gives you two subclasses, one per machine:
Install
Robot host
The machine with the follower arm.Configure cameras on the LeRobot object, not on the adapter. LeRobot’s
get_observation() returns joints and images in one call, and the adapter
serves both from it.Operator host
The machine with the leader arm.leader.run(hz=30) does the same when the operator does not need to see the
frames.
Cameras
Each camera travels as its own track, soobservation() returns one array per
camera:
get_observation() is called once per observe cycle and cached, so joints and
images always come from the same read.
Joint names
Use plain joint names,elbow_flex rather than elbow_flex.pos. LeRobot adds
the .pos suffix, the adapter takes it off, and everything you touch, safety
limits, dataset rows and callbacks, uses the plain name.
Units
Every number you set is read in the arm’s own units, since nothing converts between them. Aslew of 12.0 at 30 Hz lets a joint travel 360 of those units
each second.
Related
SO-101
Calibrate the arms, and set slew for degrees and gripper units.
Safety
The checks a command passes before it reaches the motors.