I declared a parameter using a descriptor and an IntegerRange of the following:
Constraints:
Min value: 0
Max value: 4294967295
Step: 1
When I run rqt_reconfigure it lists a few parameters, then stops and prints the following error:
WARN] [1638567416.039450550] [rqt_reconfigure]: Failed to retrieve parameters from node: argument 2 overflowed: value must be in the range -2147483648 to 2147483647
The parameter itself is set to "0".
It seems like rqt_reconfigure is unhappy with the fact that the to_value from IntegerRange is 4294967295 which is higher than 2147483647.
This raises two thoughts:
Why can't the to_value be higher? in ROS2, integer parameters are 64-bit ints, so why limit it to 32-bits?
If rqt_reconfigure fails to retrieve a parameter, would it be possible to skip this parameter and continue trying to list the rest of the parameters? At the moment it fails to display all the rest of the node parameters due to only one tricky parameter.
ROS2 Foxy, Ubuntu 20.04
I declared a parameter using a descriptor and an
IntegerRange
of the following:When I run
rqt_reconfigure
it lists a few parameters, then stops and prints the following error:The parameter itself is set to "0".
It seems like
rqt_reconfigure
is unhappy with the fact that theto_value
fromIntegerRange
is 4294967295 which is higher than 2147483647.This raises two thoughts:
to_value
be higher? in ROS2, integer parameters are 64-bit ints, so why limit it to 32-bits?rqt_reconfigure
fails to retrieve a parameter, would it be possible to skip this parameter and continue trying to list the rest of the parameters? At the moment it fails to display all the rest of the node parameters due to only one tricky parameter.Thanks!