GNOME LIRC Properties

This control panel can detect your IR receiver and suggest a remote control, making configuration of lirc easy. The remote control can be directly tested in the main dialog. There also is support for customizing remote control configuration files, including learning key codes.



gnome-lirc-properties depends on lirc, pygtk, and PolicyKit.

Source Code

Bug Reports


(Copied from the Fedora Test Plan for the Fedora QA day)

Refer to bug 577287 if you're trying to setup an lirc_sir module instead.

0. Update / install gnome-lirc-properties and lirc:

yum update gnome-lirc-properties lirc

1. Check that (if necessary) kernel modules are automatically loaded for the receiver. Typically, drivers for all usb-based receivers should be automatically loaded. Serial-based receivers and receivers built into devices such as tv capture cards likely require some manual configuration to get properly loaded. If your driver auto-loaded, you should typically see two lirc kernel modules loaded:

 $ lsmod | grep lirc
 lirc_streamzap         22020  0 
 lirc_dev               21208  1 lirc_streamzap

This is not necessary for devices that use the input layer, or devices that have a userspace driver (such as the CommandIR unit). You can check whether your device is an input device by looking in the output of lshal and then plugging in the device. For example:

 $ lshal --monitor --long
 Start monitoring devicelist:
 *** 00:12:55.484: lshal: device_added, udi='/org/freedesktop/Hal/devices/usb_device_6cd_420_noserial_if1_logicaldev_input'
  info.addons.singleton = {'hald-addon-input'} (string list)
  info.capabilities = {'input', 'input.keys', 'input.mouse', 'button'} (string list)
  info.category = 'input'  (string)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_6cd_420_noserial_if1'  (string)
  info.product = 'Keyspan  RF Remote for Front Row'  (string)
  linux.device_file = '/dev/input/event7'  (string)

Many television capture cards, such as the Hauppauge WinTV PVR-250 and similar, have an IR port direction on the back panel of the card, and provide an IR receiver dongle. These ports are supported by the lirc_i2c driver, and while they do typically require manual loading of the module, they tend to Just Work without any fuss beyond that.

In the case of serial-based receivers, you'll have to manually load most likely either the lirc_serial driver or the lirc_sir driver. The lirc_serial driver is for home-brew type receivers, as detailed on the lirc web site here. Some commercially available serial receivers also use this driver. Receivers that use the lirc_sir driver are IrDA-based devices capable of operating in Serial IR mode. These include many laptops' onboard IrDA port and IrDA dongles from Tekram and Actisys. Getting the I/O port and IRQ right for these devices is often the trickiest part of configuring them.

With any of the receivers that require loading an lirc_* module, dmesg typically contains valuable information as to success or failure of the driver to attach to your hardware, so be sure to grep through your dmesg output after attempting a driver load. Most drivers can also be loaded with a 'debug=1' parameter on the modprobe line to increase their verbosity, should you run into issues.

2. If your device is already seen as an input, you can skip this step. Launch gnome-lirc-properties (System -> Preferences -> Hardware -> Infrared Remote Control). Click on the big "Auto-detect" button. If no devices are discovered, then your device isn't supported out of the box. You will need to file a new bug for gnome-lirc-properties in the upstream bugzilla.

gnome-lirc-properties uses a separate file from LIRC for remotes definition (/usr/share/gnome-lirc-properties/receivers.conf). You can usually take the actual data from /usr/share/lirc/lirc.hwdb and re-arrange it according to the syntax explained at the top of the file. So for example, a bug report to add support for the Igor Cesko's USB IR Receiver would read (note that this is custom hardware, and the data is completely bogus):

 In /usr/share/lirc/lirc.hwdb, the Igor Cesko's USB IR Receiver remote is defined as:
 Igor Cesko's USB IR Receiver;igorplugusb;lirc_dev lirc_igorplugusb;hw_default;igor/usbirreceiver.conf;

 This means the following lines should be added to /usr/share/gnome-lirc-properties/receivers.conf:
 [Igor Cesko: USB IR Receiver]
 kernel-module = lirc_igorplugusb
 compatible-remotes = Igor_IR_Receiver
 lirc-driver   = igorplugusb
 vendor-id     = 0x0000
 product-id    = 0x0000

 I do not have the vendor-id and product-id available, but this is the output of lsusb that shows the device:
 [insert lsusb output]
 The compatible-remotes value is taken from the name line of the /usr/share/lirc-remotes/igor/usbirreceiver.conf file.

3. If your remote control is an input device, file a new bug upstream, and include the output of lshal --monitor --long mentioned above. This will require modifications to /usr/share/hal/fdi/policy/10osvendor/20-x11-remotes.fdi.

4. Once all that is double-checked, click on keys on your remote, the keys should appear at the bottom of the gnome-lirc-properties window. If any key appear with "(Custom key code)" at the end, please file a bug under lirc in the Fedora bugzilla, and mention which keys show up with that value, as well as attaching the contents of /etc/lircd.conf.gnome to your bug.

Projects/gnome-lirc-properties (last edited 2013-12-03 15:02:13 by WilliamJonMcCann)