At present, the focus of dynamic_reconfigure is on providing a standard way to expose a subset of a node's parameters to external reconfiguration. Client programs, e.g., GUIs, can query the node for the set of reconfigurable parameters, including their names, types, and ranges, and present a customized interface to the user. This is especially useful for hardware drivers, but has broader applicability.

Report a Bug

Use GitHub to report bugs or submit feature requests. [View active issues]

API Stability

This package is still under development and is expected to change significantly. However, the following features will be supported:

  • dynparam's usage is stable.
  • The python client API is stable.

Utilities

reconfigure_gui

The reconfigure_gui tool is now provided in rqt.For more info check out rqt_reconfigure.

dynparam command-line tool

The dynparam tool enables command-line reconfiguration of nodes as well as loading and dumping their configuration to a file. To run dynparam, type:

$ rosrun dynamic_reconfigure dynparam COMMAND

The currently supported commands are:

  • dynparam list : list configurable nodes

  • dynparam get : get node configuration

  • dynparam set : configure node

  • dynparam set_from_parameters : copy configuration from parameter server

  • dynparam dump : dump configuration to file

  • dynparam load : load configuration from file

dynparam list

  • list

    • list all reconfigurable nodes (in alphabetic order).

      $ rosrun dynamic_reconfigure dynparam list

dynparam get

  • get node_name

    • Get the configuration of a reconfigurable node.

      $ rosrun dynamic_reconfigure dynparam get /node

    -t secs

    • Timeout in seconds.

dynparam set

  • set node_name parameter_name parameter_value

    • Set the configurable parameter of a node to a value.

      $ rosrun dynamic_reconfigure dynparam set /node parameter_name value

    OR

    set node_name yaml_dictionary

    • Set multiple configurable parameters of a node to a value.

      $ rosrun dynamic_reconfigure dynparam set wge100_camera "{'camera_url':'foo', 'brightness':58}" 

    -t secs

    • Timeout in seconds.

dynparam set_from_parameters

  • set_from_parameters node_name

    • Load the configuration for a node from the Parameter Server.

      $ rosrun dynamic_reconfigure dynparam set_from_parameters /node

    -t secs

    • Timeout in seconds.

dynparam dump

  • dump node_name file.yaml

    • Dump the configuration of a reconfigurable node to a file.

      $ rosrun dynamic_reconfigure dynparam dump /node dump.yaml

    -t secs

    • Timeout in seconds.

dynparam load

  • load node_name file.yaml

    • Load a configuration for a node from a file.

      $ rosrun dynamic_reconfigure dynparam load /node dump.yaml

    -t secs

    • Timeout in seconds.

Python API

The dynamic_reconfigure.client module can be used to reconfigure dynamically reconfigurable nodes. Please refer to the Code API for the detailed API, and this tutorial for details on how to use this module.

Wiki: dynamic_reconfigure/groovy (last edited 2023-03-23 12:04:03 by Anything3540)