LIRC manpages and user-space drivers overview
    
    LIRC contains a quite large number of tools.  This chapter tries to
    provide an overview.
    
User programs
    
      - 
         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.
Daemons
     
      - 
         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.
- 
         lircd-uinput connects
         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 .
     
Configuration tools
    
      - 
         irdb-get can list, search and
         download lircd.conf remote configuration files from the
         remotes database.
- 
         lirc-setup is a GUI tool
         which can create the different configuration files after some
         user dialogs.
- 
         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
         loaded.
- 
         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.
- 
         lirc-make-devinput can
         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
         from lircd. 
- 
         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
         logged ones. 
- 
         irtext2udp converts regular, printable
         timing data to the binary format used by the
         udp driver
     
User-space drivers
    
    Note that many drivers lacks documentation. Use
    lirc-lsplugins
    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
         configuration.
- 
         file driver logs data (pulse
         durations) otherwise sent, and can also be used to "receive"
         simulated data from a file.
- 
         ftdi  and ftdix
         supports hardware based on the FTDI chip. 
- 
         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
         iMON remotes.
- 
         iguanair
         receives and sends IR data using the IguanaIR devices.
- 
         irtoy recieves and sends IR data
         using the Dangerous Prototypes IrToy device.
- 
         srm7500atilibusb
         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.
- 
         lircd.conf: the
         lircd.conf format.