# Revision history [back]

### Reload Parameters using roslaunch saved as .yaml from RQT Dynamic Reconfigure

Hello All,

I have a motor controller board which is tuned using a ros node. The parameters of this board need to be tuned only once and then use the tuning parameters at each launch. Currently I have two parts to this node. Part A launches the node with parameters in a config.yaml file. The contents of which i manually typed in. Part B launches the dynamic reconfiguration tool and helps me figure out the values of these parameters. I can then save the current configuration from dyn reconfigure using the save icon in rqt (top left) ( let say this file is dynConfig.yaml ).

I want to launch using rosparam load with dynConfig.yaml as the file instead of config.yaml. If i directly use the file in launch file i get the following error

error loading <rosparam> tag:
'param' attribute must be set for non-dictionary values
XML is <rosparam command="load" file="$(find drive_control)/cfg/dynConfig.yaml"/> The traceback for the exception was written to the log file  My understanding is that this is because dynamic reconfigure adds some additional lines in the dynConfig.yaml which the rosparam is not expecting. these are the first few lines of the file when saved from rqt. !!python/object/new:dynamic_reconfigure.encoding.Config dictitems: UPLOAD_VALUES_PORT_1: false UPLOAD_VALUES_PORT_2: false groups: !!python/object/new:dynamic_reconfigure.encoding.Config dictitems: groups: !!python/object/new:dynamic_reconfigure.encoding.Config dictitems: PORT_1: !!python/object/new:dynamic_reconfigure.encoding.Config dictitems:  I want to know if there is a way that i can either convert dynConfig.yaml formatting to the .yaml that roslaunch expects or a way to directly save it in the right formatting. OR if i doing it entirely wrong. Thank you ### Reload Parameters using roslaunch saved as .yaml from RQT Dynamic Reconfigure Hello All, I have a motor controller board which is tuned using a ros node. The parameters of this board need to be tuned only once and then use the tuning parameters at each launch. Currently I have two parts to this node. Part A launches the node with parameters in a config.yaml file. The contents of which i manually typed in. Part B launches the dynamic reconfiguration tool and helps me figure out the values of these parameters. parameters ( which i manually type into config.yaml) . I can then save the current configuration from dyn reconfigure using the save icon in rqt (top left) ( let say this file is dynConfig.yaml ). I want to launch using rosparam load with dynConfig.yaml as the file instead of config.yaml. If i directly use the file in launch file i get the following error error loading <rosparam> tag: 'param' attribute must be set for non-dictionary values XML is <rosparam command="load" file="$(find drive_control)/cfg/dynConfig.yaml"/>
The traceback for the exception was written to the log file


My understanding is that this is because dynamic reconfigure adds some additional lines in the dynConfig.yaml which the rosparam is not expecting. these are the first few lines of the file when saved from rqt.

!!python/object/new:dynamic_reconfigure.encoding.Config
dictitems:
groups: !!python/object/new:dynamic_reconfigure.encoding.Config
dictitems:
groups: !!python/object/new:dynamic_reconfigure.encoding.Config
dictitems:
PORT_1: !!python/object/new:dynamic_reconfigure.encoding.Config
dictitems:


I want to know if there is a way that i can either convert dynConfig.yaml formatting to the .yaml that roslaunch expects or a way to directly save it in the right formatting. OR if i doing it entirely wrong.

Thank you

### Reload Parameters using roslaunch saved as .yaml from RQT Dynamic Reconfigure

Hello All,

I have a motor controller board which is tuned using a ros node. The parameters of this board need to be tuned only once and then use the tuning parameters at each launch. Currently I have two parts to this node. Part A launches the node with parameters in a config.yaml file. The contents of which i manually typed in. Part B launches the dynamic reconfiguration tool and helps me figure out the values of these parameters ( which i manually type into config.yaml) . I can then save the current configuration from dyn reconfigure using the save icon in rqt (top left) ( let say this file is dynConfig.yaml ).

