LEROBOT / SO101 CALIBRATION

SO-101 calibration is a correspondence problem, not a one-time setup checkbox.

LeRobot stores calibration against the configured robot/teleoperator identity. Reusing the same IDs across calibration, teleoperation and recording matters because joint positions must refer to the same actual mechanical configuration.

MATURITYFIELD METHOD · OPERATOR-CONFIRMED CALIBRATION
LAST VERIFIED16 Oct 2026
SOURCE VERSIONLeRobot SO-101 and real-world robot documentation · reviewed 16 Oct 2026
EVIDENCE BOUNDARYPersistent leader and follower calibration was reported as working in the OpenRGD lab; calibration JSON hashes and a complete independently audited commissioning trace are not publicly archived.

TWO ROLES

The leader is not the follower, even when the motion should match.

The SO-101 leader is a human-driven teleoperator. The follower is the robot whose joints receive the commanded targets. They can have different gearing, offsets, motor IDs and mechanical installation. Calibration creates the mapping from motor readings to meaningful joint coordinates for each specific unit.

In the OpenRGD lab, the identifiers openrgd_leader and openrgd_follower were used with persistent LeRobot calibration files. A prior work session reported all 12 servos configured and the black leader moving the white follower. These are operator-confirmed observations, not a public metrology study.

IDENTITY

Calibration is coupled to configuration identity.

The official LeRobot setup uses separate --teleop.id and --robot.id values. Keeping those IDs unchanged allows LeRobot to find existing calibration files; accidentally changing an ID can make a known robot appear uncalibrated.

A reproducible research record should bind robot ID, motor ordering, hardware configuration, calibration method, firmware/driver version, calibration artifact digest and date of verification. Serial-device paths are operational settings, not scientific proof.

01

Physical instance

Record which exact leader and follower were used, without publishing sensitive device identifiers.

02

Joint ordering

Pin names, motor IDs, sign conventions and units for every state and action dimension.

03

Calibration digest

Hash the configuration actually loaded rather than treating a filename as immutable evidence.

04

Re-check

Verify correspondence after hardware, bus, motor or mechanical changes.

COMMISSIONING

Verification should happen before data collection or replay.

Start in a clear workspace with an operator-reachable stop/torque-off procedure, check connection and joint correspondence, then verify conservative low-amplitude motion under supervision. A successfully parsed calibration file does not prove a gripper will move in the expected direction.

Any discrepancy in joint direction, target sign, gripper mapping, mechanical range or drift should block further recording or learned-policy evaluation until resolved. Never use an AI policy output to bypass this preflight.

01Identify physical device→
02Load calibration→
03Check joint/state signs→
04Low-amplitude supervised check→
05Record calibration digest→
06Begin bounded experiment

EVIDENCE BOUNDARY

What remains missing from the public lab record?

We have an operator-confirmed working calibration setup. The site does not currently host calibration JSON bytes, SHA-256 values, independent range measurements or a signed commissioning report. A new experiment should record them before making stronger claims about reproducibility or cross-robot calibration transfer.

PRIMARY SOURCES