ergoCub

Built by:   IIT
Licence:    BSD-3-Clause
Source:     https://github.com/icub-tech-iit/ergocub-software/tree/v0.7.7/urdf/ergoCub
Commit:     v0.7.7
Collection: icub-tech-iit/ergocub-software
Packaged:   2026-08-28 by urdfbase.com/models/ergocub/

This folder holds the model written as MJCF, with mesh paths rewritten to
meshes/ so they resolve wherever the folder is opened. The original files, with
the paths their authors wrote, are at the source above.

What did not survive the conversion:
  - mesh sim_ecub_1-1_root_link.obj on link "root_link" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_root_link.obj on link "root_link" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_hip_pitch" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hip_1.obj on link "l_hip_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hip_1.obj on link "l_hip_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_hip_roll" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hip_2.obj on link "l_hip_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hip_2.obj on link "l_hip_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hip_3.obj on link "l_hip_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hip_3.obj on link "l_hip_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_hip_yaw" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_upper_leg.obj on link "l_upper_leg" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_upper_leg.obj on link "l_upper_leg" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_knee" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_lower_leg.obj on link "l_lower_leg" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_lower_leg.obj on link "l_lower_leg" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_ankle_pitch" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_ankle_1.obj on link "l_ankle_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_ankle_1.obj on link "l_ankle_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_ankle_roll" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_ankle_2.obj on link "l_ankle_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_ankle_2.obj on link "l_ankle_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_foot_front.obj on link "l_foot_front" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_foot_rear.obj on link "l_foot_rear" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_hip_pitch" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hip_1.obj on link "r_hip_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hip_1.obj on link "r_hip_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_hip_roll" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hip_2.obj on link "r_hip_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hip_2.obj on link "r_hip_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hip_3.obj on link "r_hip_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hip_3.obj on link "r_hip_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_hip_yaw" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_upper_leg.obj on link "r_upper_leg" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_upper_leg.obj on link "r_upper_leg" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_knee" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_lower_leg.obj on link "r_lower_leg" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_lower_leg.obj on link "r_lower_leg" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_ankle_pitch" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_ankle_1.obj on link "r_ankle_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_ankle_1.obj on link "r_ankle_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_ankle_roll" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_ankle_2.obj on link "r_ankle_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_ankle_2.obj on link "r_ankle_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_foot_front.obj on link "r_foot_front" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_foot_rear.obj on link "r_foot_rear" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "torso_roll" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_torso_1.obj on link "torso_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_torso_1.obj on link "torso_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "torso_pitch" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_torso_2.obj on link "torso_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_torso_2.obj on link "torso_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "torso_yaw" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-3_chest.obj on link "chest" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-3_chest.obj on link "chest" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "neck_pitch" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_head_neck_2.obj on link "neck_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_head_neck_2.obj on link "neck_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "neck_roll" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_head_neck_3.obj on link "neck_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_head_neck_3.obj on link "neck_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "neck_yaw" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_head.obj on link "head" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_head.obj on link "head" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "camera_tilt" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_realsense.obj on link "realsense" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_realsense.obj on link "realsense" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_shoulder_pitch" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_shoulder_1.obj on link "l_shoulder_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_shoulder_1.obj on link "l_shoulder_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_shoulder_roll" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_shoulder_2.obj on link "l_shoulder_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_shoulder_2.obj on link "l_shoulder_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_shoulder_3.obj on link "l_shoulder_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_shoulder_3.obj on link "l_shoulder_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_shoulder_yaw" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_upperarm.obj on link "l_upper_arm" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_upperarm.obj on link "l_upper_arm" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_elbow" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_forearm.obj on link "l_forearm" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_forearm.obj on link "l_forearm" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_wrist_yaw" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_wrist_1.obj on link "l_wrist_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_wrist_1.obj on link "l_wrist_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_wrist_roll" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_wrist_2.obj on link "l_wrist_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_wrist_2.obj on link "l_wrist_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_wrist_pitch" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hand_palm.obj on link "l_hand_palm" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hand_palm.obj on link "l_hand_palm" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_index_add" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hand_index_1.obj on link "l_hand_index_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hand_index_1.obj on link "l_hand_index_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_index_prox" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hand_index_2.obj on link "l_hand_index_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hand_index_2.obj on link "l_hand_index_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_index_dist" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hand_index_3.obj on link "l_hand_index_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hand_index_3.obj on link "l_hand_index_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_middle_prox" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hand_middle_1.obj on link "l_hand_middle_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hand_middle_1.obj on link "l_hand_middle_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_middle_dist" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hand_middle_2.obj on link "l_hand_middle_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hand_middle_2.obj on link "l_hand_middle_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_pinkie_prox" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hand_pinkie_1.obj on link "l_hand_pinkie_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hand_pinkie_1.obj on link "l_hand_pinkie_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_pinkie_dist" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hand_pinkie_2.obj on link "l_hand_pinkie_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hand_pinkie_2.obj on link "l_hand_pinkie_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_ring_prox" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hand_ring_1.obj on link "l_hand_ring_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hand_ring_1.obj on link "l_hand_ring_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_ring_dist" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hand_ring_2.obj on link "l_hand_ring_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hand_ring_2.obj on link "l_hand_ring_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_thumb_add" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hand_thumb_1.obj on link "l_hand_thumb_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hand_thumb_1.obj on link "l_hand_thumb_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_thumb_prox" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hand_thumb_2.obj on link "l_hand_thumb_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hand_thumb_2.obj on link "l_hand_thumb_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "l_thumb_dist" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_l_hand_thumb_3.obj on link "l_hand_thumb_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_l_hand_thumb_3.obj on link "l_hand_thumb_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_shoulder_pitch" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_shoulder_1.obj on link "r_shoulder_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_shoulder_1.obj on link "r_shoulder_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_shoulder_roll" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_shoulder_2.obj on link "r_shoulder_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_shoulder_2.obj on link "r_shoulder_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_shoulder_3.obj on link "r_shoulder_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_shoulder_3.obj on link "r_shoulder_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_shoulder_yaw" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_upperarm.obj on link "r_upper_arm" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_upperarm.obj on link "r_upper_arm" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_elbow" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_forearm.obj on link "r_forearm" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_forearm.obj on link "r_forearm" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_wrist_yaw" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_wrist_1.obj on link "r_wrist_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_wrist_1.obj on link "r_wrist_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_wrist_roll" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_wrist_2.obj on link "r_wrist_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_wrist_2.obj on link "r_wrist_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_wrist_pitch" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hand_palm.obj on link "r_hand_palm" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hand_palm.obj on link "r_hand_palm" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_index_add" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hand_index_1.obj on link "r_hand_index_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hand_index_1.obj on link "r_hand_index_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_index_prox" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hand_index_2.obj on link "r_hand_index_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hand_index_2.obj on link "r_hand_index_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_index_dist" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hand_index_3.obj on link "r_hand_index_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hand_index_3.obj on link "r_hand_index_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_middle_prox" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hand_middle_1.obj on link "r_hand_middle_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hand_middle_1.obj on link "r_hand_middle_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_middle_dist" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hand_middle_2.obj on link "r_hand_middle_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hand_middle_2.obj on link "r_hand_middle_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_pinkie_prox" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hand_pinkie_1.obj on link "r_hand_pinkie_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hand_pinkie_1.obj on link "r_hand_pinkie_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_pinkie_dist" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hand_pinkie_2.obj on link "r_hand_pinkie_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hand_pinkie_2.obj on link "r_hand_pinkie_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_ring_prox" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hand_ring_1.obj on link "r_hand_ring_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hand_ring_1.obj on link "r_hand_ring_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_ring_dist" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hand_ring_2.obj on link "r_hand_ring_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hand_ring_2.obj on link "r_hand_ring_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_thumb_add" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hand_thumb_1.obj on link "r_hand_thumb_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hand_thumb_1.obj on link "r_hand_thumb_1" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_thumb_prox" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hand_thumb_2.obj on link "r_hand_thumb_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hand_thumb_2.obj on link "r_hand_thumb_2" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - joint "r_thumb_dist" has a velocity limit of 1e+09, which MJCF does not store on the joint — enforce it in the controller
  - mesh sim_ecub_1-1_r_hand_thumb_3.obj on link "r_hand_thumb_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there
  - mesh sim_ecub_1-1_r_hand_thumb_3.obj on link "r_hand_thumb_3" has a scale of 0.001 0.001 0.001; MJCF scales meshes in the asset section, so it was moved there

The robot belongs to the people who built it. Credit the source, not this site.
