ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

There is a difference between setting a param via rosrun, using _param, to setting the parameter from a launch file or via roslaunch. This is due to namespacing.

calib here is a so called private parameter, i.e. it is loaded in the /live_slam namespace, so the full parameter name actually is /live_slam/calib.

Using rosrun, the underscore in front of the param sets this param to be a private param of the node you run. When you do this with roslaunch, you just load the param, without the underscore, within the node tag to have it in the proper namespace.

So just get rid of the underscore before calib in your launchfile. In your launch file, the namespace for this param is /live_slam/_calib which you can also see at the roslaunch summary.