ratbagctl - Man Page
inspect and modify configurable mice
Synopsis
ratbagctl [<options>] list
ratbagctl [<options>] <device> <command> ...
Description
The ratbagctl tool queries or changes a device's settings.
This tool usually needs ratbagd to be running.
Options
- --version, -V
- Show program's version number and exit. 
- --verbose, -v
- Print debugging output. Multiple -v options increase the verbosity. For example, -vvv will show the protocol output. 
- --nocommit
- Do not immediately write the settings to the mouse. This allows multiple parameters to be set in a script, and the last call to ratbagctl will write them all. 
- --help, -h
- Print the help. 
General Commands
- list
- List supported devices (does not take a device argument) 
Device Commands
- info
- Print information about a device 
- name
- Print the device name 
Profile Commands
- profile active get
- Print the currently active profile 
- profile active set N
- Set profile N as to the active profile 
- profile N {COMMAND}
- Use profile N for COMMAND 
Available COMMANDs:
- get
- Print selected profile information 
- name get
- Print the name of the profile 
- name set blah
- Set the name of the profile 
- enable
- Enable a profile 
- disable
- Disable a profile 
- [resolution|dpi|rate|button|led] ...
- Use profile N for the specified command. 
Resolution Commands
Resolution commands work on the given profile, or on the active profile if none is given.
- resolution active get
- Print the currently active resolution 
- resolution active set N
- Set resolution N as the active resolution 
- resolution default get
- Print the current default resolution 
- resolution default set N
- Set resolution N as the default resolution 
- resolution N {COMMAND}
- Use resolution N for COMMAND 
Available COMMANDs:
- get
- Print selected resolution 
- [dpi|rate] ...
- Use resolution N for the specified command. 
DPI Commands
DPI commands work on the given profile and resolution, or on the active resolution of the active profile if none are given.
- dpi get
- Print the dpi value 
- dpi get-all
- Print the supported dpi values 
- dpi set N
- Set the dpi value to N 
Rate Commands
Rate commands work on the given profile and resolution, or on the active resolution of the active profile if none are given.
- rate get
- Print the report rate in ms 
- rate get-all
- Print the supported report rates in ms 
- rate set N
- Set the report rate in N ms 
Button Commands
Button commands work on the given profile, or on the active profile if none is given.
- button count
- Print the number of buttons 
- button N get
- Print the selected button 
- button N action get
- Print the button action 
- button N action set button B
- Set the button action to button B 
- button N action set special S
- Set the button action to special action S 
- button N action set macro ...
- Set the button action to the given macro 
Macro syntax:
A macro is a series of key events or waiting periods. Keys must be specified in linux/input-event-codes.h key names.
- KEY_A
- Press and release 'a' 
- +KEY_A
- Press 'a' 
- -KEY_A
- Release 'a' 
- t300
- Wait 300ms 
LED Commands
LED commands work on the given profile, or on the active profile if none is given.
- led get
- Print the current led values 
- led N get
- Print the selected LED value 
- led N {COMMAND}
- Use led N for COMMAND 
Available COMMANDs:
- mode [on|off|cycle|breathing]
- The mode to set as current 
- color RRGGBB
- The color to set as current (the color should be in the hexadecimal format). 
- rate R
- The rate to set as current 
- brightness B
- The brightness to set as current 
Examples
ratbagctl profile active get eventX
ratbagctl profile 0 resolution active set 4 eventX
ratbagctl profile 0 resolution 1 dpi get eventX
ratbagctl resolution 4 rate get eventX
ratbagctl dpi set 800 eventX
Notes
There is currently no guarantee that the output format of ratbagctl will not change in the future. There should be some stability with the commands mentioned in this man page, but do not expect it to stay the same.
Authors
ratbagctl was written by David Herrmann, Peter Hutterer and Benjamin Tissoires.
This manual page was written by Stephen Kitt <skitt@debian.org> for the Debian GNU/Linux system (but may be used by others).