Skip to content

Releases: dsl-robotics/skatearm

ACT reach - dataset and trained checkpoint

Choose a tag to compare

Artifacts for the ACT visuomotor reach pipeline (see the README deep-dive).

  • reach_act_dataset.tar.gz — the 40-episode bimanual-reach LeRobotDataset v3.0 (mp4 + parquet, ~6 MB). Load with LeRobotDataset(...) or retrain ACT directly from it.
  • act_reach_checkpoint.tar.gz — a trained ACT policy (ResNet-18 + Transformer, use_vae=false), including the LeRobot pre/post normalization processors. Extract and load with ACTPolicy.from_pretrained(...). A representative single-seed run; retrain any seed with --seed N on the dataset above.
  • act_reach_eval_3seeds.tar.gz — the raw evaluation data behind the README's headline numbers: per-episode reach errors for 3 independent training seeds (24 held-out rollouts each), the no-vision baseline, and a summary. Result: right 5.6 ± 0.6 cm, left 5.2 ± 0.3 cm, 69 % ± 9 % within 8 cm; no-vision baseline ~19.7 cm / 0 % — so the ~5 cm reach is the policy using the camera, not replaying a trajectory.

The skt_v3 MuJoCo model needed to render / roll out in the twin belongs to Rbotic/skate_teleop and is not redistributed here — fetch it via sim/make.py --clone.

Reproduction scripts: tools/skate_commander/examples/act_reach/. Debugging write-up: the ACT policy that reached for garbage.

v0.8.5 — LeRobotDataset v3.0 export (teach-in / teleop → training-ready data)

Choose a tag to compare

LeRobotDataset v3.0 export — an opt-in ⤓ LeRobot button that turns recorded cockpit demos into a LeRobotDataset v3.0 (the Hugging Face / LeRobot standard), so sim demos train ACT / Diffusion Policy / π0 with zero glue.

  • Record: each REC start→stop is one episode — the 14 bimanual arm joints sampled at 30 fps (a dense recorder rides the existing teach-in REC hook).
  • Export: POST /api/lerobot/export (or the button) writes observation.state / action (ALOHA joint-position convention), per-episode + global stats, tasks and schema into lerobot_datasets/<name>.
  • Windows-native & dependency-light: the writer uses only numpy + pandas + pyarrowno torch / lerobot / ffmpeg — imported lazily, so recording never touches them and the cockpit stays intact if they're missing.
  • Validated end-to-end: the format was grounded against real lerobot 0.4.4 on Linux, and a live cockpit recording round-tripped — 2 episodes / 44 frames with real captured motion loaded cleanly with LeRobotDataset(...).

Fully optional and non-breaking. 2 new dep-gated tests (82 headless tests pass).

v0.8.4 — optional rerun.io telemetry (meshed twin + scrub-able time-series)

Choose a tag to compare

Optional rerun.io telemetry — an opt-in debug view (--rerun / SKATE_RERUN=1) that streams the live cockpit into a rerun viewer beside the browser twin.

Per tick it logs:

  • the full meshed robot in 3D — every link's real MuJoCo visual mesh moved by its live world pose (smooth per-vertex normals for solid shading, not a stick figure)
  • both TCP points and the active drag-IK targets
  • the user's virtual keep-out obstacles
  • a tree of time-series — per-arm joint angle & velocity, drag-IK position / orientation error, manipulability

…so rerun's timeline scrubs the whole run.

Fully optional and non-breaking: the heavy rerun / mujoco imports are lazy, the flag is wrapped in try/except, and every log call swallows its own errors — a missing rerun-sdk or a viewer hiccup can never disturb the cockpit tick loop. Off by default; the numpy DLS drag-IK and the browser twin are unchanged.

1 new model-gated test (80 headless tests pass).

v0.8.3 — optional mink IK backend (proactive self-collision avoidance)

Choose a tag to compare

Skate Commander v0.8.3 — optional mink IK backend

An opt-in drag-IK backend built on mink's MuJoCo differential-IK QP, adding what the default pure-numpy DLS can't: proactive self-collision avoidance. The arm now glides to a safe standoff from the torso / legs / the other arm inside the solve, instead of the reactive capsule-guard reverting a blocked step (which could stall).

Measured on skt_v3: driving the hand 22 cm into the torso ends at a +14 mm body standoff instead of −90 mm of penetration.

Highlights

  • --ik mink / SKATE_IK=mink — opt in; the numpy DLS stays the default and automatic fallback (a missing mink / qpsolvers dependency or a solver error can never break drag-IK).
  • Same one-glide-step-per-tick contract; both arms; 6-DoF orientation and null-space comfort posture preserved; every non-target joint velocity-pinned.
  • 3 new model-gated tests — 79 headless tests pass.

Non-breaking: default behaviour is unchanged.

Skate Commander v0.8.0 — operator, observability & scene tooling

Choose a tag to compare

The feature-complete pre-hardware release of Skate Commander, the browser cockpit for the R.Botic Skate digital twin — still early access and sim-first (real-hardware support lands when the Skate reaches Riga).

Highlights

  • Observability suite — a collision-mesh display (the guard's real capsule/box model in 3D), a TCP-force overlay (end-effector force from the joint torques), trajectory replay + scrub with CSV export, an RViz robot_monitor-style diagnostics panel, and per-joint limit meters.
  • Scene & planning — spawn reachable markers and drag a 3D gizmo, with one-click go-to, send-to-program and bimanual reach; user-placeable virtual keep-out obstacles of any size that the RRT planner routes around; a planning preview that draws a translucent ghost robot and the planned collision-free route behind an Approve / Cancel gate; and save / load of the whole scene.
  • Programs — control flow in the PROG tab: a +FLOW snippet bar with rbt.ok(), blocked(), contact() and near() condition helpers.
  • Operator tools — a drive / motion-tuning panel, a Stage properties-inspector, viewport display settings, plus the live telemetry plots, TF frame tree, sim transport, measure tool, stats HUD and Stage search.

Notes

  • Camera tools parked. The sim-camera UI and its depth-derived overlays — work-camera point cloud, multi-object smart-pick, vision-guided pick and IBVS visual servoing — are pulled behind a "Camera tools — under development" stub. They remain sim-validated and re-enable with a real connected depth camera; the vision backend stays in the tree as reference.
  • Sim-first; the real Skate is en route to Riga. Camera passthrough, real-gripper tool presets and on-hardware validation are the road to v1.0.
  • 58 headless tests pass. The official skt_v3 model and meshes are not redistributed — clone Rbotic/skate_teleop (the launcher finds it automatically).

Skate Commander v0.7.0 — product hardening

Choose a tag to compare

First product-hardening release of Skate Commander, the web cockpit for the R.Botic Skate digital twin — still early access and sim-first (real-hardware support lands when the Skate reaches Riga).

Highlights

  • One-command launchpython -m skate_commander auto-detects your skate_teleop model, builds the sim + collision models on first run, starts the sim endpoint, and opens the cockpit. New flags: --real, --no-browser, --port; the old explicit flags remain as advanced overrides.
  • Connection robustness — the UI detects a downed server or stalled telemetry (it dims/freezes the stale chips), auto-reconnects with backoff, and the backend ignores a bad command instead of dropping the socket.
  • Program-editor UXrbt API autocomplete (or Ctrl-Space), a library of example programs, and error/step line highlighting in the editor.
  • Docs site + rbt API referencehttps://dsl-robotics.github.io/skatearm/commander.html

Notes

  • Sim-first; the real Skate is en route to Riga. Camera passthrough and real-gripper tool presets are v0.8+ (need hardware).
  • The official skt_v3 model/meshes are not redistributed — clone Rbotic/skate_teleop (the launcher finds it automatically).

SkateArm v0.6 - Skate Commander cockpit (NL programs + vision-guided pick)

Choose a tag to compare

First tagged release of SkateArm - an open bimanual work-cell + browser cockpit for the R.Botic Skate robot, sim-first in MuJoCo.

Skate Commander (web cockpit): 3D digital twin (FK <0.001 mm vs MuJoCo); joint/cartesian jog; drag-IK with null-space comfort; mirror mode; Python programs with Click-to-Step; natural-language to program; teach-in recording; vision-guided pick (camera to world pose ~2 mm to IK grasp); collision guard (self + arm-vs-arm, path-interpolated); E-STOP-first deadman safety.

Foundations: skate_ros2 (one UDP wire for sim + the real robot); autonomous work-cell Phase 1 (GRAFCET assembly cycle + camera QC + SCADA dashboard).

Live demo + media: https://dsl-robotics.github.io/skatearm/ - MIT licensed.