CoolFace
Datasetpublic

cloudwalk-research/gr00t-g1-grab-bottle-right-hand-v10

Grab-Bottle (right hand) - v10 (Break Down: v1 wandering detection on the merged set) LeRobot v2.1 dataset for the Unitree G1 right-hand bottle-grab task. Applies the v1 wandering-detection method ("Break Down") to the merge of the two source teleoperation sets: rising segments of the wrist's distance-to-goal curve are detected and the corresponding frames are removed, and each kept sub-segment becomes its own episode so no GR00T action chunk spans a cut. This is the family's… See the full description on the dataset page: https://huggingface.co/datasets/cloudwalk-research/gr00t-g1-grab-bottle-right-hand-v10.

sourceHugging Faceapache-2.0updated 3mo agoView on Hugging Face
0likes234downloads
Dataset Card

Grab-Bottle (right hand) - v10 (Break Down: v1 wandering detection on the merged set)

LeRobot v2.1 dataset for the Unitree G1 right-hand bottle-grab task. Applies the v1 wandering-detection method ("Break Down") to the merge of the two source teleoperation sets: rising segments of the wrist's distance-to-goal curve are detected and the corresponding frames are removed, and each kept sub-segment becomes its own episode so no GR00T action chunk spans a cut.

This is the family's "merged set curated like v2" dataset — the v2 distance-to-goal wandering-removal curation applied to the 105+115 merge (v2 itself only curates the 105-ep source). Its direct sibling is v11, which stacks DP speedup resampling on top of this Break Down pass.

metricvalue
source datasets105ep-v1 (DS1, 105 ep) + worst-positions-115ep-v3 (DS2, 115 ep)
output episodes371 (DS1 210 + DS2 141 + DS2 as-is 20)
total frames138,546
training samples (40-action chunks)~124,077
fps50
action horizon40 frames

Quick facts

Episodes371
Frames138,546 @ 50 fps
FormatLeRobot v2.1
Cameraego_view 640×480 (head), H.264 yuv420p, no audio
RobotUnitree G1 (29-DoF body) + Inspire FTP hands (7-DoF/hand: 6 finger joints + 1 grip pad, via InspireFTPGripMapper)
Task instruction"grab the bottle" (single task, RIGHT hand)
State dim43 (observation.state)
Actionaction.motion_token [64] (latent) + action.wbc [43] whole-body
Mean episode length~5.6 s (~373 f)
Sources105ep-v1 (105 ep) + 115ep-v3 (115 ep)
Curationv1 wandering detection ("Break Down"): distance-to-goal rise removal + sub-episode splitting
CollectionPICO 4 Ultra teleop (headset + 2 controllers, 3-pt VR) + 2 ankle trackers -> SMPL retargeting (CloudWalk Robotics Lab)
VisibilityPublic
LicenseApache-2.0

Collection setup

