Robotics
LeRobot
Safetensors
so101
act
synthetic-data

Pick black cat into green SIGGRAPH mug โ€” ACT

This deployment checkpoint accepts SO101 arm positions in degrees and gripper positions in 0โ€“100. It returns absolute position targets in the same units. Set --robot.use_degrees=true and load BOTH saved processor pipelines. The model weights are unchanged from the completed 100000-update training run; the input/output normalization statistics have been converted together.

Use the existing lerobot-rollout command with --policy.path=rubatotree/act-pick-black-cat and explicitly add --robot.use_degrees=true --fps=25. Cameras remain front and side, RGB 640ร—480 at 25 Hz. Set the control-loop FPS as well as the camera FPS: rollout otherwise defaults to 30 Hz. Observation state and action order: shoulder_pan, shoulder_lift, elbow_flex, wrist_flex, wrist_roll, gripper. The action chunk has 100 targets; replan after 5 actions with current observations. These are absolute positions, not deltas. No extra radian-to-degree conversion should be added around this adapted checkpoint.

Gripper alignment

The mapping uses the supplied hardware encoder range 2016โ€“3578 (1562 ticks), with p = 41.724679382926 * q + 7.282333466740, where q is the trained URDF gripper angle in radians and p is the LeRobot gripper value. The pinned model's nominal closed endpoint (-0.174533 rad) is aligned with hardware 0. This endpoint alignment is an explicit modeling assumption, not a measurement of the real jaw zero. The hardware driver bounds gripper commands to [0,100]. This mapping is specific to the supplied gripper travel; a different robot calibration needs another mapping.

The official SO101 model documentation states that the LeRobot gripper 0โ€“100 mapping is not yet represented in its URDF/MuJoCo files. The arm uses the nominal new-calibration mid-range zero convention. See deployment_units.json for assumptions and hashes.

Validation and training

The original training and offline_evaluation.json use radians throughout. Dataset: rubatotree/miracle-pick-black-cat at 1763c06683fc94f63d7d53863197b4fdaac99b10. Training records and data are unchanged. deployment_validation.json separately checks the adapted processors, strict checkpoint reload, identical model hashes and 6 real network frame probes. Maximum recovered action difference was 4.77e-07 rad; this tests software equivalence, not physical task success.

The original radian-interface miracle_256 policies moved to a central pose and stopped in the user's hardware tests without an interface adapter. This release fixes that confirmed unit mismatch. The adapted policy has not yet been tested on the physical robot. Nominal jaw-zero residuals, visual domain mismatch and closed-loop behavior remain to be evaluated; no real-robot success rate is claimed. All synthetic derivatives share one source group.

The original radian training checkpoint is preserved locally. For this main deployment release, all model input/output calls use degree/percent units.

Downloads last month
18
Safetensors
Model size
51.7M params
Tensor type
F32
ยท
Video Preview
loading

Dataset used to train rubatotree/act-pick-black-cat