[mythtv-users] Multiple LIRC Devices Causing Problems with HD-PVR Blaster on F14

Ramin K ramin-list at badapple.net
Mon Feb 14 17:09:52 UTC 2011


On 2/13/2011 11:42 AM, John Welch wrote:
> Hello all,
>
> I have been having ongoing issues with the IR Blaster on my HD-PVR
> being used for channel changing on my Fedora 14 MythTV back-end
> system.  I finally had a chance to do some troubleshooting today and
> discovered that somewhere along the way my system switched things
> around and is now assigning the first lirc device (/dev/lirc0) to my
> pcHD3000 (module ir_lirc_codec) and the second lirc device
> (/dev/lirc1) to the HD-PVR (module lirc_zilog).  Previously this had
> consistently been the other way around, and I never had to do anything
> to force the order.  I thought it might be as easy as updating my lirc
> start-up configuration file (/etc/sysconfig/lirc) to point to
> /dev/lirc1 instead of /dev/lirc0.  However, as of yet at least I have
> not been able to make this work.
>
> Right now the only way I can get the HD-PVR blaster to work is to stop
> lirc, remove all the lirc modules, add the lirc_zilog back in
> (modprobe lirc_zilog) and then restart lirc.  I guess I can script
> this, but there seems like the *should* be a better way.  As I am not
> using anything with lirc and the pcHD3000 I don't really care if this
> module loads or what device it gets assigned.  All I want is for the
> HD-PVR blaster to always be /dev/lirc0.  I think there should be a way
> to force the order of the lirc devices or prevent the ir_lirc_codec
> from loading, but I can't seem to figure it out.
>
> I know this isn't a MythTV issue, but I figure someone must have a
> similar configuration.  Any help would be appreciated.

Here's what I do on my system which has three HDPVRs connected. You'd 
need to figure out how to match the HD3000, but the idea is the same.

cat /etc/udev/rules.d/60-symlinks.rules
# start /dev/captureXX
SUBSYSTEM=="video4linux", ATTRS{product}=="Hauppauge HD PVR", 
ATTRS{serial}=="1111111", SYMLINK+="capture01"
SUBSYSTEM=="video4linux", ATTRS{product}=="Hauppauge HD PVR", 
ATTRS{serial}=="22222222", SYMLINK+="capture02"
SUBSYSTEM=="video4linux", ATTRS{product}=="Hauppauge HD PVR", 
ATTRS{serial}=="33333333", SYMLINK+="capture03"

# start /dev/capture_IRXX
SUBSYSTEM=="lirc", ATTRS{product}=="Hauppauge HD PVR", 
ATTRS{serial}=="1111111", SYMLINK+="capture_IR01", MODE="0666"
SUBSYSTEM=="lirc", ATTRS{product}=="Hauppauge HD PVR", 
ATTRS{serial}=="22222222", SYMLINK+="capture_IR02", MODE="0666"
SUBSYSTEM=="lirc", ATTRS{product}=="Hauppauge HD PVR", 
ATTRS{serial}=="33333333", SYMLINK+="capture_IR03", MODE="0666"

With the above udev config I can ignore /dev/videoX and /dev/lircX 
because they can change and count on /dev/captureXX and 
/dev/capture_IRXX which are created based on the serial of the HDPVRs.

so after everything comes up I've got these devices

/dev/capture01
/dev/capture02
/dev/capture03
/dev/capture_IR01
/dev/capture_IR02
/dev/capture_IR03

Then I copy some files around.
sudo cp /etc/init.d/lirc /etc/init.d/lirc01
sudo cp /etc/sysconfig/lirc /etc/sysconfig/lirc01

edit to match my new devices, mess with chkconfig, and now you've got 
two separate lirc daemons that never step on each other and don't depend 
on /dev/lirc order.

Ramin


More information about the mythtv-users mailing list