I want to launch Part A of the node using rosparam load with dynConfig.yaml as the file instead of config.yaml. If i directly use the dynConfig.yaml file in launch file i get the following error

error loading <rosparam> tag:
'param' attribute must be set for non-dictionary values
XML is <rosparam command="load" file="$(find drive_control)/cfg/dynConfig.yaml"/> The traceback for the exception was written to the log file  My understanding is that this is because dynamic reconfigure adds some additional lines in the dynConfig.yaml which the rosparam is not expecting. these are the first few lines of the file when saved from rqt. !!python/object/new:dynamic_reconfigure.encoding.Config dictitems: UPLOAD_VALUES_PORT_1: false UPLOAD_VALUES_PORT_2: false groups: !!python/object/new:dynamic_reconfigure.encoding.Config dictitems: groups: !!python/object/new:dynamic_reconfigure.encoding.Config dictitems: PORT_1: !!python/object/new:dynamic_reconfigure.encoding.Config dictitems:  I want to know if there is a way that i can either convert dynConfig.yaml formatting to the .yaml that roslaunch expects or a way to directly save it in the right formatting. OR if i doing it entirely wrong. Thank you ### Reload Parameters using roslaunch saved as .yaml from RQT Dynamic Reconfigure Hello All, I have a motor controller board which is tuned using a ros node. The parameters of this board need to be tuned only once and then use the tuning parameters at each launch. Currently I have two parts to this node. Part A launches the node with parameters in a config.yaml file. The contents of which i manually typed in. Part B launches the dynamic reconfiguration tool and helps me figure out the values of these parameters ( which i manually type into config.yaml) . I can then save the current configuration from dyn reconfigure using the save icon in rqt (top left) ( let say this file is dynConfig.yaml ). I want to launch Part A of the node using rosparam load with dynConfig.yaml as the file instead of config.yaml. If i directly use the dynConfig.yaml file in launch file i get the following error error loading <rosparam> tag: 'param' attribute must be set for non-dictionary values XML is <rosparam command="load" file="$(find drive_control)/cfg/dynConfig.yaml"/>
The traceback for the exception was written to the log file


My understanding is that this is because dynamic reconfigure adds some additional lines in the dynConfig.yaml which the rosparam is not expecting. these are the first few lines of the file when saved from rqt.

!!python/object/new:dynamic_reconfigure.encoding.Config
dictitems:
groups: !!python/object/new:dynamic_reconfigure.encoding.Config
dictitems:
groups: !!python/object/new:dynamic_reconfigure.encoding.Config
dictitems:
PORT_1: !!python/object/new:dynamic_reconfigure.encoding.Config
dictitems:


I want to know if there is a way that i can either convert dynConfig.yaml formatting to the .yaml that roslaunch expects or a way to directly save it in the right formatting. OR if i am doing it entirely wrong.the wrong way.

Thank you

### Reload Parameters using roslaunch saved as .yaml from RQT Dynamic Reconfigure

Hello All,

I have a motor controller board which is tuned using a ros node. The parameters of this board need to be tuned only once and then use the tuning parameters at each launch. Currently I have two parts to this node. Part A launches the node with parameters in a config.yaml file. The contents of which i manually typed in. Part B launches the dynamic reconfiguration tool and helps me figure out the values of these parameters ( which i manually type into config.yaml) . I can then save the current configuration from dyn reconfigure using the save icon in rqt (top left) ( let say this file is dynConfig.yaml ).

I want to launch Part A of the node using rosparam load with dynConfig.yaml as the file instead of config.yaml. If i directly use the dynConfig.yaml file in launch file i get the following error

error loading <rosparam> tag:
'param' attribute must be set for non-dictionary values
XML is <rosparam command="load" file="\$(find drive_control)/cfg/dynConfig.yaml"/>
The traceback for the exception was written to the log file


My understanding is that this is because dynamic reconfigure adds some additional lines in the dynConfig.yaml which the rosparam is not expecting. these are the first few lines of the file when saved from rqt.

!!python/object/new:dynamic_reconfigure.encoding.Config
dictitems: