Microduck: climbing ladder

Cream Microduck climbs and recovers

Watch the selected 11.77-second video · Training and reproduction · Runtime contract · Ladder models and Cycles renders

The root policy.onnx is the climbing policy, identical to models/climber.onnx. The get-up policy is models/getup.onnx.

Two normalized ONNX actors and full PPO checkpoints reproduce the selected desk-climbing experiment: models/climber.onnx / climber.pt and models/getup.onnx / getup.pt. Hashes are in models.json. The GitHub experiment directory contains the environment source, dependency lock, continuation scripts, training and validation banks, simulation geometry, detailed evaluations and recorded trajectory. Printable ladder models and generators are in the GitHub hardware directory.

Both actors use the standard 61D observation with all 13 command slots zero. Switching currently uses simulator foot–desktop contact and root position; this is not an implemented onboard detector. An onboard alternative is to use IMU-based fall detection to switch into get-up recovery. The upstream Microduck runtime already enables a fall-response sequence by default during ordinary driving, eventually returning control to the standing policy. Reusing that machinery should make a fall-triggered switch straightforward to implement. It is not yet wired into this climbing skill: the existing reflex is disabled during active skills, so the handoff and its thresholds still need integration and testing for climbing. See the runtime contract for the distinct climbing and recovery gains, filters and previous-action state. No hardware validation is claimed.

Software is Apache-2.0. The hardware designs on GitHub and the renders below have separate CC-BY-NC-SA-4.0 terms in LICENSE-HARDWARE; generated parts remain prototypes, with untested module joints and printing tolerances. Consult the hardware README before manufacture.

Modular ladder — Cycles renders

The current ladder uses pin-free friction-fit rail joints. Integrated tenons slide into sockets in both side rails and the central spine. Chamfered tips and narrow friction ribs give a snug fit without securing pins or pin holes. The floor base uses the same docking arrangement. All 27 treads remain whole and at their evaluated positions.

Assembled modules Exploded friction-fit joints
Floor base assembled Floor base exploded

The default ribs have 0.05 mm nominal interference per face. Side-rail and spine fit coupons offer 0, 0.025, 0.05 and 0.10 mm variants; print these first and choose a hand-assembled fit for your printer. Retention force and wear have not been measured. Friction is not a positive lock.

Unchanged threaded table clamp Screw and pressure pad exploded

Complete friction-fit ladder and mounts

Print files, fit selection, assembly instructions and generators. In the GitHub hardware directory, use friction-fit/ or friction-fit-3step/; both are variants of the current design; older revisions remain on the private development branch. Both segmentations have geometric packing orientations for a 256 mm cube; supports and printer exclusions still need slicing checks.

These are geometrically checked prototypes, not physically printed or load-tested parts. Checks distinguish intended rib interference from unintended collisions. The threaded clamp, selected policy and evaluated scene remain unchanged. Cycles renders use the actual exported parts.

Architecture graph for HannesVonEssen/microduck-climb. Open in hfviewer
Downloads last month
55
Video Preview
loading

Collection including HannesVonEssen/microduck-climb