The previous page covered Client configurations. This page contains additional configurations for Teleop.
Items marked "required" are mandatory.
The default is as follows. Settings are added or overwritten depending on the loaded config. Since it is implemented in a HashMap, it will overwrite any already set and append for new settings.
initial_mode = ""
gamepad = "gilrs"
[control_nodes_config]
[gil_gamepad_config]
device_id = 0
[gil_gamepad_config.map]
button_map = [
["DPadLeft" , "DPadLeft" ],
["Select" , "Select" ],
["East" , "East" ],
["DPadUp" , "DPadUp" ],
["LeftTrigger" , "LeftTrigger" ],
["DPadDown" , "DPadDown" ],
["RightTrigger" , "RightTrigger" ],
["RightTrigger2" , "RightTrigger2" ],
["Start" , "Start" ],
["LeftTrigger2" , "LeftTrigger2" ],
["Mode" , "Mode" ],
["DPadRight" , "DPadRight" ],
["South" , "South" ],
["North" , "North" ],
["RightThumb" , "RightThumb" ],
["LeftThumb" , "LeftThumb" ],
["West" , "West" ]
]
axis_map = [
["LeftStickY" , "LeftStickY" ],
["LeftStickX" , "LeftStickX" ],
["RightStickX" , "RightStickX" ],
["DPadY" , "DPadY" ],
["DPadX" , "DPadX" ],
["RightStickY" , "RightStickY" ]
]
axis_value_map = [["LeftStickX" , -1.0 ], ["RightStickX" , -1.0 ]]
[plugins]
IK Node Teleop Config
config IkNodeConfig (required)
joint_trajectory_client_name string (required)
solver_name string (required)
Joint Pose Sender Config
duration_secs double (default 2.0)
mode string (default "pose")
IK Node Config
mode string (required)
move_step_angular array double (default [0.05, 0.05, 0.17])
move_step_linear array double (default [0.01, 0.01, 0.01])
step_duration_secs double (default 0.1)
Joy Joint Teleop Node Config
joint_step double (default 0.02)
mode string (required)
step_duration_secs double (default 0.1)
Robot Command Config
file_path string (required)
name string (required)
[[control_nodes_config.command_configs]]
name = "audio bar"
file_path = "sample_audio_command.txt"
[[control_nodes_config.command_configs]]
name = "ros speak"
file_path = "sample_speak_command.txt"
openrr_apps_robot_command speak foo bar
openrr_apps_robot_command speak espeak "This is topic message"
PrintSpeaker: command audio sine
PrintSpeaker: command ros speak
string or BuiltinGamepad ("gilrs" or "keyboard"). Default is "gilrs".
Gil Gamepad Config
device_id uint (default 0)
map Map
A comparison table with Gilrs
looks like this. For reference only, as it depends on the Joystick used. If you want to assign this particular button or stick, you can change the key by following the example and mapping it to the teleop_config file.
Button and stick names follow gilrs layout .
GilrsAxis Axis
"LeftStickX" "LeftStickX" (default)
"LeftStickY" "LeftStickY" (default)
"LeftZ" "LeftTrigger"
"RightStickX" "RightStickX" (default)
"RightStickY" "RightStickY" (default)
"RightZ" "RightTrigger"
"DPadX" "DPadX" (default)
"DPadY" "DPadY" (default)
"Unknown" "Unknown"
GilrsButton Button
"South" "South" (default)
"East" "East" (default)
"North" "North" (default)
"West" "West" (default)
"C"
"Z"
"LeftTrigger" "LeftTrigger" (default)
"LeftTrigger2" "LeftTrigger2" (default)
"RightTrigger" "RightTrigger" (default)
"RightTrigger2" "RightTrigger2" (default)
"Select" "Select" (default)
"Start" "Start" (default)
"Mode" "Mode" (default)
"LeftThumb" "LeftThumb" (default)
"RightThumb" "RightThumb" (default)
"DPadUp" "DPadUp" (default)
"DPadDown" "DPadDown" (default)
"DPadLeft" "DPadLeft" (default)
"DPadRight" "DPadRight" (default)
"Unknown" "Unknown"
[gil_gamepad_config.map]
axis_map = [
['LeftStickX' , 'LeftStickX' ],
['LeftStickY' , 'LeftStickY' ],
['LeftZ' , 'LeftTrigger' ],
['RightStickX' , 'RightStickX' ],
['RightStickY' , 'RightStickY' ],
['RightZ' , 'RightTrigger' ],
['DPadX' , 'DPadX' ],
['DPadY' , 'DPadY' ],
]
axis_value_map = [
['LeftStickX' , -1.0 ],
['RightStickX' , -1.0 ],
['LeftStickY' , -1.0 ],
['RightStickY' , -1.0 ],
]
button_map = [
['East' , 'South' ],
['C' , 'East' ],
['North' , 'North' ],
['South' , 'West' ],
['West' , 'LeftTrigger' ],
['LeftTrigger' , 'LeftTrigger2' ],
['Z' , 'RightTrigger' ],
['RightTrigger' , 'RightTrigger2' ],
['LeftTrigger2' , 'Select' ],
['RightTrigger2' , 'Start' ],
['Mode' , 'Mode' ],
['Select' , 'LeftThumb' ],
['Start' , 'RightThumb' ],
['DPadUp' , 'DPadUp' ],
['DPadDown' , 'DPadDown' ],
['DPadLeft' , 'DPadLeft' ],
['DPadRight' , 'DPadRight' ],
]
The initial_mode
allows you to specify the initial mode.
initial_mode = "base"
Teleop Plugin Config Description
args string Arguments passed when creating this instance.
args_from_path string Pass the contents of the specified file as an argument.
path string (required) Path to the plugin. If no extension is specified, the default extension for cdylib
on the current OS will be selected. (linux: .so
, macos: .dylib
, windows: .dll
)
The robot_config_path
specifies the relative path to the config file.
robot_config_path = "sample_robot_client_config_for_urdf_viz.toml"