IRRECORD(1)

NAME
irrecord - application for recording IR-codes for usage with LIRC

SYNOPSIS
irrecord [-f] [-n] [-H driver] [-d device] [file]
irrecord -a <file>
irrecord -l
irrecord --help | --version

DESCRIPTION
This program will record the signals from your remote control and create a config file for lircd. A proper config file for lircd is maybe the most vital part of this package, so you should invest some time to create a working config file. Although I put a good deal of effort in this program it is often not possible to automatically recognize all features of a remote control.

If the program fails to recognize the protocol of the remote control you should use the --force option to at least create a config file in raw mode.

If file is not specified it defaults to "irrecord.conf"

If file already exists and contains a valid config irrecord will use the protocol description found there and will only try to record the buttons. This is very useful if you want to learn a remote where config files of the same brand are already available. Of course this will only work if the remotes use the same protocol but it's worth a try. You will find template files for the most common protocols in the remotes/generic/ directory of this package. The name of the new file is created by appending .conf to the given filename in this case.

OPTIONS

-h --help
    display this message

-v --version
    display version

-a --analyse
    Analyse a raw_codes config file, trying to convert it to a regular configuration.

-f --force
    Force raw mode. Use this if recording fails otherwise. This creates a raw codes configuration file which can be used as-is or converted using the -a option.

-n --disable-namespace
    disables namespace checks

-l --list-namespace
    list valid button names

-H --driver=driver
    Use given driver. -H help lists available drivers.

-d --device=device
    read from given device

-D --loglevel=level
    Determine the amount of logging information. [level] can be a symbolic syslog level: 'error','warning, 'info', 'notice' or 'debug'. lircd also defines three additional levels 'trace', 'trace1' and 'trace2' which gives even more messages ('trace2' bringing the most). However, in the log these messages are marked as 'debug'. The level can also be an integer in the range 3 (almost no messages) to 10.

DRIVER LOAD PATH
Drivers are loaded dynamically. This is done from a traditional *ux ':'-separated path where each component in the path is searched (leading part first, trailing last).

The path used for this is determined by (falling priority):

-   The --plugindir option.

-   The 'plugindir' entry in the [lircd] section of the lirc_options.conf file.

-   The environment variable LIRC_PLUGINDIR.

-   A hardcoded default (usually /usr/lib[64]/lirc/plugins).

FILES

/etc/lirc/lirc_options.conf
    The options file. irrecord mostly handles the values under the [irrecord] section, but some values such as debug and plugindir are inherited from the [lircd] section.

-   The location of this file can be changed using the -O/--options-file command-line option or using the environment variable LIRC_OPTIONS_PATH. The values here are used as defaults for any option not present on command line.

~/.cache/irrecord.log
    Debug output. Setting the XDG_CACHE_HOME environment variable relocates this file to $XDG_CACHE_HOME/irrecord.log

SEE ALSO
The documentation for lirc is maintained as html pages. They are located under html/ in the documentation directory.

Further information on this topic is available in section "Adding new remote controls" in html/help.html