Robot interface, making it easy to switch between different hardware platforms.
Supported Robots
Robotic Arms
SO-101
Affordable robotic arm with Feetech STS3215 servos
SO-100
Compact version of the SO series arm
Koch v1.1
Low-cost arm with Dynamixel servos by Tau Robotics
OpenArm
7-DOF arm with Damiao motors and CAN-FD
OMX
Modular robotic arm platform
Hope Jr
Arm and hand system for dexterous manipulation
Mobile Platforms
LeKiwi
Three-wheel omnidirectional mobile manipulator
Earth Rover Mini
Cloud-controlled mobile robot via Frodobots SDK
Humanoid Robots
Reachy 2
Expressive humanoid by Pollen Robotics
Unitree G1
Full-body humanoid with advanced locomotion
Robot Interface
All robots in LeRobot inherit from the baseRobot class and implement:
Core Methods
| Method | Description |
|---|---|
connect() | Establish connection to the robot |
disconnect() | Safely disconnect and cleanup |
get_observation() | Get current robot state and sensor data |
send_action() | Send control commands to actuators |
calibrate() | Run calibration procedure (if needed) |
configure() | Apply runtime configuration |
Properties
| Property | Description |
|---|---|
observation_features | Dictionary describing observation structure |
action_features | Dictionary describing action structure |
is_connected | Whether robot is currently connected |
is_calibrated | Whether robot is calibrated |
Configuration
Each robot has a corresponding configuration class that extendsRobotConfig:
Common Features
Camera Integration
Most robots support multiple cameras for visual observations:Calibration
Motor-based robots typically require calibration:Safety Features
Many robots support safety limits:Next Steps
Choose Your Robot
Explore the specific robot you want to work with
Recording Data
Learn how to collect datasets with your robot
Training Policies
Train models using data from your robot
API Reference
Detailed API documentation