HAL support for remote controls

Arnaud Quette aquette.dev at gmail.com
Sat Aug 11 14:22:13 PDT 2007

Hi there,

I've been thinking a bit more about adding support for remote controls in HAL.

The obvious things that first come in mind are that:
- it will be through LIRC,
- it won't be used for events reporting, but only for device detection.
Event reporting will still be through the /dev/lircd socket or the
future uinput support.

Then, it will be limited to devices that can be autodetected, so USB only.
Legacy devices (serial) are so out of scope, at least while waiting
for HAL to support these (@Dave: any news on this point?)
There may be a room for detecting the ones bundled with tv cards based
upon the detection of these last (pci).

The creation of an fdi file to report static information would be
enough, at least for a first round.
Basically, it expose a new input device, with the manufacturer and
model name, and a new extra capability "input.remote_control".

The following gives an example of .fdi entry:

<?xml version="1.0" encoding="ISO-8859-1"?> <!-- -*- SGML -*- -->
<deviceinfo version="0.2">
  <!-- ATI Wireless Remote Receiver, model no. 5000023600 -->
  <match key="info.bus" string="usb_device">
   <match key="usb_device.vendor_id" int="0x0bc7">
    <match key="usb_device.product_id" int="0x0004">
     <merge key="info.category" type="string">input</merge>
     <append key="info.capabilities" type="strlist">input</append>
     <append key="info.capabilities"

I will think a bit more about adding extra information to
"input.remote_control" (drivers and configuration info, access method,

Denis Gautherot, from the Ubuntu Media Center team, is currently
working on extracting, and assembling a complete list of USB IDs and
their matching info for all USB remotes.

Once he has completed is task, we will generate a complete fdi, and
include it in the LIRC sources. Denis' work will also be useful to
make LIRC configless (still limited to USB devices)

Free Software Developer - http://arnaud.quette.free.fr/
Debian Developer - http://people.debian.org/~aquette/
Network UPS Tools (NUT) Project Leader - http://www.networkupstools.org/
Ubuntu Media Center (UMC) Project Leader - https://launchpad.net/~umc-team

More information about the hal mailing list