ir-keytable(1) a swiss-knife tool to handle Remote Controllers.


ir-keytable [OPTION]... --device [/dev/input/event* device]
ir-keytable [OPTION]... --sysdev [ir class (f. ex. rc0)]
ir-keytable [OPTION]... [for using the rc0 sysdev]


ir-keytable is a tool that lists the Remote Controller devices, allows one to get/set IR keycode/scancode tables, test events generated by IR, and to adjust other Remote Controller options.

Note: You need to have read permissions on /dev/input for most of the options to work.


-a, --auto-load=CFGFILE
Auto-load a table, based on a configuration file. Only works with sysdev.
-c, --clear
clears the old table
-d, --device=DEV
ir device to control
-D, --delay=DELAY
Sets the delay before repeating a keystroke
-k, --set-key=SCANKEY
Change scan/key pairs
-p, --protocol=PROTOCOL
Protocol to enable (the other ones will be disabled). To enable more than one, use the option more than one time
-P, --period=PERIOD
Sets the period to repeat a keystroke
-r, --read
reads the current scancode/keycode table
-s, --sysdev=SYSDEV
ir class device to control
-t, --test
test if IR is generating events
-v, --verbose
enables debug messages
-w, --write=TABLE
write (adds) the scancodes to the device scancode/keycode table from the specified TABLE file
-?, --help
Prints the help message
Give a short usage message
-V, --version
print the v4l2-utils version

Mandatory or optional arguments to long options are also mandatory or optional for any corresponding short options. Options can be combined together.

The options arguments are:

the /dev/input/event* device to control
the ir class as found at /sys/class/rc
a file wit a set of scancode=keycode value pairs
a set of scancode1=keycode1,scancode2=keycode2.. value pairs
protocol name to be enabled (case insensitive). Supported protocols are: NEC, RC-5, RC-6, JVC, SONY, SANYO, LIRC, RC-5-SZ, SHARP, MCE-KBD, XMP, other, all.
Delay before repeating a keystroke
Period to repeat a keystroke
configuration file that associates a driver/table name with a keymap file


On success, it returns 0. Otherwise, it will return the error code.


To list all connected Remote Controller devices:

To clean the keycode table and use a newer one:
       ir-keytable -c -w /etc/rc_keymaps/nec_terratec_cinergy_xs

To append more codes to the existing table:
       ir-keytable -w /etc/rc_keymaps/nec_terratec_cinergy_xs

To read the current keytable, on the second remote controller:         ir-keytable -s rc1 -r


Report bugs to Linux Media Mailing List <[email protected]>


Copyright (c) 2010-2014 by Mauro Carvalho Chehab.

License GPLv2: GNU GPL version 2 <>.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.