Part II: Teleoperation and data collection · §26 of 43

Everything in §13 still applies. Specific to LeRobot, most of it learned the hard way on zeus:

  1. Clamp the base. An arm snap tipped the whole robot over once.
  2. Start-up snap: stock teleop enables at full stiffness and goes straight to the Mini’s reading. Use safe_teleop.py (§23.3); with stock tools, align first with compare_mini_follower.py.
  3. Mini zero = the pose at Enter. Calibrate hanging, gripper closed, wrists matching the follower, joint 5 mid-travel (§23.2).
  4. Swapped Minis or buses: wrong arm and inverted joints 2/7 (§18, §22). Use the by-id paths and the zeus mapping; never /dev/ttyACM*.
  5. Mismatched Mini calibration files are written into the Minis on connect. check_mini_calibration.py (run by the setup script and by safe_teleop.py) catches this.
  6. Silent zeros: a follower motor that doesn’t answer reads as 0° in LeRobot. safe_teleop.py checks replies; stock tools don’t.
  7. side missing → ±5° limits (arm seems stuck); side wrong → mirrored joint_2 limits allow motion into the torso.
  8. Unintended re-zeroing of the followers: a new --robot.id, a deleted cache directory, or c at the follower calibration prompt (§21).
  9. Torque off = arms fall: stock Ctrl+C, openarm-can-cli disable, and diagnose (enables, then disables at the end). safe_teleop.py holds until you press Enter.
  10. Ctrl+Z is not stop. It suspends the process with the buses still open; it resumes commanding on fg. Use Ctrl+C; clean up with kill -9 <pid>.
  11. Rerun can stall the loop (12.8 s freeze, then a catch-up jerk on zeus). Use --display_data=false for teleop/recording, and pkill -f "rerun --port=9876" for leftover viewers.
  12. Stiff gains (kp 240), no force feedback: the operator can’t feel contacts. Start with light, open-space tasks.
  13. Two stacks on one bus (§25).
  14. Policies (lerobot-rollout) start unramped: start every run from the training start pose, keep max_relative_target, press Ctrl+C once (the arms return to the start pose, then torque off). See §33–§35 and §42.