LeRobot releases OpenUSD models for SO-101 and OpenArm robots
lerobot/robot-usds
The LeRobot dataset repository has updated to include OpenUSD models for the SO-101 and OpenArm robots. These models are derived from existing URDF definitions (robotstudio_so101 and NVIDIA's openarm_bimanual) and converted into a single-layer format compatible with the Hugging Face USD Web Viewer. The release includes specific adjustments such as renaming links to match URDFs, fixing joint configurations within 0.006 mm of the original, and converting materials to UsdPreviewSurface. The SO-101 model contains 399k triangles, while the OpenArm model is decimated from 2.2M to 404k triangles for display purposes. Both models are provided under Apache-2.0 licenses but have not undergone NVIDIA's SimReady validation.
The repository provides OpenUSD models for the SO-101 and OpenArm robots, converting existing URDF definitions into a single-layer format compatible with the LeRobot visualizer while preserving joint limits and link names.
Source: LeRobot — Dataset repository updates · Read original article ↗
Article text · Original source · English
On this page
The Dataset Viewer has been disabled on this dataset.
OpenUSD models of the robots in LeRobot datasets. Their joints and links carry the names of the URDFs in lerobot/robot-urdfs, so a dataset's joint values drive them the way they drive the URDF.
| Robot | Root USD | Size | Geometry |
|---|---|---|---|
| SO-101, also used for SO-100 | so101_new_calib/simready_usd/so101_new_calib.usd |
6 MB | 17 meshes, 399k triangles |
| OpenArm, bimanual | openarm_bimanual/simready_usd/openarm_bimanual.usd |
6 MB | 58 meshes, 404k triangles |
Each is a single layer in meters, Z up, with UsdPhysics joints (limits in degrees) and UsdPreviewSurface materials.
Joints and links
SO-101, as so101_new_calib_web.urdf:
- Joints:
shoulder_pan,shoulder_lift,elbow_flex,wrist_flex,wrist_roll,gripper(revolute). - Links:
base_link,shoulder_link,upper_arm_link,lower_arm_link,wrist_link,gripper_link,moving_jaw_so101_v1_link, and thegripper_frame_linktip frame.
OpenArm, as openarm_bimanual_web.urdf, for each <side> (left, right):
- Joints:
openarm_<side>_joint1tojoint7(revolute),openarm_<side>_finger_joint1andfinger_joint2(prismatic, the second following the first),<side>_openarm_hand_joint(fixed). - Links:
openarm_body_link0,openarm_<side>_link0tolink7,openarm_<side>_hand,openarm_<side>_left_finger,openarm_<side>_right_finger, and theopenarm_<side>_hand_tcptip frame.
Checked against the URDFs
- Every link and moving joint of each URDF is here, under the same name, except OpenArm's empty
worldroot. Links the URDF fixes to another (tips, OpenArm'slink0s) are plain frames here. - Posed at 200 random joint configurations, every link lands within 0.006 mm and 0.002° of the URDF's: same zero pose, axes and directions. The URDFs take radians, these models degrees. OpenArm's finger bodies have their frames 1 mm from the URDF's at every pose, which leaves their motion unchanged.
- Both load in
@huggingface/usd-web-viewerwith no warnings.
Usage
import { loadUsd } from "@huggingface/usd-web-viewer";
const { root } = await loadUsd(
"https://huggingface.co/datasets/lerobot/robot-usds/resolve/main/so101_new_calib/simready_usd/so101_new_calib.usd",
);
scene.add(root); // a THREE.Group, Y up
Sources and changes
SO-101, from robotstudio_so101 in newton-physics/newton-assets (Apache-2.0), converted there from the MuJoCo Menagerie model:
- composed into one layer;
- the wrist camera mount removed, as the URDF has none;
- links renamed to the URDF's;
gripper_frame_linkadded where the URDF puts it;- recolored from yellow to light grey with black servos, the colors the LeRobot visualizer has drawn it in.
OpenArm, from NVIDIA's openarm_bimanual for Isaac Sim 6.0 (Apache-2.0), also in enactic/openarm_isaac_lab:
- composed into one layer, without the sensors, render settings and colliders, so it is meant for display; for simulation, use NVIDIA's original;
- the
ee_tcpbodies, 13 mm from the URDF's tool point, replaced byhand_tcpframes where the URDF puts them; - the link7-to-hand joints made fixed, and they and the body link renamed to the URDF's;
- OmniPBR materials converted to UsdPreviewSurface, as carbon black, brushed metal or off-white by their lightness, the colors the LeRobot visualizer has drawn it in;
- visual meshes decimated from 2.2M to 404k triangles, within 3.5 mm of the original.
scripts/ rebuilds both (needs usd-core, numpy and, for OpenArm, fast-simplification). Each robot is a package in the SimReady packaging layout, with its file list and hashes; neither has been through NVIDIA's SimReady validation.
- Downloads last month
- -
What the source reports
Publisher-reported claims, with original evidence. These results have not been independently verified by RoboSignal.
Reported numbers
triangles
399,000
View original evidence
The Dataset Viewer has been disabled on this dataset. OpenUSD models of the robots in LeRobot datasets. Their joints and links carry the names of the URDFs in lerobot/robot-urdfs , so a dataset's joint values drive them the way they drive the URDF. Robot Root USD Size Geometry SO-101, also used for SO-100 so101_new_calib/simready_usd/so101_new_calib.usd 6 MB 17 meshes, 399k triangles OpenArm, bimanual openarm_bimanua
Open source S2triangles
404,000
View original evidence
l/simready_usd/openarm_bimanual.usd 6 MB 58 meshes, 404k triangles Each is a single layer in meters, Z up, with UsdPhysics joints (limits in degrees) and UsdPreviewSurface materials. Joints and links SO-101 , as so101_new_calib_web.urdf : Joints: shoulder_pan , shoulder_lift , elbow_flex , wrist_flex , wrist_roll , gripper (revolute). Links: base_link , shoulder_link , upper_arm_link , lower_arm_link , wrist_link , g
Open source S3meshes
17
View original evidence
The Dataset Viewer has been disabled on this dataset. OpenUSD models of the robots in LeRobot datasets. Their joints and links carry the names of the URDFs in lerobot/robot-urdfs , so a dataset's joint values drive them the way they drive the URDF. Robot Root USD Size Geometry SO-101, also used for SO-100 so101_new_calib/simready_usd/so101_new_calib.usd 6 MB 17 meshes, 399k triangles OpenArm, bimanual openarm_bimanua
Open source S2meshes
58
View original evidence
l/simready_usd/openarm_bimanual.usd 6 MB 58 meshes, 404k triangles Each is a single layer in meters, Z up, with UsdPhysics joints (limits in degrees) and UsdPreviewSurface materials. Joints and links SO-101 , as so101_new_calib_web.urdf : Joints: shoulder_pan , shoulder_lift , elbow_flex , wrist_flex , wrist_roll , gripper (revolute). Links: base_link , shoulder_link , upper_arm_link , lower_arm_link , wrist_link , g
Open source S3millimeters
0.006
View original evidence
rm_<side>_left_finger , openarm_<side>_right_finger , and the openarm_<side>_hand_tcp tip frame. Checked against the URDFs Every link and moving joint of each URDF is here, under the same name, except OpenArm's empty world root. Links the URDF fixes to another (tips, OpenArm's link0 s) are plain frames here. Posed at 200 random joint configurations, every link lands within 0.006 mm and 0.002° of the URDF's: same zero
Open source S5
- paper: not_reported
- code: not_reported
- weights: not_reported
- dataset: not_reported
What remains unknown
Dataset licensing and commercial-use rights are not established here.
Source excerpts and review record
Automatically extracted; no manual editorial approval recorded.
The Dataset Viewer has been disabled on this dataset. OpenUSD models of the robots in LeRobot datasets. Their joints and links carry the names of the URDFs in lerobot/robot-urdfs , so a dataset's joint values drive them the way they drive the URDF. Robot Root USD Size Geometry SO-101, also used for SO-100 so101_new_calib/simready_usd/so101_new_calib.usd 6 MB 17 meshes, 399k triangles OpenArm, bimanual openarm_bimanua
Open source S2
l/simready_usd/openarm_bimanual.usd 6 MB 58 meshes, 404k triangles Each is a single layer in meters, Z up, with UsdPhysics joints (limits in degrees) and UsdPreviewSurface materials. Joints and links SO-101 , as so101_new_calib_web.urdf : Joints: shoulder_pan , shoulder_lift , elbow_flex , wrist_flex , wrist_roll , gripper (revolute). Links: base_link , shoulder_link , upper_arm_link , lower_arm_link , wrist_link , g
Open source S3
RDF puts them; the link7-to-hand joints made fixed, and they and the body link renamed to the URDF's; OmniPBR materials converted to UsdPreviewSurface, as carbon black, brushed metal or off-white by their lightness, the colors the LeRobot visualizer has drawn it in; visual meshes decimated from 2.2M to 404k triangles, within 3.5 mm of the original. scripts/ rebuilds both (needs usd-core , numpy and, for OpenArm, fast
Open source S9
rm_<side>_left_finger , openarm_<side>_right_finger , and the openarm_<side>_hand_tcp tip frame. Checked against the URDFs Every link and moving joint of each URDF is here, under the same name, except OpenArm's empty world root. Links the URDF fixes to another (tips, OpenArm's link0 s) are plain frames here. Posed at 200 random joint configurations, every link lands within 0.006 mm and 0.002° of the URDF's: same zero
Open source S5
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.
- Compare the reported units and scope before using these quantities in a budget. Recording hours, sensor-hours and trajectories are different measures.
- 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