-
Notifications
You must be signed in to change notification settings - Fork 299
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
rqt_controller_manager: Error in logic for controller activation #1791
Comments
@SantoshGovindaraj you want to tackle this? |
Thank you @christophfroehlich for reaching out! I’d be happy to take on this issue. I believe this would be a great opportunity to contribute further. Just to mention, I’m still relatively new to open-source contributions, but I’m eager to learn and tackle the challenge. |
Welcome! For this reasons we have the good-first-issue labels ;) |
You can use any of the ros2_control_demos or gz_ros2_control_demos for playing aroung with the GUI. |
Hi @christophfroehlich I just managed to look into this. |
yes I think so, too. |
Many Thanks @christophfroehlich , I have amended the changes and I am trying to the test it with ros2_control_demo_example_2, to find any other potential bugs. |
@christophfroehlich I have a quick question that I hope you don’t mind addressing. I’ve been trying to resolve this issue for a while. As per the instructions, I forked the repo and built it on my system (Ubuntu 22, ROS Iron). In the same workspace, I cloned and successfully built ros2_control_demos. However, when running diffbot.launch.py, the joint_state_controller and diffbot_base_controller fail to load. Should I be working with the iron branch instead? If so, would this create any conflicts when submitting a PR? Apologies if this isn't the appropriate place to ask this question. |
If you want to use the rolling version of ros2_control (the master branch) on an iron distro, you also have to compile the correct version of ros2_controllers. See this repos file for example. |
Thanks, @christophfroehlich . I'm still encountering issues building the I will push a PR with the suggested changes. Please let me know if any additional modifications are needed. |
what are the issues with building it? as far as I remember, the compatibility job only fails somewhere in the tests |
Yes, I agree. The build is failing in the tests. The following is the build error I am facing.
|
No, the test stage is failing, not the build. From your log it seems that you have mixed different versions of the repos, or you have sourced your iron workspace before the build and the overlay does not work. Do you have ros2_control, ros2_controllers, and ros2_control_demos on the master branch? And built every dependency, e.g, |
Yes, it solved the issue I was having. Now, I am able to successfully build and run the |
Background
If the controller is unconfigured (e.g, after unloading with the GUI), the item "configure and activate" is shown.
ros2_control/rqt_controller_manager/rqt_controller_manager/controller_manager.py
Lines 236 to 238 in 0433960
But then, the wrong actions are performed. Instead of load+activate it should configure+activate
ros2_control/rqt_controller_manager/rqt_controller_manager/controller_manager.py
Lines 262 to 264 in 0433960
Instructions
Hi, this is a
good-first-issue
issue. This means we've worked to make it more legible to people who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.We're interested in helping you take the first step, and can answer questions and help you out along the way. Note that we're especially interested in contributions from underrepresented groups!
We know that creating a pull request is the biggest barrier for new contributors. This issue is for you 💝
If you have contributed before, consider leaving this PR for someone new, and looking through our general bug issues. Thanks!
🤔 What you will need to know.
Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.
📋 Step by Step
🙋 Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!
🗄️ Create a local workspace for making your changes and testing following these instructions, for Step 3 use "Download Source Code" section with these instructions.
🍴 Fork the repository using the handy button at the top of the repository page and clone it into
~/ws_ros2_control/src/ros-controls/ros2_control
, here is a guide that you can follow (You will have to remove or empty the existingros2_control
folder before cloning your own fork)Checkout a new branch using
git checkout -b <branch_name>
🤖 Apply
pre-commit
auto formatting, by runningpip3 install pre-commit
and runningpre-commit install
in the ros2_control repo.💾 Commit and Push your changes
🔀 Start a Pull Request to request to merge your code into
master
. There are two ways that you can start a pull request:Is someone else already working on this?
🔗- We encourage contributors to link to the original issue in their pull request so all users can easily see if someone's already started on it.
👥- If someone seems stuck, offer them some help!
🤔❓ Questions?
Don’t hesitate to ask questions or to get help if you feel like you are getting stuck. For example leave a comment below!
Furthermore, you find helpful resources here:
Good luck with your first issue!
The text was updated successfully, but these errors were encountered: