NVIDIA GEAR-SONIC locomotion controller with two operational modes:
| Model | File | Purpose |
|---|---|---|
| Planner | planner_sonic.onnx | Velocity → full-body trajectory |
| Encoder | model_encoder.onnx | MoCap clip → latent code |
| Decoder | model_decoder.onnx | Latent code → joint targets |
Models are downloaded from nvidia/GEAR-SONIC on HuggingFace on first use.
from roboharness.robots.unitree_g1 import ( SonicLocomotionController, SonicMode ) ctrl = SonicLocomotionController() action = ctrl.compute( command={"velocity": [0.3, 0.0, 0.0], "mode": SonicMode.WALK}, state={"qpos": qpos, "qvel": qvel}, )
from roboharness.robots.unitree_g1 import ( SonicLocomotionController, MotionClip ) ctrl = SonicLocomotionController() clip = MotionClip.from_csv_dir("path/to/dance_clip/") ctrl.set_tracking_clip(clip) action = ctrl.compute( command={"tracking": True}, state={"qpos": qpos, "qvel": qvel}, )