Skip to content

Unitree G1 is a humanoid with 29 joints, made by Unitree Robotics. This model comes from MuJoCo Menagerie by Google DeepMind, under the BSD-3-Clause licence. Not made by Lucen Robotics. Listed as a reference model for simulation.

humanoid29 joints33.3 kg in simulation50 Hz

Use it from Python

The same download from a script or a notebook.

from lucen import Hub

hub = Hub()
hub.pull("lucen/unitree-g1", "./unitree-g1")

The module comes with the CLI. Python guide.

Unitree G1, standing in its home pose

Move its joints, or let it fall under gravity, in your browser. About 10 MB the first time. Open the full simulator

README

README.md

Unitree G1

Unitree G1 is a humanoid with 29 joints, made by Unitree Robotics. This model comes from MuJoCo Menagerie by Google DeepMind, under the BSD-3-Clause licence. The licence text is in LICENSE.

Not made by Lucen Robotics. Listed as a reference model for simulation.

The source's own README is kept unchanged as SOURCE_README.md.

How it was set up

The files come from unitree_g1 in MuJoCo Menagerie, at commit 822c2d8. The robot card was drafted from the model by lucen robot init, as in Add your robot.

The model file does not state the values below. Each one comes from the source beside it.

SettingValueWhere it comes from
Control rate50 HzPlayground g1/joystick.py ctrl_dt=0.02
Actionoffset from the default posePlayground g1/joystick.py: motor_targets = default_pose + action * action_scale
Action scale0.5Playground g1/joystick.py action_scale=0.5
What a policy sensesjoint positions, joint velocities, base angular velocity, gravity directionthe G1's joint encoders and IMU
Commandforward, sideways and turning speedPlayground's joystick command (vx, vy, yaw)
Everything elseread from the model filejoint order, the stand keyframe, ranges, and kp 500 with per-joint kv and force limits from the MJCF's own <position> actuators (Menagerie's README calls them "needs tuning").

The configs cited above, at the commits read:

  • Playground: MuJoCo Playground, commit 4057c14. Each robot's task file, under locomotion or manipulation, in its default_config().

No file from the source was changed. This README, the robot card and the robot's pictures are new.