Skip to content

Latest Kilted sync generates exception from PID controller #442

@bijoua29

Description

@bijoua29

Describe the bug
I just recently updated to latest Kilted sync from 2025-07-28. I am running PidController from ros2 controllers which uses PidROS from control_toolbox, version 5.6.0. When I enable PID control, I believe I am setting some gains. However, I am getting the following exception when I do that:

[ros2_control_node-2] [ERROR] [1754410873.174428177] [controller_manager]: Caught exception of type : N6rclcpp10exceptions29ParameterNotDeclaredExceptionE while updating controller 'my_controller': parameter 'gains.my_controller/xxx.saturation' cannot be set because it was not declared

To Reproduce
Steps to reproduce the behavior:

  1. Activate a PidController controller
  2. Change pid gains on the controller
  3. See above exception

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
N/A

Environment (please complete the following information):

  • OS: Ubuntu
  • Version: Kilted sync from 2025-07-28

Additional context
It seems that the PidROS::initialize_from_ros_parameters() method is not declaring the 'saturation' parameter which may be causing this exception. I also noticed that it is not declaring the 'activate_state_publisher' parameter which may be a bug too.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions