You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
4.4 KiB
4.4 KiB
LeRobot + GR00T-WBC Integration for Unitree G1
Source: https://huggingface.co/docs/lerobot/unitree_g1 Fetched: 2026-02-13 Type: GitHub Repository / Documentation
Description
LeRobot (by HuggingFace) provides first-class support for the Unitree G1 humanoid robot, integrating NVIDIA's GR00T-WholeBodyControl as a locomotion backend. The integration enables end-to-end workflows from robot connection to running whole-body control policies, data collection, and imitation learning. Unitree also maintains a separate unitree_IL_lerobot fork that extends LeRobot with G1-specific data collection and training pipelines.
Key Features / Contents
LeRobot G1 Integration (HuggingFace Official)
- G1 Robot Class: Handles low-level read/write operations to/from the humanoid
- ZMQ Socket Bridge: Remote communication and camera streaming over WLAN, Ethernet, or directly on-robot
- Locomotion Policies: Supports NVIDIA GR00T and Amazon FAR Holosoma controllers
- MuJoCo Simulation Mode: Test policies without physical robot by setting
is_simulation=True - Dual DOF Support: Both 29-DOF and 23-DOF G1 EDU versions supported
Unitree IL LeRobot (Unitree Official Fork)
- Multiple End-Effectors: Dex1, Dex3, Brainco, and Inspire1 dexterous hands
- Data Conversion: Transforms Unitree native JSON format into LeRobot v3.0 dataset structure
- Policy Architectures: ACT, Diffusion, Pi0, Pi05, and GR00T policies
- Real-world Evaluation Pipeline: Scripts for testing trained policies on physical robots
- IsaacLab Simulation: Integration with unitree_sim_isaaclab for virtual validation
G1 Relevance
This is the primary imitation learning framework for G1 manipulation and locomotion tasks.
Connection Setup
- G1 Ethernet IP fixed at
192.168.123.164 - SSH credentials:
unitree@192.168.123.164(password:123) - WiFi can be enabled on the G1's Orin for wireless operation
Architecture
- Robot Server runs on the G1's Jetson Orin (
run_g1_server.py) - Remote Client runs on workstation, sends control commands via ZMQ
- Locomotion Controller wraps GR00T-WBC or Holosoma policies
Installation / Usage
On the G1 Robot (Orin)
ssh unitree@192.168.123.164
conda create -y -n lerobot python=3.10
conda activate lerobot
git clone https://github.com/huggingface/lerobot.git
cd lerobot
pip install -e '.[unitree_g1]'
git clone https://github.com/unitreerobotics/unitree_sdk2_python.git
cd unitree_sdk2_python && pip install -e .
# Start robot server (keep running)
python src/lerobot/robots/unitree_g1/run_g1_server.py
On Workstation
conda create -y -n lerobot python=3.10
conda activate lerobot
git clone https://github.com/huggingface/lerobot.git
cd lerobot
pip install -e '.[unitree_g1]'
git clone https://github.com/unitreerobotics/unitree_sdk2_python.git
cd unitree_sdk2_python && pip install -e .
# Update robot IP in config
# Edit src/lerobot/robots/unitree_g1/config_unitree_g1.py
# Set robot_ip to your robot's WiFi IP
# Run GR00T locomotion
python examples/unitree_g1/gr00t_locomotion.py --repo-id "nepyope/GR00T-WholeBodyControl_g1"
# Run Holosoma locomotion
python examples/unitree_g1/holosoma_locomotion.py
Unitree IL LeRobot Data Pipeline
- Collection: Use
avp_teleoperatetool for teleoperated data gathering - Organization: Sort and rename episodes sequentially (episode_0, episode_1, ...)
- Conversion: Transform JSON to LeRobot v3.0 format with robot-specific configs
- Training: Train policies (ACT, Diffusion, Pi0, GR00T) on standardized datasets
- Evaluation: Test on real robots or IsaacLab simulation
Dependencies
- Python 3.10
- Unitree SDK2 Python (requires CycloneDDS v0.10.2)
- FFmpeg 7.1.1 (for video processing)
- Pinocchio (for kinematics)
Related Resources
- LeRobot G1 Docs
- unitree_IL_lerobot - Unitree's official LeRobot fork
- GR00T-WholeBodyControl - Locomotion backend
- Amazon FAR Holosoma - Alternative locomotion controller
- lerobot/unitree-g1-mujoco - MuJoCo model on HuggingFace
- Unitree SDK2 Python - Low-level robot communication
Last updated in source documentation: December 2025