@@ -79,13 +79,21 @@ load_chain_config(
7979 name_desc.name = norm_param_prefix + filter_n + " .name" ;
8080 name_desc.type = rcl_interfaces::msg::ParameterType::PARAMETER_STRING;
8181 name_desc.read_only = false ;
82+ // Must be dynamically typed because later we undeclare it and redeclare
83+ // it read-only, but statically typed params cannot be undeclared.
84+ name_desc.dynamic_typing = true ;
8285 rcl_interfaces::msg::ParameterDescriptor type_desc;
8386 type_desc.name = norm_param_prefix + filter_n + " .type" ;
8487 type_desc.type = rcl_interfaces::msg::ParameterType::PARAMETER_STRING;
8588 type_desc.read_only = false ;
89+ // Must be dynamically typed because later we undeclare it and redeclare
90+ // it read-only, but statically typed params cannot be undeclared.
91+ type_desc.dynamic_typing = true ;
8692
87- node_params->declare_parameter (name_desc.name );
88- node_params->declare_parameter (type_desc.name );
93+ node_params->declare_parameter (
94+ name_desc.name , rclcpp::ParameterValue (), name_desc);
95+ node_params->declare_parameter (
96+ type_desc.name , rclcpp::ParameterValue (), type_desc);
8997
9098 rclcpp::Parameter param_name;
9199 rclcpp::Parameter param_type;
0 commit comments