OS Manuals

/usr/bin/ir-ctl

Linux media (V4L2/DVB/CEC/IR) utilities and libraries

From v4l-utils 1.32.0-r1 (enterprise-packages), captured 2026-11-08 by running ir-ctl --help (exit 0). permalink

Usage: ir-ctl [OPTION...] --features
  or:  ir-ctl [OPTION...] --receive
  or:  ir-ctl [OPTION...] --send [file to send]
  or:  ir-ctl [OPTION...] --scancode [scancode to send]
  or:  ir-ctl [OPTION...] --keycode [keycode to send]
  or:  ir-ctl [OPTION...] [to set lirc option]

Receive IR, send IR and list features of lirc device
You will need permission on /dev/lirc for the program to work

On the options below, the arguments are:
  DEV      - the /dev/lirc* device to use
  FILE     - a text file containing pulses and spaces
  CARRIER  - the carrier frequency to use for sending
  DUTY     - the duty cycle to use for sending
  EMITTERS - comma separated list of emitters to use for sending, e.g. 1,2
  GAP      - gap between sending in microseconds
  RANGE    - set range of accepted carrier frequencies, e.g. 20000-40000
  TIMEOUT  - set length of space before receiving stops in microseconds
  KEYCODE  - key code in keymap
  SCANCODE - protocol:scancode, e.g. nec:0xa814
  KEYMAP   - a rc keymap file from which to send keys

Note that most lirc setting have global state, i.e. the device will remain
in this state until set otherwise.

  -d, --device=DEV           lirc device to use
  -f, --features             list lirc device features
  -K, --keycode=KEYCODE      send IR keycode from keymap
  -r, --receive              receive IR to stdout
  -s, --send=FILE            send IR pulse and space file
  -S, --scancode=SCANCODE    send IR scancode in protocol specified
  -v, --verbose              verbose output

 Receiving options:
  -1, --one-shot             end receiving after first message
      --mode2                output in mode2 format
  -m, --measure-carrier      report carrier frequency
  -M, --no-measure-carrier   disable reporting carrier frequency
  -n, --narrowband           use narrowband receiver, disable learning mode
  -R, --carrier-range=RANGE  set receiver carrier range
  -t, --timeout=TIMEOUT      set receiving timeout
  -w, --wideband             use wideband receiver aka learning mode

 Sending options:
  -c, --carrier=CARRIER      set send carrier
  -D, --duty-cycle=DUTY      set send duty cycle
  -e, --emitters=EMITTERS    set send emitters
  -g, --gap=GAP              set gap between files or scancodes
  -k, --keymap=KEYMAP        use keymap to send key from

  -?, --help                 Give this help list
      --usage                Give a short usage message
  -V, --version              Print program version

Mandatory or optional arguments to long options are also mandatory or optional
for any corresponding short options.

Report bugs to Sean Young <sean@mess.org>.
Options (23)
OptionDescriptionSource
-d, --device DEVlirc device to control, /dev/lirc0 by defaulthelp + man
-f, --featuresList the features of the lirc device.help + man
-K, --keycode KEYCODESend the KEYCODE from the keymap which must be specified with --keymap.help + man
-r, --receiveReceive IR and print to standard output.help + man
-s, --send FILEsend IR pulse and space filehelp + man
-S, --scancode SCANCODESend the IR scancode in the protocol specified.help + man
-v, --verboseVerbose output;help + man
-1, --one-shot, --oneshotWhen receiving, stop receiving after the first message, i.e. after a space or timeout of more than 19ms is received.help + man
--mode2When receiving, output IR in mode2 format.help + man
-m, --measure-carrierIf the hardware supports it, report what the carrier frequency is on receiving.help + man
-M, --no-measure-carrierDisable reporting of the carrier frequency.help + man
-n, --narrowbandSwitches back to the normal, narrowband receiver if the wideband receiver was enabled.help + man
-R, --carrier-range RANGESet the accepted carrier range for the narrowband receiver.help + man
-t, --timeout TIMEOUTSet the length of a space at which the receiver goes idle, specified in microseconds.help + man
-w, --widebandUse the wideband receiver if available on the hardware.help + man
-c, --carrier CARRIERSets the send carrier frequency.help + man
-D, --duty-cycle DUTYSet the duty cycle for sending in percent if the hardware support it.help + man
-e, --emitters EMITTERSComma separated list of emitters to use for sending.help + man
-g, --gap GAPSet the gap between scancodes or the gap between files when multiple files are specified on the command line.help + man
-k, --keymap KEYMAPThe rc keymap file in toml format.help + man
-?, --helpPrints the help messagehelp + man
--usageGive a short usage messagehelp + man
-V, --versionprint the v4l2-utils versionhelp + man

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.