Files
lerobot/docs/source/api/teleoperators.mdx
T
CarolinePascal 35d40f353f docs(teleoperators): write the API reference docstrings
Completes Wave 1. Takes src/lerobot/teleoperators/ (excluding teleoperator.py, off-limits) to 100% public
docstring coverage across all 16 hardware families. Fixes a real check_docstrings.py-breaking bug in
ExoskeletonIKHelper's docstring format. Several other real bugs (missing @property, undefined attribute
reference, wrong parameter name in an existing docstring) were found and documented accurately but left
unfixed per the docstrings-only scope, detailed in the PR description.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-07 01:25:26 +02:00

259 lines
6.5 KiB
Plaintext

# Teleoperators
A teleoperator produces actions for a robot to follow — a leader arm, a gamepad, a keyboard, a phone. All of
them implement the [`Teleoperator`] interface, so a recording script written against it works with any input
device.
See [Phone teleoperation](../phone_teleop) and [Isaac Teleop](../isaac_teleop) for setup guides, and
[Imitation Learning for Robots](../il_robots) for the recording workflow.
## Teleoperator
[[autodoc]] lerobot.teleoperators.Teleoperator
- connect
- disconnect
- configure
- calibrate
- get_action
- send_feedback
- action_features
- feedback_features
- is_connected
- is_calibrated
## TeleoperatorConfig
[[autodoc]] lerobot.teleoperators.TeleoperatorConfig
## make_teleoperator_from_config
[[autodoc]] lerobot.teleoperators.make_teleoperator_from_config
## SO-100 and SO-101 leaders
`SO100Leader` and `SO101Leader` are aliases of the same `SOLeader` class; the two arms differ in their
configuration, not their control code. `SO100LeaderConfig` and `SO101LeaderConfig` are likewise aliases of
`SOLeaderTeleopConfig`.
[[autodoc]] lerobot.teleoperators.so_leader.SOLeader
- all
- action_features
- feedback_features
- is_connected
- is_calibrated
[[autodoc]] lerobot.teleoperators.so_leader.SOLeaderTeleopConfig
## KochLeader
[[autodoc]] lerobot.teleoperators.koch_leader.KochLeader
- all
- action_features
- feedback_features
- is_connected
- is_calibrated
[[autodoc]] lerobot.teleoperators.koch_leader.KochLeaderConfig
## OmxLeader
[[autodoc]] lerobot.teleoperators.omx_leader.OmxLeader
- all
- action_features
- feedback_features
- is_connected
- is_calibrated
[[autodoc]] lerobot.teleoperators.omx_leader.OmxLeaderConfig
## OpenArmLeader
CAN-based leader arm using Damiao motors.
[[autodoc]] lerobot.teleoperators.openarm_leader.OpenArmLeader
- all
- action_features
- feedback_features
- is_connected
- is_calibrated
[[autodoc]] lerobot.teleoperators.openarm_leader.OpenArmLeaderConfig
## BiOpenArmLeader
A bimanual pair of `OpenArmLeader` arms.
[[autodoc]] lerobot.teleoperators.bi_openarm_leader.BiOpenArmLeader
- all
[[autodoc]] lerobot.teleoperators.bi_openarm_leader.BiOpenArmLeaderConfig
## OpenArmMini
CAN-based leader arm using Damiao motors, a smaller/simpler OpenArm variant.
[[autodoc]] lerobot.teleoperators.openarm_mini.OpenArmMini
- all
- action_features
- feedback_features
- is_connected
- is_calibrated
[[autodoc]] lerobot.teleoperators.openarm_mini.OpenArmMiniConfig
## BiOpenArmMini
A bimanual pair of `OpenArmMini` arms.
[[autodoc]] lerobot.teleoperators.bi_openarm_mini.BiOpenArmMini
- all
[[autodoc]] lerobot.teleoperators.bi_openarm_mini.BiOpenArmMiniConfig
## HomunculusArm
A wearable exoskeleton arm read over a serial link.
[[autodoc]] lerobot.teleoperators.homunculus.HomunculusArm
- all
- action_features
- feedback_features
- is_connected
- is_calibrated
[[autodoc]] lerobot.teleoperators.homunculus.HomunculusArmConfig
## HomunculusGlove
A wearable exoskeleton glove read over a serial link, remapped to HopeJR hand joints via
`homunculus_glove_to_hope_jr_hand`.
[[autodoc]] lerobot.teleoperators.homunculus.HomunculusGlove
- all
- action_features
- feedback_features
- is_connected
- is_calibrated
[[autodoc]] lerobot.teleoperators.homunculus.HomunculusGloveConfig
[[autodoc]] lerobot.teleoperators.homunculus.homunculus_glove_to_hope_jr_hand
## RebotArm102Leader
[[autodoc]] lerobot.teleoperators.rebot_102_leader.RebotArm102Leader
- all
- action_features
- feedback_features
- is_connected
- is_calibrated
[[autodoc]] lerobot.teleoperators.rebot_102_leader.RebotArm102LeaderTeleopConfig
## BiRebot102Leader
A bimanual pair of `RebotArm102Leader` arms.
[[autodoc]] lerobot.teleoperators.bi_rebot_102_leader.BiRebot102Leader
- all
[[autodoc]] lerobot.teleoperators.bi_rebot_102_leader.BiRebot102LeaderConfig
## BiSOLeader
A bimanual pair of `SOLeader` arms.
[[autodoc]] lerobot.teleoperators.bi_so_leader.BiSOLeader
- all
[[autodoc]] lerobot.teleoperators.bi_so_leader.BiSOLeaderConfig
## Phone
Reads pose and touch input from a phone app (iOS or Android).
[[autodoc]] lerobot.teleoperators.phone.Phone
- all
- action_features
- feedback_features
- is_connected
- is_calibrated
[[autodoc]] lerobot.teleoperators.phone.PhoneConfig
## Keyboard
`KeyboardTeleop`, `KeyboardEndEffectorTeleop`, and `KeyboardRoverTeleop` read key-press events for manual
control, targeting joint-space, end-effector, or mobile-base actions respectively.
[[autodoc]] lerobot.teleoperators.keyboard.KeyboardTeleop
- all
- action_features
- feedback_features
- is_connected
- is_calibrated
[[autodoc]] lerobot.teleoperators.keyboard.KeyboardTeleopConfig
[[autodoc]] lerobot.teleoperators.keyboard.KeyboardEndEffectorTeleop
- all
- action_features
[[autodoc]] lerobot.teleoperators.keyboard.KeyboardEndEffectorTeleopConfig
[[autodoc]] lerobot.teleoperators.keyboard.KeyboardRoverTeleop
- all
- action_features
- is_calibrated
[[autodoc]] lerobot.teleoperators.keyboard.KeyboardRoverTeleopConfig
## GamepadTeleop
Reads joystick/button input from a gamepad via pygame.
[[autodoc]] lerobot.teleoperators.gamepad.GamepadTeleop
- all
- action_features
- feedback_features
- is_connected
[[autodoc]] lerobot.teleoperators.gamepad.GamepadTeleopConfig
## UnitreeG1Teleoperator
A wearable exoskeleton for teleoperating the Unitree G1 humanoid's arms, mapping exoskeleton joint angles to
G1 end-effector poses via forward/inverse kinematics.
[[autodoc]] lerobot.teleoperators.unitree_g1.UnitreeG1Teleoperator
- all
- is_connected
- is_calibrated
[[autodoc]] lerobot.teleoperators.unitree_g1.UnitreeG1TeleoperatorConfig
[[autodoc]] lerobot.teleoperators.unitree_g1.ExoskeletonArm
- all
- is_connected
- is_calibrated
[[autodoc]] lerobot.teleoperators.unitree_g1.ExoskeletonArmPortConfig
[[autodoc]] lerobot.teleoperators.unitree_g1.ExoskeletonIKHelper
- all
[[autodoc]] lerobot.teleoperators.unitree_g1.ExoskeletonCalibration
[[autodoc]] lerobot.teleoperators.unitree_g1.ExoskeletonJointCalibration
## Reachy2Teleoperator
[[autodoc]] lerobot.teleoperators.reachy2_teleoperator.Reachy2Teleoperator
- all
- action_features
- feedback_features
- is_connected
- is_calibrated
[[autodoc]] lerobot.teleoperators.reachy2_teleoperator.Reachy2TeleoperatorConfig