Same data collection as the 105-ep source set and the worst-positions 115-ep set — see those cards for the full setup. In brief:

  • —Robot: Unitree G1 (29-DoF body) + Inspire FTP hands (7-DoF/hand: 6 finger joints + 1 grip pad, via InspireFTPGripMapper)
  • —Whole-body controller: SONIC WBC
  • —Teleoperation: PICO 4 Ultra (headset + 2 controllers, 3-point VR tracking) + 2 ankle trackers -> SMPL retargeting
  • —Camera: Intel RealSense D435I on the G1 head; Hand control: grip buttons close the Inspire FTP right hand during the grasp
  • —Task prompt: the teleop demonstrations were collected under the task prompt "grab the bottle"; the same prompt is used to invoke the policy at inference (see the model cards' "Prompt conditioning" caveat).

Source datasets

DatasetEpisodes usedTreatment
105ep-v1 (DS1)all 105Break Down
115ep-v3 (DS2)eps 0-94Break Down
115ep-v3 (DS2)eps 95-114 (static)as-is (no curation)

DS2 episodes 95-114 are as-is (static / empty-scene episodes, ~5 cm wrist travel, no curation applied).

gr00t-g1-grab-bottle-right-hand-105ep-v1  +  worst-positions-115ep-v3
  └─ curate_merge_v5.py  (v1 wandering detection: "Break Down")
       └─ gr00t-g1-grab-bottle-right-hand-v10  ← this dataset (371 ep)

       └─ (+ DP "Speed Up" on top)  →  gr00t-g1-grab-bottle-right-hand-v11  (355 ep)

Action and state layout

This is a GR00T + SONIC dataset, not a flat-joint-vector dataset. The policy action is emitted as a 64-D latent `motion_token` (decoded by the SONIC whole-body controller into whole-body joint commands) plus 7-D left/right hand-joint targets — it only produces motion through the SONIC WBC + ZMQ deploy pipeline, not on a bare G1.

FieldShapeMeaning
observation.state43leftleg 6 + rightleg 6 + waist 3 + leftarm 7 + lefthand 7 + rightarm 7 + righthand 7
action.wbc43whole-body joint targets (same layout as observation.state)
action.motion_token64latent action token decoded by the SONIC WBC
observation.eef_state14left/right wrist pos (3) + abs quat (4), x2
observation.images.ego_view480×640×3head camera (video)

See meta/info.json for the full feature schema, including teleop.* retargeting fields and observation.* base state.

Curation method - Break Down (v1 wandering detection)

The right-wrist distance-to-goal curve is computed (wrist position vs the goal wrist position at the grasp). Rising segments — where the wrist moves away from the goal (back-and-forth "wandering" / dithering) — are detected and removed. Each remaining contiguous sub-segment becomes its own episode, so no GR00T action chunk (40 frames) spans a cut.

ParamValueMeaning
rise_thresh24.0 mm/swrist-velocity threshold for "rising" (wandering) detection
smooth_radius7 framessmoothing window (window = 15)
min_segment4 framesminimum kept sub-segment length
margin20 framesexplicit margin around cuts
min_gap0minimum gap between kept segments
safe_frames0frames preserved near the grasp
grasp_frac0.95fraction of the episode marking the grasp moment
min_window40 framesminimum window length (= action horizon)

This is the v1 wandering-detection method — the same family as v2's distance-to-goal curation, applied here to the merged 105+115 set (v2 itself curates only the 105-ep source).

What this dataset is - and is not

  • —Is: the family's "merged set curated like v2" dataset — v1 wandering detection (Break Down) applied to the 105+115 merge → 371 episodes. It pairs with v11 (which stacks DP speedup on top) to isolate the speedup effect given a fixed Break Down pass.
  • —Is not: speedup-resampled. No DP resampling is applied here — use v11 for the Break Down + Speed Up combination.
  • —Is not: the un-segmented source sets. Use the 105-ep / 115-ep sources for the raw distribution.
  • —Right-hand only, single camera, single task — see caveats below.

How to download

python
from huggingface_hub import snapshot_download

snapshot_download(
    repo_id="cloudwalk-research/gr00t-g1-grab-bottle-right-hand-v10",
    repo_type="dataset",
    local_dir="data/real/gr00t-g1-grab-bottle-right-hand-v10",
)

How to load

python
from lerobot.common.datasets.lerobot_dataset import LeRobotDataset

ds = LeRobotDataset(
    "gr00t-g1-grab-bottle-right-hand-v10",
    repo_id="cloudwalk-research/gr00t-g1-grab-bottle-right-hand-v10",
)
print(ds.num_episodes, ds.num_frames, ds.fps)

How to use for fine-tuning & inference

This set is intended for a future GR00T N1.7 fine-tune (Break Down curation on the merged set). Fine-tuning runs on NVIDIA B200 GPUs with the Isaac-GR00T stack. See the family model cards for the exact hyperparameters and the SONIC WBC deploy pipeline.

To run a resulting policy in inference (policy server), from an Isaac-GR00T environment:

bash
python -m gr00t.eval.run_gr00t_server \
    --model-path <checkpoint-dir> \
    --embodiment-tag UNITREE_G1_SONIC \
    --device cuda:0 --host 0.0.0.0 --port 5550

The server must be launched with the same UNITREE_G1_SONIC embodiment tag used in training. Closed-loop control of the G1 is driven by the SONIC WBC in GR00T-WholeBodyControl; see the NVlabs VLA inference tutorial.

Caveats

  1. 1.Right-hand-only, single task, single camera. Only the head ego_view was recorded — no wrist cameras. Left-hand and locomotion dims reflect the largely stationary demonstrations.
  2. 2.Break Down only (no speedup). v10 applies v1 wandering detection only; no DP resampling. The v11 variant stacks DP Speed Up on top — the v10↔v11 pair isolates the speedup effect given a fixed Break Down pass.
  3. 3.Static episodes kept as-is. DS2 eps 95-114 (empty scenes, ~5 cm wrist travel) are included un-curated; after Break Down they yield no wandering to remove.
  4. 4.No fine-tune yet. A GR00T N1.7 fine-tune on this set is pending; no checkpoints published.
  5. 5.Deployment needs the SONIC stack. Actions are motion_token + hand joints for the UNITREE_G1_SONIC embodiment; they only produce motion through the SONIC WBC + ZMQ deploy pipeline, not on a bare G1.

Lineage

This set is the Break Down (v1 wandering detection) member of the family on the merged set — the "merged set curated like v2" dataset. Its direct sibling is v11 (Break Down + DP Speed Up on the same merged sources). The full family:

DatasetDerived fromEpisodesFramesNotes
105ep-v1- (source)10570,680Base teleoperation set -> v1 fine-tune
worst-positions-empty-115ep-v3- (source)11578,621Worst-positions + 20 empty-scene episodes (eps 95-114, no bottle/no movement)
right-hand-v2105ep-v121062,772Distance-to-goal wandering removal -> v2 fine-tune (production champion, 10/12)
zero-wandering-smooth-radius-5105ep-v141748,577Zero-wandering r=5 (most aggressive) -> v4 fine-tune (6/12)
zero-wandering-smooth-radius-10105ep-v137149,578Zero-wandering r=10 (experiment, no fine-tune)
zero-wandering-smooth-radius-15105ep-v134250,634Zero-wandering r=15 (experiment, no fine-tune)
zero-wandering-smooth-radius-20105ep-v131450,496Zero-wandering r=20 (least aggressive) -> v5 fine-tune (9/12)
radius-20-merged105ep-v1 + 115ep-v3502120,017Both sources, zero-wandering r=20, grasp-frame preservation -> v6 fine-tune (8/12)
speedup-3mm-v1105ep-v1 + 115ep-v322060,163DP resample 3mm/frame, NO segment removal -> v7 fine-tune (7/12)
speedup-3mm-cycle-removed-v1105ep-v1 + 115ep-v340547,944DP resample + cycle removal -> v8 fine-tune (1/12)
speedup-2mm-v3right-hand-v2 (curated)19332,786DP resample 2mm/frame on curated v2 -> v9 fine-tune (8/12, 0 non-converge)
v10 (this)105ep-v1 + 115ep-v3371138,546v1 wandering detection ("Break Down") on the merge; no speedup (no fine-tune yet)
v11105ep-v1 + 115ep-v335587,148Break Down + DP Speed Up (2mm, dynamic) on the merge (no fine-tune yet)

Attribution

Collected at the CloudWalk Robotics Lab (CW-RL) using PICO 4 Ultra teleoperation on the Unitree G1 with the SONIC whole-body controller, then curated with the v1 wandering-detection method ("Break Down"). Stored in the LeRobot v2.1 format.

Citation

bibtex
@misc{cwrl_grab_bottle_v10_2026,
  title        = {GR00T G1 "grab the bottle" --- right-hand dataset curated with v1 wandering detection ("Break Down") on the merged 105+115 set (371 episodes, SONIC WBC)},
  author       = {{CloudWalk Robotics Lab}},
  year         = {2026},
  howpublished = {Hugging Face dataset repository},
  url          = {https://huggingface.co/datasets/cloudwalk-research/gr00t-g1-grab-bottle-right-hand-v10}
}

@article{gr00t_n1_2025,
  title         = {{GR00T N1}: An Open Foundation Model for Generalist Humanoid Robots},
  author        = {{NVIDIA}},
  year          = {2025},
  eprint        = {2503.14734},
  archivePrefix = {arXiv},
  url           = {https://arxiv.org/abs/2503.14734}
}

@article{sonic_2025,
  title         = {{SONIC}: Whole-Body Controller for Humanoid Robot Teleoperation},
  year          = {2025},
  eprint        = {2511.07820},
  archivePrefix = {arXiv},
  url           = {https://arxiv.org/abs/2511.07820}
}

@software{lerobot2024,
  title  = {{LeRobot}: State-of-the-art Machine Learning for Real-World Robotics in {PyTorch}},
  author = {{Hugging Face}},
  url    = {https://github.com/huggingface/lerobot},
  year   = {2024}
}

License

Released under Apache-2.0 by CloudWalk Research. Demonstrations were collected on hardware owned by CloudWalk; the SONIC WBC and GR00T stacks retain their respective upstream licenses. Research preview — closed-loop deployment on a physical humanoid requires human oversight.