[mythtvnz] lirc discussion (was: VDPAU Results)

Jean-Yves Avenard jyavenard at gmail.com
Mon Apr 27 08:18:48 BST 2009


Hi

2009/4/27 James Booth <james at booths.net.nz>:
> I'm actually using an MCE remote, all good now that I have changed the
> settings to use /dev/lirc2. Cheers.

You may want to configure some udev rules so the MCE remote always get
the same lirc device.

There's no guarantee when you boot your machine that /dev/lirc2 will
always be the MCE receiver.

If that happens, you will have no choice to either rebooting until
it's configured like before, or reconfigure lirc.

definitely look at udev.

For example, I have a cx88 tuner card on my backend that I use for my
remote control.
There's no lirc driver for it, linux just create an input interface to it.

Because of that, sometime the keyboard will be found first, sometimes
it's the dvb-t card.
So I use the following udev entry:
ID=="input*", BUS=="input", SYSFS{name}=="cx88 IR (digitalnow DNTV
Live! ", SYMLINK+="irremote"

That way, it is always assigned to /dev/irremote

A good read:
http://www.mythtv.org/wiki/Device_Filenames_and_udev
This entry is a bit old, to find out about udevinfo ; it's obsolete.
It's been replaced with udevadm.

To know about your device and how to configure it with udev, do:
udevadm info -a -p $(udevadm info -q path -n /dev/lirc2)
  looking at device '/devices/pci0000:00/0000:00:1d.0/usb7/7-2/lirc/lirc0':
    KERNEL=="lirc0"
    SUBSYSTEM=="lirc"
    DRIVER==""

  looking at parent device '/devices/pci0000:00/0000:00:1d.0/usb7/7-2':
    KERNELS=="7-2"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{configuration}==""
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bmAttributes}=="a0"
    ATTRS{bMaxPower}=="100mA"
    ATTRS{urbnum}=="25"
    ATTRS{idVendor}=="1784"
    ATTRS{idProduct}=="0001"
    ATTRS{bcdDevice}=="0000"
    ATTRS{bDeviceClass}=="00"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bMaxPacketSize0}=="16"
    ATTRS{speed}=="12"
    ATTRS{busnum}=="7"
    ATTRS{devnum}=="2"
    ATTRS{version}==" 1.10"
    ATTRS{maxchild}=="0"
    ATTRS{quirks}=="0x0"
    ATTRS{authorized}=="1"
    ATTRS{manufacturer}=="Topseed"
    ATTRS{product}=="eHome Infrared Transceiver"
    ATTRS{serial}=="TS000oZX"

For example, for my Hauppauge MCE device I have a rule in /etc/udev/rules.d
10-hauppauge-lirc.rules

KERNEL=="lirc[0-9]*", "SUBSYSTEM=="lirc", SUBSYSTEMS=="usb",
ATTRS{product}=="eHome Infrared Transceiver", SYMLINK+="mceremote"

This would create a /dev/mceremote device, that is a link to the
appropriate /dev/lircN.
in /etc/lirc/hardward.conf, reference to /dev/mceremote instead of /dev/lircN

Jean-Yves



More information about the mythtvnz mailing list