LIRC manpages and user-space drivers overview
LIRC contains a quite large number of tools. This chapter tries to
provide an overview.
irsend sends data using
lirc from the command line.
irpty emulates keyboard
input from a tty using a remote.
irrecord can create a new
lircd.conf for a remote which isn't available in the database.
lircd is the main LIRC daemon and runs
as a systemd service. It usually reads from a kernel device like
/dev/lirc0 or /dev/ttyACM0 and presents the decoded data on an
output socket like /var/run/lirc/lircd.
lircrcd is a helper daemon which
coordinates the LIRC state as defined in lircrc in different
clients. It's managed, started and stopped by lircd.
lircmd runs as a systemd service.
It reads data from the lircd output socket and generates
mouse events, so that a remote can emulate a mouse.
irexec normally runs as a user
daemon in the session. It is used to run arbitrary commands
on various button presses.
to the lircd output socket and forwards the decoded button
presses to the kernel uinput device. This makes the lirc
events available to other applications in the same way as
events from other input devices.
lircd-setup is a small,
one-shot program which runs commands as root before
starting lircd .
irdb-get can list, search and
download lircd.conf remote configuration files from the
lirc-setup is a GUI tool
which can create the different configuration files after some
lirc-lsplugins lists the plugins
and drivers which are actually available in an installation. It
also provides info on the drivers, including drivers that can't be
lirc-lsremotes can parse
lircd.conf configuration files and act as a static checker. It is
also used to provide dense, parseable keyword information about
remote config files.
lirc-config-tool can generate
a first shot for lircrc configuration file for some applications.
It can also be used to sanitize old lircd.conf files which does
not use symbols from the official namespace.
generate a site-specific devinput.lircd.conf configuration file.
Test and debug tools
- mode2 monitors the data sent from
the kernel to lircd. It displays either timing information or, if
the hardware decodes the signals, the decoded values.
irw monitors the data sent from lircd to
the applications, normally in the /var/run/lirc/lircd socket.
ircat connects to same socket as irw. However,
it displays the application strings delivered to the application after
mapping the lircd output using the lircrc file.
irpipe works together with the irpipe kernel
driver. It can be used to feed data to lircd which it can read on
/dev/irpipe0. This device works the same way as /dev/lirc0 as seen
irsimsend can "send" data using a
lircd.conf configuration file and store the data (pulse/space
durations) in a file. This file can be used with irpipe to send
the same data to lircd.
irsimreceive can "receive" from a file
e. g., created by mode2(1) or irsimrecieve(1).
irtestcase can log the data from
a remote together with the decoded symbols. It can also send the
data to lircd and check that the decoded symbols matches the
Note that many drivers lacks documentation. Use
to generate the complete list of drivers with some basic info.
alsa-usb receives IR data
over the microphone input, using the alsa drivers.
atilibusb receives RF data
with various hardware using the X10 chip.
atwf83 receives IR data using
Aureal ATWF@83 ESKY chip.
audio sends IR data using
standard audio hardware.
default sends and receives IR
data using any device supported by the kernel.
devinput receives IR data
from any remote supported by ir-keytable(1) with a minimum of
file driver logs data (pulse
durations) otherwise sent, and can also be used to "receive"
simulated data from a file.
girs driver receives and sends
IR data using a serially connected remote device compliant
with the Girs standard (for example for usage with the Arduino).
imon-24g handles data from
the iMON 2.4G DT/LT remote.
imon handles data from various
receives and sends IR data using the IguanaIR devices.
irtoy recieves and sends IR data
using the Dangerous Prototypes IrToy device.
receives RF data using a Philips SRM-7500 capture device.
tira sends and receives IR data
using the Home Electronics Ira/Tira capture device.
udp receives data over a network
UDP port using a specific protocol.
There is also
External plugins documentation.
Devices and data formats
lirc(4) data formats and ioctl
commands for the /dev/lirc[0-9] devices. This manpage
has been upstreamed to the linux manpages project.