Skip to main content

Release notes

Every package keeps its own CHANGELOG.md in Keep a Changelog format — this page summarizes current status and links to each. Treat the linked file as authoritative; this page is a snapshot.

PackageLatest versionCurrently unreleased / in progress
soarm_sdk0.4.0A dashboard-wide Home button (recovers a stuck arm to a known folded-flat pose) and Shutdown button
imu_sdk0.2.0License file added; core ImuReader/ImuData and both firmware variants shipped in 0.1.0
m5teleop0.1.0ArmInterface now delegates transport to soarm_sdk (LeRobotRobot/NullRobot) instead of wrapping lerobot directly; --dry-run now tracks commanded state instead of reporting zeros
soarm_lerobot0.1.0License + packaging metadata added; recording/data pipeline shipped in 0.1.0, training loops remain stubs
camera_calibration0.1.0License file added; calibration/detection/generation/estimation tooling shipped in 0.1.0
soarm_mjlab0.1.0Phase 0–1 scaffolding and the Reach task shipped; see Roadmap for phase-by-phase status
soarm_tamp0.1.0Initial development — nothing released yet; dashboard --rerun flag and shared CLI wiring with soarm_sdk.cli.dashboard landed most recently

Notable cross-package changes​

  • m5teleop ↔ soarm_sdk convergence: m5teleop's ArmInterface used to wrap lerobot's SOFollower directly; it now delegates to soarm_sdk.LeRobotRobot/NullRobot, so teleop's arm object satisfies the same RobotInterface a planner or an RL policy would drive — the two servo stacks in this workspace are no longer parallel implementations.
  • soarm_sdk joint-limit hardening: EEPROM angle limits are now read and checked at connect time (read_angle_limits()), and soarm-widen-limit formalizes the procedure for correcting a limit that's narrower than the physical mechanism allows — see Troubleshooting § A joint silently stops moving.