Skip to main content
LeRobot provides a unified Robot interface that makes it easy to integrate custom hardware. Once integrated, you can use all of LeRobot’s tools for data collection, training, and deployment.

Robot Interface

All LeRobot robots inherit from the Robot base class and implement a standard interface:

Complete Example: Serial Robot

Here’s a complete example for a robot with serial communication:

Using Your Robot

Data Collection

Once implemented, use your robot for teleoperation and data collection:

Training

Train policies on data collected from your robot:

Deployment

Deploy trained policies on your robot:

Camera Integration

LeRobot supports multiple camera backends:

OpenCV Cameras

Multiple Cameras

Teleoperation Devices

Implement custom teleoperation devices:

Motor Calibration

LeRobot provides tools for motor calibration:
Calibration files are saved to ~/.cache/lerobot/calibration/robots/serial_robot/my_robot_001.json

Best Practices

Supported Hardware

LeRobot includes implementations for:
  • SO-100: LeRobot’s reference robot arm
  • Koch: Low-cost robot arm
  • LeKiwi: Mobile manipulation platform
  • Reachy 2: Humanoid robot
  • OpenARM: Open-source robot arm
  • Unitree G1: Humanoid robot
  • EarthRover: Mobile robot
See the robots documentation for setup guides.

Next Steps

Example Implementations

Study existing robot implementations: