From 209966545f246348e8b56357a4c770a390695bfc Mon Sep 17 00:00:00 2001 From: Dave Coleman Date: Mon, 30 Mar 2026 12:54:16 -0600 Subject: [PATCH 1/5] feat: Add MujocoBehaviorsLoader and default keyframes to all MuJoCo configs Co-Authored-By: Claude Opus 4.6 (1M context) --- src/april_tag_sim/config/config.yaml | 7 +++++++ src/april_tag_sim/description/scene.xml | 15 ++++++------- src/dual_arm_sim/config/config.yaml | 5 +++++ src/factory_sim/config/config.yaml | 6 +++++- src/factory_sim/description/scene.xml | 21 +++++++++++++++++++ src/grinding_sim/config/config.yaml | 7 ++++++- src/kitchen_sim/config/config.yaml | 5 +++++ src/kitchen_sim/description/mujoco/scene.xml | 2 +- src/lab_sim/config/config.yaml | 1 + src/lunar_sim/config/config.yaml | 10 +++++++++ .../kinova_sim/config/config.yaml | 1 + .../space_satellite_sim/config/config.yaml | 6 ++++++ .../config/config.yaml | 6 ++++++ .../description/mujoco/scene.xml | 20 ++++++++++++++++++ .../multi_arm_sim/config/config.yaml | 5 +++++ 15 files changed, 107 insertions(+), 10 deletions(-) diff --git a/src/april_tag_sim/config/config.yaml b/src/april_tag_sim/config/config.yaml index f495a9560..7a2118439 100644 --- a/src/april_tag_sim/config/config.yaml +++ b/src/april_tag_sim/config/config.yaml @@ -16,13 +16,20 @@ hardware: package: "lab_sim" path: "config/moveit/picknik_ur.srdf" urdf_params: + - mujoco_keyframe: "default" - mujoco_model_package: "april_tag_sim" # Configuration for loading behaviors and objectives. # [Required] objectives: # Specify source folder for objectives # [Required] + behavior_loader_plugins: + core: + - "moveit_pro::behaviors::MujocoBehaviorsLoader" objective_library_paths: + mujoco_objectives: + package_name: "moveit_pro_objectives" + relative_path: "objectives/mujoco" sim_objectives: package_name: "april_tag_sim" relative_path: "objectives" diff --git a/src/april_tag_sim/description/scene.xml b/src/april_tag_sim/description/scene.xml index c79867d24..15592b648 100644 --- a/src/april_tag_sim/description/scene.xml +++ b/src/april_tag_sim/description/scene.xml @@ -141,11 +141,12 @@ - - - - - - - + + + diff --git a/src/dual_arm_sim/config/config.yaml b/src/dual_arm_sim/config/config.yaml index 6065534fe..a82b43341 100644 --- a/src/dual_arm_sim/config/config.yaml +++ b/src/dual_arm_sim/config/config.yaml @@ -32,6 +32,7 @@ hardware: # Many of these are specific to the UR descriptions packages, and can be customized as needed. # [Optional] urdf_params: + - mujoco_keyframe: "default" - mujoco_model: "description/mujoco/scene.xml" - mujoco_viewer: false simulated_hardware_launch_file: @@ -86,6 +87,7 @@ objectives: - "moveit_pro::behaviors::MTCCoreBehaviorsLoader" - "moveit_pro::behaviors::VisionBehaviorsLoader" - "moveit_pro::behaviors::ConverterBehaviorsLoader" + - "moveit_pro::behaviors::MujocoBehaviorsLoader" # Specify source folder for objectives # [Required] objective_library_paths: @@ -101,6 +103,9 @@ objectives: visualization_objectives: package_name: "moveit_pro_objectives" relative_path: "objectives/visualization" + mujoco_objectives: + package_name: "moveit_pro_objectives" + relative_path: "objectives/mujoco" custom_objectives: package_name: "dual_arm_sim" relative_path: "objectives" diff --git a/src/factory_sim/config/config.yaml b/src/factory_sim/config/config.yaml index 2da457cc7..fc7d3c107 100644 --- a/src/factory_sim/config/config.yaml +++ b/src/factory_sim/config/config.yaml @@ -41,7 +41,7 @@ hardware: # Many of these are specific to the descriptions packages, and can be customized as needed. # [Optional] urdf_params: - # Use "mock", "mujoco", or "real" + # Use "mock", "mujoco", or "real" - hardware_interface: "mujoco" - mujoco_viewer: "false" @@ -124,6 +124,7 @@ objectives: - "moveit_pro::behaviors::MTCCoreBehaviorsLoader" - "moveit_pro::behaviors::VisionBehaviorsLoader" - "moveit_pro::behaviors::ConverterBehaviorsLoader" + - "moveit_pro::behaviors::MujocoBehaviorsLoader" # Specify source folder for objectives # [Required] objective_library_paths: @@ -139,6 +140,9 @@ objectives: visualization_objectives: package_name: "moveit_pro_objectives" relative_path: "objectives/visualization" + mujoco_objectives: + package_name: "moveit_pro_objectives" + relative_path: "objectives/mujoco" sim_objectives: package_name: "factory_sim" relative_path: "objectives" diff --git a/src/factory_sim/description/scene.xml b/src/factory_sim/description/scene.xml index 198c5773d..8a75412ab 100644 --- a/src/factory_sim/description/scene.xml +++ b/src/factory_sim/description/scene.xml @@ -412,4 +412,25 @@ + + + + + + + + + + diff --git a/src/grinding_sim/config/config.yaml b/src/grinding_sim/config/config.yaml index f144365aa..12370aafb 100644 --- a/src/grinding_sim/config/config.yaml +++ b/src/grinding_sim/config/config.yaml @@ -41,7 +41,8 @@ hardware: # Many of these are specific to the descriptions packages, and can be customized as needed. # [Optional] urdf_params: - # Use "mock", "mujoco", or "real" + - mujoco_keyframe: "default" + # Use "mock", "mujoco", or "real" - hardware_interface: "mujoco" # Sets ROS global params for launch. @@ -115,6 +116,7 @@ objectives: - "moveit_pro::behaviors::MTCCoreBehaviorsLoader" - "moveit_pro::behaviors::VisionBehaviorsLoader" - "moveit_pro::behaviors::ConverterBehaviorsLoader" + - "moveit_pro::behaviors::MujocoBehaviorsLoader" # Specify source folder for objectives # [Required] objective_library_paths: @@ -130,6 +132,9 @@ objectives: visualization_objectives: package_name: "moveit_pro_objectives" relative_path: "objectives/visualization" + mujoco_objectives: + package_name: "moveit_pro_objectives" + relative_path: "objectives/mujoco" sim_objectives: package_name: "grinding_sim" relative_path: "objectives" diff --git a/src/kitchen_sim/config/config.yaml b/src/kitchen_sim/config/config.yaml index 7a0bc2e3d..56011ad27 100644 --- a/src/kitchen_sim/config/config.yaml +++ b/src/kitchen_sim/config/config.yaml @@ -33,6 +33,7 @@ hardware: # Many of these are specific to the UR descriptions packages, and can be customized as needed. # [Optional] urdf_params: + - mujoco_keyframe: "default" - mujoco_model: "description/mujoco/scene.xml" - mujoco_viewer: false simulated_hardware_launch_file: @@ -52,6 +53,7 @@ objectives: - "moveit_pro::behaviors::MTCCoreBehaviorsLoader" - "moveit_pro::behaviors::VisionBehaviorsLoader" - "moveit_pro::behaviors::ConverterBehaviorsLoader" + - "moveit_pro::behaviors::MujocoBehaviorsLoader" # Specify source folder for objectives # [Required] objective_library_paths: @@ -67,6 +69,9 @@ objectives: visualization_objectives: package_name: "moveit_pro_objectives" relative_path: "objectives/visualization" + mujoco_objectives: + package_name: "moveit_pro_objectives" + relative_path: "objectives/mujoco" sim_objectives: package_name: "kitchen_sim" relative_path: "objectives" diff --git a/src/kitchen_sim/description/mujoco/scene.xml b/src/kitchen_sim/description/mujoco/scene.xml index ac52baaa7..ffc9c1934 100644 --- a/src/kitchen_sim/description/mujoco/scene.xml +++ b/src/kitchen_sim/description/mujoco/scene.xml @@ -157,7 +157,7 @@ fr3_finger1 - We control only one finger. --> diff --git a/src/lab_sim/config/config.yaml b/src/lab_sim/config/config.yaml index e78f0500e..e4873abf5 100644 --- a/src/lab_sim/config/config.yaml +++ b/src/lab_sim/config/config.yaml @@ -16,6 +16,7 @@ hardware: package: "lab_sim" path: "config/moveit/picknik_ur.srdf" urdf_params: + - mujoco_keyframe: "default" - mujoco_model: "description/scene.xml" - mujoco_viewer: false diff --git a/src/lunar_sim/config/config.yaml b/src/lunar_sim/config/config.yaml index e0063d763..61e8bbe0c 100644 --- a/src/lunar_sim/config/config.yaml +++ b/src/lunar_sim/config/config.yaml @@ -9,5 +9,15 @@ based_on_package: "phoebe_sim" hardware: robot_description: urdf_params: + - mujoco_keyframe: "default" - mujoco_model_package: lunar_sim - mujoco_model: mjcf/scene.xml + +objectives: + behavior_loader_plugins: + core: + - "moveit_pro::behaviors::MujocoBehaviorsLoader" + objective_library_paths: + mujoco_objectives: + package_name: "moveit_pro_objectives" + relative_path: "objectives/mujoco" diff --git a/src/moveit_pro_kinova_configs/kinova_sim/config/config.yaml b/src/moveit_pro_kinova_configs/kinova_sim/config/config.yaml index c5b1d9cd5..561092ce8 100644 --- a/src/moveit_pro_kinova_configs/kinova_sim/config/config.yaml +++ b/src/moveit_pro_kinova_configs/kinova_sim/config/config.yaml @@ -51,6 +51,7 @@ hardware: # Many of these are specific to the UR descriptions packages, and can be customized as needed. # [Optional] urdf_params: + - mujoco_keyframe: "default" - arm: "gen3" - dof: "7" - vision: "false" diff --git a/src/moveit_pro_kinova_configs/space_satellite_sim/config/config.yaml b/src/moveit_pro_kinova_configs/space_satellite_sim/config/config.yaml index f2863422d..86ca8b05c 100644 --- a/src/moveit_pro_kinova_configs/space_satellite_sim/config/config.yaml +++ b/src/moveit_pro_kinova_configs/space_satellite_sim/config/config.yaml @@ -51,6 +51,9 @@ ros2_control: objectives: # Specify source folder for objectives # [Required] + behavior_loader_plugins: + core: + - "moveit_pro::behaviors::MujocoBehaviorsLoader" objective_library_paths: core_objectives: package_name: "moveit_pro_objectives" @@ -61,6 +64,9 @@ objectives: perception_objectives: package_name: "moveit_pro_objectives" relative_path: "objectives/perception" + mujoco_objectives: + package_name: "moveit_pro_objectives" + relative_path: "objectives/mujoco" sim_objectives: package_name: "space_satellite_sim" relative_path: "objectives" diff --git a/src/moveit_pro_kinova_configs/space_satellite_sim_camera_cal/config/config.yaml b/src/moveit_pro_kinova_configs/space_satellite_sim_camera_cal/config/config.yaml index 8a98ea618..ca9709e40 100644 --- a/src/moveit_pro_kinova_configs/space_satellite_sim_camera_cal/config/config.yaml +++ b/src/moveit_pro_kinova_configs/space_satellite_sim_camera_cal/config/config.yaml @@ -31,7 +31,13 @@ hardware: # Configuration for loading behaviors and objectives. objectives: + behavior_loader_plugins: + core: + - "moveit_pro::behaviors::MujocoBehaviorsLoader" objective_library_paths: + mujoco_objectives: + package_name: "moveit_pro_objectives" + relative_path: "objectives/mujoco" sim_objectives: package_name: "space_satellite_sim_camera_cal" relative_path: "objectives" diff --git a/src/moveit_pro_kinova_configs/space_satellite_sim_camera_cal/description/mujoco/scene.xml b/src/moveit_pro_kinova_configs/space_satellite_sim_camera_cal/description/mujoco/scene.xml index 3635d83c9..8937a0172 100644 --- a/src/moveit_pro_kinova_configs/space_satellite_sim_camera_cal/description/mujoco/scene.xml +++ b/src/moveit_pro_kinova_configs/space_satellite_sim_camera_cal/description/mujoco/scene.xml @@ -222,4 +222,24 @@ ctrlrange="-100 100" /> + + + + + + + diff --git a/src/moveit_pro_ur_configs/multi_arm_sim/config/config.yaml b/src/moveit_pro_ur_configs/multi_arm_sim/config/config.yaml index f37c1c91a..7cc195a41 100644 --- a/src/moveit_pro_ur_configs/multi_arm_sim/config/config.yaml +++ b/src/moveit_pro_ur_configs/multi_arm_sim/config/config.yaml @@ -43,6 +43,7 @@ hardware: # Many of these are specific to the UR descriptions packages, and can be customized as needed. # [Optional] urdf_params: + - mujoco_keyframe: "default" - name: "multi_arm_ur" - prefix: "" - use_fake_hardware: "true" @@ -162,6 +163,7 @@ objectives: - "moveit_pro::behaviors::MTCCoreBehaviorsLoader" - "moveit_pro::behaviors::VisionBehaviorsLoader" - "moveit_pro::behaviors::ConverterBehaviorsLoader" + - "moveit_pro::behaviors::MujocoBehaviorsLoader" # Specify source folder for objectives # [Required] objective_library_paths: @@ -174,6 +176,9 @@ objectives: perception_objectives: package_name: "moveit_pro_objectives" relative_path: "objectives/perception" + mujoco_objectives: + package_name: "moveit_pro_objectives" + relative_path: "objectives/mujoco" sim_objectives: package_name: "multi_arm_sim" relative_path: "objectives" From 97723f6cc71236d6363d568585c74d93c839d9d1 Mon Sep 17 00:00:00 2001 From: Dave Coleman Date: Mon, 30 Mar 2026 15:43:59 -0600 Subject: [PATCH 2/5] feat(hangar_sim): Add MuJoCo behavior loader and objectives --- src/hangar_sim/config/config.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/hangar_sim/config/config.yaml b/src/hangar_sim/config/config.yaml index 0e9ce13a1..feddea7ab 100644 --- a/src/hangar_sim/config/config.yaml +++ b/src/hangar_sim/config/config.yaml @@ -60,9 +60,13 @@ objectives: - "moveit_pro::behaviors::NavBehaviorsLoader" - "moveit_pro::behaviors::VisionBehaviorsLoader" - "moveit_pro::behaviors::ConverterBehaviorsLoader" + - "moveit_pro::behaviors::MujocoBehaviorsLoader" # Specify source folder for objectives # [Required] objective_library_paths: + mujoco_objectives: + package_name: "moveit_pro_objectives" + relative_path: "objectives/mujoco" hangar_sim_objectives: package_name: "hangar_sim" relative_path: "objectives" From 647baa4adaf6b44b32374c3505f6d5c02ce579fd Mon Sep 17 00:00:00 2001 From: Dave Coleman Date: Mon, 30 Mar 2026 17:54:01 -0600 Subject: [PATCH 3/5] revert: Remove april_tag_sim and lunar_sim from MuJoCo objectives changes --- src/april_tag_sim/config/config.yaml | 7 ------- src/april_tag_sim/description/scene.xml | 15 +++++++-------- src/lunar_sim/config/config.yaml | 10 ---------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/april_tag_sim/config/config.yaml b/src/april_tag_sim/config/config.yaml index 7a2118439..f495a9560 100644 --- a/src/april_tag_sim/config/config.yaml +++ b/src/april_tag_sim/config/config.yaml @@ -16,20 +16,13 @@ hardware: package: "lab_sim" path: "config/moveit/picknik_ur.srdf" urdf_params: - - mujoco_keyframe: "default" - mujoco_model_package: "april_tag_sim" # Configuration for loading behaviors and objectives. # [Required] objectives: # Specify source folder for objectives # [Required] - behavior_loader_plugins: - core: - - "moveit_pro::behaviors::MujocoBehaviorsLoader" objective_library_paths: - mujoco_objectives: - package_name: "moveit_pro_objectives" - relative_path: "objectives/mujoco" sim_objectives: package_name: "april_tag_sim" relative_path: "objectives" diff --git a/src/april_tag_sim/description/scene.xml b/src/april_tag_sim/description/scene.xml index 15592b648..c79867d24 100644 --- a/src/april_tag_sim/description/scene.xml +++ b/src/april_tag_sim/description/scene.xml @@ -141,12 +141,11 @@ - - - + + + + + + + diff --git a/src/lunar_sim/config/config.yaml b/src/lunar_sim/config/config.yaml index 61e8bbe0c..e0063d763 100644 --- a/src/lunar_sim/config/config.yaml +++ b/src/lunar_sim/config/config.yaml @@ -9,15 +9,5 @@ based_on_package: "phoebe_sim" hardware: robot_description: urdf_params: - - mujoco_keyframe: "default" - mujoco_model_package: lunar_sim - mujoco_model: mjcf/scene.xml - -objectives: - behavior_loader_plugins: - core: - - "moveit_pro::behaviors::MujocoBehaviorsLoader" - objective_library_paths: - mujoco_objectives: - package_name: "moveit_pro_objectives" - relative_path: "objectives/mujoco" From da8b55f596493b376e4d21a73d3d80b7640da12e Mon Sep 17 00:00:00 2001 From: Dave Coleman Date: Mon, 30 Mar 2026 18:29:49 -0600 Subject: [PATCH 4/5] fix: Revert multi_arm_sim, fix Kinova config behavior loader overrides --- .../space_satellite_sim/config/config.yaml | 3 --- .../space_satellite_sim_camera_cal/config/config.yaml | 3 --- src/moveit_pro_ur_configs/multi_arm_sim/config/config.yaml | 5 ----- 3 files changed, 11 deletions(-) diff --git a/src/moveit_pro_kinova_configs/space_satellite_sim/config/config.yaml b/src/moveit_pro_kinova_configs/space_satellite_sim/config/config.yaml index 86ca8b05c..eee4af16b 100644 --- a/src/moveit_pro_kinova_configs/space_satellite_sim/config/config.yaml +++ b/src/moveit_pro_kinova_configs/space_satellite_sim/config/config.yaml @@ -51,9 +51,6 @@ ros2_control: objectives: # Specify source folder for objectives # [Required] - behavior_loader_plugins: - core: - - "moveit_pro::behaviors::MujocoBehaviorsLoader" objective_library_paths: core_objectives: package_name: "moveit_pro_objectives" diff --git a/src/moveit_pro_kinova_configs/space_satellite_sim_camera_cal/config/config.yaml b/src/moveit_pro_kinova_configs/space_satellite_sim_camera_cal/config/config.yaml index ca9709e40..f66a1fd3c 100644 --- a/src/moveit_pro_kinova_configs/space_satellite_sim_camera_cal/config/config.yaml +++ b/src/moveit_pro_kinova_configs/space_satellite_sim_camera_cal/config/config.yaml @@ -31,9 +31,6 @@ hardware: # Configuration for loading behaviors and objectives. objectives: - behavior_loader_plugins: - core: - - "moveit_pro::behaviors::MujocoBehaviorsLoader" objective_library_paths: mujoco_objectives: package_name: "moveit_pro_objectives" diff --git a/src/moveit_pro_ur_configs/multi_arm_sim/config/config.yaml b/src/moveit_pro_ur_configs/multi_arm_sim/config/config.yaml index 7cc195a41..f37c1c91a 100644 --- a/src/moveit_pro_ur_configs/multi_arm_sim/config/config.yaml +++ b/src/moveit_pro_ur_configs/multi_arm_sim/config/config.yaml @@ -43,7 +43,6 @@ hardware: # Many of these are specific to the UR descriptions packages, and can be customized as needed. # [Optional] urdf_params: - - mujoco_keyframe: "default" - name: "multi_arm_ur" - prefix: "" - use_fake_hardware: "true" @@ -163,7 +162,6 @@ objectives: - "moveit_pro::behaviors::MTCCoreBehaviorsLoader" - "moveit_pro::behaviors::VisionBehaviorsLoader" - "moveit_pro::behaviors::ConverterBehaviorsLoader" - - "moveit_pro::behaviors::MujocoBehaviorsLoader" # Specify source folder for objectives # [Required] objective_library_paths: @@ -176,9 +174,6 @@ objectives: perception_objectives: package_name: "moveit_pro_objectives" relative_path: "objectives/perception" - mujoco_objectives: - package_name: "moveit_pro_objectives" - relative_path: "objectives/mujoco" sim_objectives: package_name: "multi_arm_sim" relative_path: "objectives" From 1ee2277c7fe01d1a09f22c1ce64a095abe940744 Mon Sep 17 00:00:00 2001 From: Dave Coleman Date: Mon, 30 Mar 2026 18:44:31 -0600 Subject: [PATCH 5/5] feat(april_tag_sim): Add mujoco_objectives and fix keyframe qpos count --- src/april_tag_sim/config/config.yaml | 3 +++ src/april_tag_sim/description/scene.xml | 31 +++++++++++++++++++------ 2 files changed, 27 insertions(+), 7 deletions(-) diff --git a/src/april_tag_sim/config/config.yaml b/src/april_tag_sim/config/config.yaml index f495a9560..5c5a27623 100644 --- a/src/april_tag_sim/config/config.yaml +++ b/src/april_tag_sim/config/config.yaml @@ -23,6 +23,9 @@ objectives: # Specify source folder for objectives # [Required] objective_library_paths: + mujoco_objectives: + package_name: "moveit_pro_objectives" + relative_path: "objectives/mujoco" sim_objectives: package_name: "april_tag_sim" relative_path: "objectives" diff --git a/src/april_tag_sim/description/scene.xml b/src/april_tag_sim/description/scene.xml index c79867d24..2b42bc047 100644 --- a/src/april_tag_sim/description/scene.xml +++ b/src/april_tag_sim/description/scene.xml @@ -141,11 +141,28 @@ - - - - - - - + + + + + + + + + +