Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MSA: Problems when not using ros2_control #3315

Open
jimmy-mcelwain opened this issue Feb 5, 2025 · 1 comment
Open

MSA: Problems when not using ros2_control #3315

jimmy-mcelwain opened this issue Feb 5, 2025 · 1 comment
Labels
bug Something isn't working

Comments

@jimmy-mcelwain
Copy link

Description

I have found what I think is an oversight/bug in MoveIt Setup Assistant. The gist of it is that if you never click on the ros2_control URDF Modifications section of the MSA, it seems to assume that you are not using ros2_control. But if you do click on the ros2_control URDF Modifications section of the MSA, it seems to assume that you are using ros2_control, and there is no way to "reset" it so it doesn't generate files assuming you will not use ros2_control other than to restart the MSA.

For context, I am working on MotoROS2, which does not use ros2_control. But while generating config files using the MSA, I noticed that ros2_control stuff kept on getting populated even though I didn't want it to be. For example motoman_gp12.ros2_contro.xacro, initial_positions.yaml, and motoman_gp12.urdf.xacro were being created. Not only that, but files that I did want to be created were getting modified with ros2_control information. For example, .setup_assistant had ros2_control stuff.

I believe that there should be a toggle button "Configure to use ros2_control" or something to that effect. Somebody not using ros2_control could easily click on the ros2_control URDF Modifications section accidentally or just to check what it is/if they need to disable it. And even if they deselect the ros2_control components in the last step, some of the generated files that they do want (e.g. .setup_assistant) will not be properly generated.

ROS Distro

Humble

OS and version

Ubuntu 22.04

Source or binary build?

Binary

If binary, which release version?

2.5.7

If source, which branch?

No response

Which RMW are you using?

None

Steps to Reproduce

Go through the MSA process without EVER clicking on ros2_control URDF Modifications and it should look like this at the last step:

Image

Then generate the files and take a look at the generated .setup_assistant file. It should look like this:

moveit_setup_assistant_config:
  urdf:
    package: motoman_gp12_support
    relative_path: urdf/gp12.xacro
  srdf:
    relative_path: config/motoman_gp12.srdf
  package_settings:
    author_name: a
    author_email: [email protected]
    generated_timestamp: 1738775131

Go through the MSA process while clicking on the ros2_control URDF Modifications and it should look like this at the last step:

Image

Then generate the files and take a look at the generated .setup_assistant file. It should look like this:

moveit_setup_assistant_config:
  urdf:
    package: motoman_gp12_support
    relative_path: urdf/gp12.xacro
  srdf:
    relative_path: config/motoman_gp12.srdf
  package_settings:
    author_name: j
    author_email: [email protected]
    generated_timestamp: 1738775848
  control_xacro:
    command:
      - position
    state:
      - position
      - velocity
  modified_urdf:
    xacros:
      - control_xacro
  control_xacro:
    command:
      - position
    state:
      - position
      - velocity

I have also tried setting the command interfaces and state interfaces to all be empty, but that does not fix the problem.

Expected behavior

I can generate config files that do not use ros2_control

Actual behavior

ros2_control config files are generated

Backtrace or Console output

No response

@jimmy-mcelwain
Copy link
Author

After some digging, I think that at least part of the problem is caused by this line:

This sets the control interfaces to default_ci_ when you open the ros2_control URDF Modifications, and there is no way to "clear" it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant