Downloads · 30 days
0
oku006/bussing-pi05-droid-ownstats
bussing-pi05-droid-ownstats is a machine learning model from oku006. Use it for the machine learning task on the model card, and read the license before you ship it in a product.
The current, tested deliverables are: - π0.5: oku006/bussing-pi05-droid via branch pi05-joint-velocity of sombit888/robotevals - whiteboard: oku006/bussing-whiteboard-act via branch whiteboard-joint-velocity
Downloads · 30 days
0
Access
Public
Updated Aug 24, 2026
Repo size
12.4 GB
Likes
0
Public
Click a slice to open those files.
Other12.4 GB · 100%
From the Hugging Face model README
The current, tested deliverables are:
oku006/bussing-pi05-droid via branch pi05-joint-velocity of sombit888/robot_evalsoku006/bussing-whiteboard-act via branch whiteboard-joint-velocityThis repository is kept only as history/provenance. (21 Aug 2026)
Same as oku006/bussing-pi05-droid
except the normalization statistics are computed from the bussing episodes
instead of reused from DROID.
Measured at the same horizon, the two are near-identical and the DROID-stats version is marginally ahead (see the table below). The motivation for trying this was that the bussing teleoperation is ~5× slower than DROID's average (joint velocity std 0.03–0.05 vs 0.15–0.31), so DROID's normalization compresses our action range. In practice that did not translate into better predictions — openpi's advice to reuse the pretrained statistics holds up.
Kept public because it is a genuine alternative worth trying on hardware: it commands slightly more motion (0.928 vs 0.921), and offline metrics do not settle which behaves better in a closed loop.
hf download oku006/bussing-pi05-droid-ownstats --local-dir ./ckpt
# paste train_config_snippet.py into openpi/src/openpi/training/config.py
python scripts/serve_policy.py \
--policy.config=pi05_droid_bussing_ownstats \
--policy.dir=./ckpt
policy_config:
model_config:
model_id: pi05_droid_bussing_ownstats # contains "droid", passes the assert
checkpoint_dir: /path/to/ckpt
flip_gripper: False # <-- trained on the raw recorded convention
action_space: joint_velocities
flip_gripper must be False. The flip converts this robot's gripper
convention into DROID's for the stock model; this checkpoint was fine-tuned on
the raw recorded values (1.0 = open, ~0.3 = closed), so flipping inverts it.
Standard DROID contract, no conversion step.
| observations | exterior_image_1_left, wrist_image_left, joint_position (7), gripper_position (1), prompt |
| actions | 8-d: 7 joint velocities (rad/s) + gripper position |
| action horizon | 16, first 8 executed |
All three checkpoints, identical protocol — same 5 held-out episodes, same 48 samples, same 8-step horizon:
| metric | this (own stats) | DROID stats | ACT |
|---|---|---|---|
| velocity error (rad/s) | 0.0190 | 0.0187 | 0.0203 |
| beats zero-motion baseline | 28.9% | 29.9% | 24.1% |
| gripper error | 0.0097 | 0.0073 | 0.0349 |
| motion ratio (1.0 = human) | 0.928 | 0.921 | 0.940 |
| joint error, 8 executed steps | 0.0289 | 0.0286 | 0.0307 |
| clipped by controller | 2.8% | 1.8% | 2.1% |
Both π0.5 variants clearly beat the ACT policy on the gripper channel — ~4× lower error — which matters directly for whether a grasp closes at the right moment. Between the two π0.5 variants the gap is under one point on every metric, i.e. effectively a tie.
33 of 38 episodes used for training, 5 held out. One task. No generalization to new objects or layouts expected. All recordings start from ≈ the same home pose (1 cm spread across all 38), so starting far from it is out of distribution.