Skip to content

Conversation

@arntanguy
Copy link
Collaborator

@arntanguy arntanguy commented Mar 10, 2025

This PR is a rebased from Pierre's work on connecting robot modules together.

This is another experimental branch of mc_rtc. This one allows to connect multiple RobotModule together to create a single Robot instance.

Things that are missing from the branch:

auto-refresh of the Tasks/Constraints when an involved robot is modified through a connection
Refreshing displayed urdf

arntanguy and others added 14 commits January 13, 2026 14:53
The introduction of RobotModule::connect made it interesting to compose
robot modules. In order to expose new modules that are composed of
multiple other existing modules, it is necessary to allow loading other
robot modules while creating a new one.

This effectively allows calling get_robot_module from within the
create() function of a new robot module library. To do so we unlock the
mutex just before the actual call to create().

This may have unintended side effects.
jointConfig for a free joint is a 0-matrix, thus the transform is a zero
matrix. This messes up the root joint's inertia and such.
For now we do not generate a connected robot module using the real urdf
paths, we probably should. To support display as-is in ROS, we use the
control urdf as real urdf.
@arntanguy arntanguy force-pushed the topic/ConnectModules branch from 85fb44c to 283b8eb Compare January 13, 2026 17:45
@arntanguy
Copy link
Collaborator Author

I'll split this PR in two soon:

This allows to define collisions and ignore them if the convex files are
missing. Useful for quick multi-robot FSM setups.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants