Unitree G1
Unitree's 1.32 m bipedal humanoid, about 35 kg, with 23 to 43 joints depending on version. In LeRobot, the lower body is driven by a pretrained RL locomotion controller (GR00T-WholeBodyControl or Holosoma). Data recording and learned policies (e.g. π0.5 with RTC) target upper-body loco-manipulation, teleoperated with the Homunculus exoskeleton and a joystick.
LeRobot native since 0.4.3verified 2026-10-24aka G1, G1 EDU, Unitree G1 EDU, unitree_g1
Policies on Unitree G1 8 with evidence · 2 unknown
| Policy | State | Tier | Verified | Detail |
|---|---|---|---|---|
| ACT Imitation | works with caveats | T1 · upstream documented | 2026-10-24 1d ago | Documented by Unitree in its unitree_IL_lerobot repository, which pins LeRobot as a git submodule (commit a5b29d4, November 2025) and deploys with its own eval_robot/eval_g1.py script, not through LeRobot's native unitree_g1 robot or lerobot-rollout. |
| Diffusion Policy Imitation | works with caveats | T1 · upstream documented | 2026-10-24 1d ago | Documented by Unitree in its unitree_IL_lerobot repository, which pins LeRobot as a git submodule (commit a5b29d4, November 2025) and deploys with its own eval_robot/eval_g1.py script, not through LeRobot's native unitree_g1 robot or lerobot-rollout. |
| GR00T N1.7 VLA | works with caveats | T1 · upstream documented | 2026-10-24 1d ago | Documented in NVIDIA's Isaac-GR00T repository (embodiment tag UNITREE_G1_SONIC), not through LeRobot: whole-body motion is executed by the GR00T Whole-Body Control / GEAR-SONIC robot-side controller, with GR00T N1.7 served from the GR00T policy server. |
| π0-FAST VLA | partial | T3 · community reported | 2026-10-25 today | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| π0 VLA | works with caveats | T1 · upstream documented | 2026-10-24 1d ago | Documented by Unitree in its unitree_IL_lerobot repository, which pins LeRobot as a git submodule (commit a5b29d4, November 2025) and deploys with its own eval_robot/eval_g1.py script, not through LeRobot's native unitree_g1 robot or lerobot-rollout. |
| π0.5 VLA | works | T1 · upstream documented | 2026-10-24 1d ago | |
| SmolVLA VLA | partial | T3 · community reported | 2026-10-25 today | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
| X-VLA VLA | partial | T3 · community reported | 2026-10-25 today | Training evidenced by public checkpoint(s); on-robot inference not documented by a primary source. |
No verified evidence, but both are available in LeRobot (ecosystem context): EO-1, Evo-1, Fast-WAM, HIL-SERL, LingBot-VA, MolmoAct2, Multitask DiT, TD-MPC, VLA-JEPA, VQ-BeT, WALL-OSS.
Not yet verified: OpenVLA-OFT, OpenVLA. Have evidence?
Specifications
- Degrees of freedom
- 7 (LeRobot config assumes the 29-joint layout: per arm 4 (shoulder pitch/roll/yaw, elbow) + 3 wrist (roll/pitch/yaw). Unitree's base G1 (23 DoF) lists 5 DoF per arm. LeRobot docs state that both 29- and 23-DoF variants are supported.)src
- Arms
- 2
- Actuators
- Low-inertia internal-rotor PMSM joint motors, dual encoders (per Unitree)src
- Payload
- ?–3000 gsrc
- Price (USD)
- $13500 (Base G1, tax and shipping excluded, per Unitree. The G1 EDU, the version Unitree lists with secondary-development support, is "Contact sales".)src
- Homepage
- www.unitree.com/g1/
- Built-in sensors
- Microphone array
- Teleoperation
- Homunculus exoskeleton, 7-DoF arms (unitree_g1 teleoperator), Gamepad/joystick for locomotion
Unitree marks secondary development as available only on the G1 EDU ("/" for base G1), so low-level SDK control as used by LeRobot implies the EDU. Built-in sensing per Unitree: depth camera + 3D LiDAR + 4-mic array. LeRobot reads the head camera through ZMQ. Arm maximum load is about 2 kg (G1) or 3 kg (G1 EDU) and varies greatly with arm posture.
Framework support
| Framework | Support | Since | Type string | Docs |
|---|---|---|---|---|
| LeRobot | nativesrc | 0.4.3 | unitree_g1 | docs |
| LeRobot: Uses unitree_sdk2_python over a ZMQ bridge, with run_g1_server.py on the robot. Locomotion comes from a pretrained lower-body controller (--robot.controller=GrootLocomotionController or HolosomaLocomotionController) steered by gamepad. Loco-manipulation teleop uses the Homunculus exoskeleton (--teleop.type=unitree_g1). MuJoCo sim via --robot.is_simulation=true. Docs show π0.5 fine-tuning and RTC inference via lerobot-rollout. Base support arrived in 0.4.3 (PR #2530), and the whole-body-control implementation in 0.5.0 (PR #2876). Arm IK needs pinocchio from conda-forge. | ||||
Sources
- T1 · upstream documentedofficial-docssource 2026-08-03verified 2026-10-24 (1d ago)lerobot 0.6.1
LeRobot README lists Unitree G1 among natively supported hardware.
“SO100, LeKiwi, Koch, HopeJR, OMX, EarthRover, Reachy2, Gamepads, Keyboards, Phones, OpenARM, Unitree G1, reBot B601.”
https://github.com/huggingface/lerobot/blob/v0.6.1/README.md - T1 · upstream documentedofficial-docssource 2026-08-03verified 2026-10-24 (1d ago)lerobot 0.6.1
G1 guide: teleop, locomanipulation training, sim; 29 and 23 DoF; GR00T or Holosoma locomotion controllers.
“You can teleoperate, train locomanipulation policies, test in sim, and more. Both 29 and 23 DoF variants are supported.”
https://github.com/huggingface/lerobot/blob/v0.6.1/docs/source/unitree_g1.mdx - T1 · upstream documentedofficial-docssource 2026-08-03verified 2026-10-24 (1d ago)lerobot 0.6.1
Lower body is a pluggable locomotion controller; upper-body loco-manipulation via exoskeleton.
“We provide a loco-manipulation solution via the Homunculus Exoskeleton — an open-source 7 DoF exoskeleton for whole-body control.”
https://github.com/huggingface/lerobot/blob/v0.6.1/docs/source/unitree_g1.mdx - T1 · upstream documentedsource-codesource 2026-08-03verified 2026-10-24 (1d ago)lerobot 0.6.1
unitree_g1 config: 29 default joint positions, 250 Hz control loop, optional lower-body controller.
“# Lower-body controller class name, e.g. "GrootLocomotionController" or # "HolosomaLocomotionController". None disables it. controller: str | None = None”
https://github.com/huggingface/lerobot/blob/v0.6.1/src/lerobot/robots/unitree_g1/config_unitree_g1.py - T1 · upstream documentedrelease-notessource 2026-01-22verified 2026-10-24 (1d ago)lerobot 0.4.3
Unitree G1 first released in v0.4.3.
“Feat/add unitree g1 robot by @nepyope in https://github.com/huggingface/lerobot/pull/2530”
https://github.com/huggingface/lerobot/releases/tag/v0.4.3 - T1 · upstream documentedrelease-notessource 2026-03-09verified 2026-10-24 (1d ago)lerobot 0.5.0
Whole-body-control implementation for G1 released in v0.5.0.
“feat(robots): Unitree G1 WBC implementation by @nepyope in https://github.com/huggingface/lerobot/pull/2876”
https://github.com/huggingface/lerobot/releases/tag/v0.5.0 - T1 · upstream documentedvendor-docsverified 2026-10-24 (1d ago)
Unitree G1 spec table: 23 (G1) / 23-43 (EDU) DoF, 5 DoF per arm, arm max load ~2 kg / ~3 kg.
“Arm Maximum Load【2】 About 2Kg About 3Kg”
https://www.unitree.com/g1/ - T1 · upstream documentedvendor-docsverified 2026-10-24 (1d ago)
Unitree G1 price US $13.5K (base); EDU contact sales; secondary development EDU only.
“Price(Tax and Shipping cost excluded) US $13.5K Contact sales”
https://www.unitree.com/g1/