Skip to content
LeRobot — Dataset repository updates· lerobot·· 5 days agoSignalEditorial score75

LeRobot Robot URDF Dataset

lerobot/robot-urdfs

Summary

The LeRobot repository hosts a collection of Universal Robot Description Format (URDF) models for multiple robotic systems. The dataset includes detailed specifications for joints, meshes, and licenses for robots such as the SO-101 follower and leader arms, bimanual OpenArm, Unitree G1 with various hand configurations (Dex3-1, Dex1-1, Inspire), Pollen Robotics' Grabette, Menlo Research's Asimov 1 humanoid, and I2RT's YAM arm. Each robot folder contains the URDF file and associated meshes referenced by relative paths, ensuring that downloaded folders load directly. The dataset supports both standard URDF formats with STL/DAE meshes and optimized GLB versions for web-based loading. Usage examples demonstrate downloading specific robot subsets via Hugging Face or loading models directly in a browser using URDFLoader.

Editorial context

This repository provides URDF models and meshes for various robots within the LeRobot ecosystem, including SO-101, OpenArm, Unitree G1 variants, Grabette, Asimov 1, and YAM, facilitating simulation-to-real alignment and data loading.

Source: LeRobot — Dataset repository updates · Read original article ↗

Article text · Original source · English

URDF models of the robots in LeRobot datasets and tools. Each robot is a folder holding its URDF and meshes, referenced by relative paths, so a downloaded folder loads as is. Joints are in radians (meters for prismatic ones), like any URDF.

The OpenUSD versions of SO-101, OpenArm and the Unitree G1s carry these URDFs' link and joint names, so a dataset's joint values drive both the same way.

Robot URDF Moving joints Meshes License
SO-101 follower so101/so101_new_calib.urdf 6 revolute STL Apache-2.0
SO-101 leader so101/so101_leader_new_calib.urdf 6 revolute STL Apache-2.0
SO-100 so101/so100.urdf 6 revolute STL Apache-2.0
OpenArm, bimanual openarm/openarm_bimanual.urdf 14 revolute, 4 prismatic DAE Apache-2.0
Unitree G1, 29 DoF with Dex3-1 hands g1/g1_body29_hand14.urdf 43 revolute STL Apache-2.0
Unitree G1, 29 DoF with Dex1-1 grippers g1_dex1/g1_body29_dex1.urdf 29 revolute, 4 prismatic STL BSD-3-Clause
Unitree G1, 29 DoF with Inspire hands g1_inspire/g1_body29_inspire.urdf 53 revolute (12 mimic) STL BSD-3-Clause
Grabette, left and right grabette/grabette_left/robot.urdf, grabette_right 2 revolute STL Apache-2.0
Asimov 1, 25 DoF asimov/asimov_1_25dof/urdf/asimov_1_25dof.urdf 25 revolute STL CERN-OHL-S-2.0
YAM v1 with linear DM4310 gripper yam/v1/linear_4310.urdf 6 revolute, 2 prismatic none MIT

Robots

SO-101 and SO-100 (so101/), from TheRobotStudio's SO-ARM100 (Apache-2.0), generated with onshape-to-robot from its Onshape model:

  • so101_new_calib.urdf: the follower arm, the same file as SO-ARM100's Simulation/SO101/so101_new_calib.urdf. Joints shoulder_pan, shoulder_lift, elbow_flex, wrist_flex, wrist_roll, gripper; gripper_frame_link is the tool point.
  • so101_leader_new_calib.urdf: the leader arm: the follower's links and joints, with the leader's trigger (trigger_link, handle_frame_link) in place of the moving jaw.
  • so100.urdf: the SO-100 arm, with joints Rotation, Pitch, Elbow, Wrist_Pitch, Wrist_Roll, Jaw.

OpenArm (openarm/), Enactic's bimanual OpenArm (Apache-2.0): openarm_<side>_joint1 to joint7 per arm, and openarm_<side>_finger_joint1 and finger_joint2 (prismatic, the second following the first as a <mimic>). openarm_<side>_hand_tcp is each tool point.

Unitree G1 (g1/, g1_dex1/, g1_inspire/), all with the same 29 body joints (waist_yaw_joint, left_hip_pitch_joint, right_elbow_joint, ...):

  • g1_body29_hand14.urdf: with Dex3-1 hands (7 joints each), from assets/g1/g1_body29_hand14.urdf in unitreerobotics/xr_teleoperate (Apache-2.0), its mesh extensions lowercased (.STL to .stl).
  • g1_body29_dex1.urdf: with Dex1-1 grippers (2 prismatic finger joints each), a copy of g1_29dof_mode_15_with_dex1_1.urdf in unitreerobotics/unitree_ros (BSD-3-Clause).
  • g1_body29_inspire.urdf: with Inspire RH56DFQ hands (6 driven joints each, the other finger joints following them as <mimic>), a copy of g1_29dof_rev_1_0_with_inspire_hand_DFQ.urdf in unitreerobotics/unitree_ros (BSD-3-Clause).

Grabette (grabette/), Pollen Robotics' handheld data recording gripper: copies of packages/grabette/urdf/grabette_left and grabette_right in pollen-robotics/grabette (Apache-2.0). Joints proximal and distal. Their meshes are referenced as package://assets/..., relative to each URDF's folder.

Asimov 1 (asimov/), Menlo Research's 25 DoF humanoid: an unmodified copy of sim-model/asimov_1_25dof in menloresearch/asimov-1, with its MuJoCo MJCF. Licensed under CERN-OHL-S-2.0, see asimov/HARDWARE-LICENSE.txt and asimov/README.md.

