-
Notifications
You must be signed in to change notification settings - Fork 293
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
Reconsider automatically_declare_parameters_from_overrides
for all controllers
#531
Comments
Yeah but what do we do then? Can't filters work on a different "nodehandle/namespace"? |
No, because they are not a node on their own. And it shouldn't be. I think that we don't have this issue if we properly declare parameters in the JTC. This was the source of this issue. TBH the current solution is a bit dirty and hacky. |
It seems we are alternating between two bad solutions. Is there a third one that's clean?? |
I don't think so. I am actually sure that the current approach is not correct for our library. This is OK if you have some simpler node without possiblity to extend it with many libraries. The old approach is right and we should simply declare those parameter explicity. As done here (ros-controls/ros2_controllers#225) |
I agree the current solution is not the cleanest, however in my understanding the solution that existed before was aiming towards current behavior (avoiding the need to explicitly declare every parameter for the controller's use). However, as @destogl says, incorporation of other packages that don't use 'auto_declare' could really be a problem here. However |
@livanov93 if you have some capacity, this would be great. I think that only JointTrajectoryController has these issues. |
@destogl I will address it soon and let hardcode the parameter declaration for jtc. |
Long story-short: "I have a follow-up issue with this parameter"
Originally posted by @destogl in #504 (comment)
Long story:
I understand that we need this automatic declaration for JTC per-joint trajectory limits. And adding this parameter caused further fix in form of the
auto_declare
method because otherwise, the controllers are declaring parameters twice.Now I have an issue when using external libraries which declare their parameters, like ros/filters library, especially filters chain structure. To get this working we would need to add an
auto_declare
throughout rclcpp. this leads me to the conclusion that the approach done in #504 is probably not the right one and we should reconsider it again.The text was updated successfully, but these errors were encountered: