From d022746475c6013c00d2c60f817156613e20673a Mon Sep 17 00:00:00 2001 From: "-T.K.-" Date: Mon, 29 Jun 2026 16:38:34 -0700 Subject: [PATCH 1/2] lite_description: rename ros2_control hardware plugin to humanoid_control_robstride Follows the bar_* -> humanoid_control_* series rename. The real-hardware ros2_control plugin for Robstride actuators is now registered as humanoid_control_robstride/RobstrideSystem (was bar_robstride/RobstrideSystem). Updated the generator input (cad/ros2_control.json) and the regenerated xacro for both lite_dummy and lite_bimanual; pytest confirms the committed xacro still matches the generator. The bar_ros2 repo / bar_buildfarm refs are left as-is (repo/channel rename deferred). Co-Authored-By: Claude Opus 4.8 (1M context) --- package.xml | 2 +- robots/lite_bimanual/cad/ros2_control.json | 2 +- robots/lite_bimanual/xacro/lite_bimanual.ros2_control.xacro | 4 ++-- robots/lite_dummy/cad/ros2_control.json | 2 +- robots/lite_dummy/xacro/lite_dummy.ros2_control.xacro | 6 +++--- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package.xml b/package.xml index 12b6a79..83c45ae 100644 --- a/package.xml +++ b/package.xml @@ -10,7 +10,7 @@ (training / deployment sim), and meshes. All artifacts are generated from Onshape CAD by the `robot_assets` Python tool; do not hand-edit them. ros2_control hardware plugins - (mock / mujoco_ros2_control / bar_robstride) are referenced by pluginlib + (mock / mujoco_ros2_control / humanoid_control_robstride) are referenced by pluginlib string only and are NOT build/exec dependencies of this package. This is an asset-only package: it ships no launch files or RViz configs (visualization and bringup are consumer concerns). diff --git a/robots/lite_bimanual/cad/ros2_control.json b/robots/lite_bimanual/cad/ros2_control.json index 14be609..449af16 100644 --- a/robots/lite_bimanual/cad/ros2_control.json +++ b/robots/lite_bimanual/cad/ros2_control.json @@ -9,7 +9,7 @@ "backends": { "sim": "mujoco_ros2_control/MujocoSystem", "mock": "mock_components/GenericSystem", - "real": "bar_robstride/RobstrideSystem" + "real": "humanoid_control_robstride/RobstrideSystem" }, "args": { diff --git a/robots/lite_bimanual/xacro/lite_bimanual.ros2_control.xacro b/robots/lite_bimanual/xacro/lite_bimanual.ros2_control.xacro index ac7663c..f4a9295 100644 --- a/robots/lite_bimanual/xacro/lite_bimanual.ros2_control.xacro +++ b/robots/lite_bimanual/xacro/lite_bimanual.ros2_control.xacro @@ -113,7 +113,7 @@ params="mode can_interface_left can_interface_right calibration_file"> - bar_robstride/RobstrideSystem + humanoid_control_robstride/RobstrideSystem ${can_interface_left} ${calibration_file} @@ -121,7 +121,7 @@ - bar_robstride/RobstrideSystem + humanoid_control_robstride/RobstrideSystem ${can_interface_right} ${calibration_file} diff --git a/robots/lite_dummy/cad/ros2_control.json b/robots/lite_dummy/cad/ros2_control.json index 88759be..812a92a 100644 --- a/robots/lite_dummy/cad/ros2_control.json +++ b/robots/lite_dummy/cad/ros2_control.json @@ -9,7 +9,7 @@ "backends": { "sim": "mujoco_ros2_control/MujocoSystem", "mock": "mock_components/GenericSystem", - "real": "bar_robstride/RobstrideSystem" + "real": "humanoid_control_robstride/RobstrideSystem" }, "args": { diff --git a/robots/lite_dummy/xacro/lite_dummy.ros2_control.xacro b/robots/lite_dummy/xacro/lite_dummy.ros2_control.xacro index 20062ab..661f5cf 100644 --- a/robots/lite_dummy/xacro/lite_dummy.ros2_control.xacro +++ b/robots/lite_dummy/xacro/lite_dummy.ros2_control.xacro @@ -118,7 +118,7 @@ params="mode can_interface_left can_interface_right calibration_file"> - bar_robstride/RobstrideSystem + humanoid_control_robstride/RobstrideSystem ${can_interface_left} ${calibration_file} @@ -126,7 +126,7 @@ - bar_robstride/RobstrideSystem + humanoid_control_robstride/RobstrideSystem ${can_interface_right} ${calibration_file} @@ -136,7 +136,7 @@ - bar_robstride/RobstrideSystem + humanoid_control_robstride/RobstrideSystem ${can_interface_left} ${calibration_file} From 297cc80e94b4143ba75e950632a72c93c0555556 Mon Sep 17 00:00:00 2001 From: "-T.K.-" Date: Mon, 29 Jun 2026 16:46:49 -0700 Subject: [PATCH 2/2] robot_assets: rename hardcoded bar_sito in the xacro generator template The hybrid ros2_control emitter (urdf_to_xacro.py) hardcoded "bar_sito/SitoSystem" in the Sito-joint comment, so regenerated prime xacro always carried the old name regardless of the json plugin value. Rename to humanoid_control_sito to match the bar_* -> humanoid_control_* series rename. Lite robots have no Sito joints, so this is inert for lite_description's own artifacts (1376 pytest pass); it makes future prime_description regenerations emit the new name. Co-Authored-By: Claude Opus 4.8 (1M context) --- robot_assets/workflow/urdf_to_xacro.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/robot_assets/workflow/urdf_to_xacro.py b/robot_assets/workflow/urdf_to_xacro.py index 0deb75f..fa7ccec 100644 --- a/robot_assets/workflow/urdf_to_xacro.py +++ b/robot_assets/workflow/urdf_to_xacro.py @@ -217,7 +217,7 @@ def _top_macro(robot: str, name: str) -> str: # * ethercat : CiA402 servo on an EtherCAT ring -- position/effort + an # with a per-joint slave_config; no can_id. # * sito : MIT motor on SocketCAN -- the MIT interface set + can_id/model/ -# direction (read by bar_sito). +# direction (read by humanoid_control_sito). # Sim and mock still collapse to one combined MIT block so the shared controllers # (which claim the MIT surface) run unchanged. The ``args`` from ros2_control.json # drive the dispatch (master_id, sito_can_interface, backends, ec_control_frequency, @@ -273,7 +273,7 @@ def _hybrid_ec_joint_macro(robot: str) -> str: def _hybrid_sito_joint_macro(robot: str, command: list[str], state: list[str]) -> str: return f""" + block; can_id / model / direction are read by humanoid_control_sito/SitoSystem. --> {_interface_lines(command, state)}