YAM (yam/v1/), I2RT's YAM arm with the linear DM4310 gripper: a dynamics-only URDF (no meshes), converted from LeRobot's YAM v1 MJCF model, derived from i2rt at commit 120c3c8 (MIT, notice in the file). Joints joint1 to joint6 (revolute) and joint7, joint8 (prismatic gripper).

so101_new_calib_web.urdf and openarm_bimanual_web.urdf are the same robots with GLB visual meshes, smaller and faster to load in a browser; their collision meshes are unchanged.

Usage

Download one robot's folder:

from huggingface_hub import snapshot_download

root = snapshot_download("lerobot/robot-urdfs", repo_type="dataset", allow_patterns="so101/*")
urdf = f"{root}/so101/so101_new_calib.urdf"  # meshes in so101/assets/

Or load it straight from the Hub in a browser, for example with urdf-loader: meshes resolve next to the URDF's URL. Its default mesh loader reads STL and DAE; the _web URDFs need a GLB loader passed as loadMeshCb.

import URDFLoader from "urdf-loader";

const robot = await new URDFLoader().loadAsync(
  "https://huggingface.co/datasets/lerobot/robot-urdfs/resolve/main/so101/so101_new_calib.urdf",
);
robot.setJointValue("shoulder_lift", Math.PI / 4);

Each robot keeps the license of its source, listed above.

What the source reports

Publisher-reported claims, with original evidence. These results have not been independently verified by RoboSignal.

Dataset details reported by the source

License
Apache-2.0 Open source S3
Version
v1 Open source S10
Embodiments
SO-101 Open source S3SO-100 Open source S3OpenArm Open source S3Unitree G1 Open source S3Grabette Open source S4Asimov 1 Open source S4YAM Open source S4

What remains unknown

Source excerpts and review record

Automatically extracted; no manual editorial approval recorded.

Meshes License SO-101 follower so101/so101_new_calib.urdf 6 revolute STL Apache-2.0 SO-101 leader so101/so101_leader_new_calib.urdf 6 revolute STL Apache-2.0 SO-100 so101/so100.urdf 6 revolute STL Apache-2.0 OpenArm, bimanual openarm/openarm_bimanual.urdf 14 revolute, 4 prismatic DAE Apache-2.0 Unitree G1, 29 DoF with Dex3-1 hands g1/g1_body29_hand14.urdf 43 revolute STL Apache-2.0 Unitree G1, 29 DoF with Dex1-1 grip

Open source S3

URDF models of the robots in LeRobot datasets and tools. Each robot is a folder holding its URDF and meshes, referenced by relative paths, so a downloaded folder loads as is. Joints are in radians (meters for prismatic ones), like any URDF. The OpenUSD versions of SO-101, OpenArm and the Unitree G1s carry these URDFs' link and joint names, so a dataset's joint values drive both the same way. Robot URDF Moving joints

Open source S2

pers g1_dex1/g1_body29_dex1.urdf 29 revolute, 4 prismatic STL BSD-3-Clause Unitree G1, 29 DoF with Inspire hands g1_inspire/g1_body29_inspire.urdf 53 revolute (12 mimic) STL BSD-3-Clause Grabette, left and right grabette/grabette_left/robot.urdf , grabette_right 2 revolute STL Apache-2.0 Asimov 1, 25 DoF asimov/asimov_1_25dof/urdf/asimov_1_25dof.urdf 25 revolute STL CERN-OHL-S-2.0 YAM v1 with linear DM4310 gripper ya

Open source S4

nloresearch/asimov-1 , with its MuJoCo MJCF. Licensed under CERN-OHL-S-2.0, see asimov/HARDWARE-LICENSE.txt and asimov/README.md . YAM ( yam/v1/ ), I2RT's YAM arm with the linear DM4310 gripper: a dynamics-only URDF (no meshes), converted from LeRobot's YAM v1 MJCF model, derived from i2rt at commit 120c3c8 (MIT, notice in the file). Joints joint1 to joint6 (revolute) and joint7 , joint8 (prismatic gripper). so101_ne

Open source S10

ointValue ( "shoulder_lift" , Math . PI / 4 ); Each robot keeps the license of its source, listed above.

Open source S13

w_calib_web.urdf and openarm_bimanual_web.urdf are the same robots with GLB visual meshes, smaller and faster to load in a browser; their collision meshes are unchanged. Usage Download one robot's folder: from huggingface_hub import snapshot_download root = snapshot_download( "lerobot/robot-urdfs" , repo_type= "dataset" , allow_patterns= "so101/*" ) urdf = f" {root} /so101/so101_new_calib.urdf" # meshes in so101/asse

Open source S11

ts/ Or load it straight from the Hub in a browser, for example with urdf-loader : meshes resolve next to the URDF's URL. Its default mesh loader reads STL and DAE; the _web URDFs need a GLB loader passed as loadMeshCb . import URDFLoader from "urdf-loader" ; const robot = await new URDFLoader (). loadAsync ( "https://huggingface.co/datasets/lerobot/robot-urdfs/resolve/main/so101/so101_new_calib.urdf" , ); robot. setJ

Open source S12

Implications for data suppliers

RoboSignal interpretation and collection questions, not statements of buyer demand.

  • Confirm the required data type and collection setting with the buyer; this source does not establish a complete collection specification.
  • Check the exact dataset version, license, modalities and task coverage against the intended use.
  • Validate demand and acceptance criteria with a buyer before scaling. Publication, popularity and a research result do not establish a purchase commitment.

Source:LeRobot — Dataset repository updates · huggingface.co

Timezone · UTC

Article dates follow your selected timezone. Briefing editions use Hong Kong time (UTC+8).