You are not logged in.
I have an old Hauppauge PVR-250 with a "gray" remote. Been working just fine using both the lirc_dev and lirc_i2c modules as described on lirc's FAQ page. Since 2.6.38-rc2, there is no more lirc_i2c module. Upon googling around, I found this thread which teaches how the ir-kbd-i2c module can be used here.
I can't seems to get it right though.
# modprobe ir-kbd-i2c
# dmesg |tail -n 4
Registered IR keymap rc-rc5-tv
input: i2c IR (Hauppauge) as /devices/virtual/rc/rc0/input6
rc0: i2c IR (Hauppauge) as /devices/virtual/rc/rc0
ir-kbd-i2c: i2c IR (Hauppauge) detected at i2c-1/1-0018/ir0 [ivtv i2c driver #0]
# tail -n 10 /proc/bus/input/devices
N: Name="i2c IR (Hauppauge)"
P: Phys=i2c-1/1-0018/ir0
S: Sysfs=/devices/virtual/rc/rc0/input6
U: Uniq=
H: Handlers=kbd event6
B: PROP=0
B: EV=100013
B: KEY=c0010 201080400000000 0 30200a000 18000004801 9e000000000000 ffc
B: MSC=10
# lircd -H devinput -d /dev/input/event6
The author said to use the lircd.conf.devinput config file provided with lirc, which I copied over my /etc/lirc/lircd.conf but this makes no sense to me. That is the specific file for my remote. How should I melt it with my old /etc/lirc/lircd.conf to allow the remote to work again?
My old /etc/lirc/lirc.d is here.
The /usr/share/lirc/remotes/devinput/lircd.conf.devinput that came with lirc is here.
Thanks in advance!
EDIT: I created a package in the AUR supplying the needed module: https://aur.archlinux.org/packages/lirc-i2c-module/
Last edited by graysky (2014-03-23 14:28:37)
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
I had a different receiver (cx88), but the same problem. The main problem was the default config in the v4l-utils pkg. My solution:
The lircd.conf should replaced by lircd.conf.devinput, since the scancode conversion is made by the kernel (configured by v4l-utils), not lirc.
The command 'ir-keytable' prints the following message:
$ ir-keytable
Found /sys/class/rc/rc0/ (/dev/input/event4) with:
Driver cx88xx, table rc-hauppauge-new
Supported protocols: NEC RC-5 RC-6 JVC SONY LIRC
Enabled protocols: RC-5
Extra capabilities: <access denied>
The important is the table, in my case 'rc-hauppauge-new'. Than I had to correct the /etc/rc_maps.cfg. It controls the auto configuration selection for remotes. It had a line like this:
* rc-rc5-hauppauge hauppauge
Which means it loads the /etc/rc_keymaps/hauppauge file for any device with the table rc-rc5-hauppauge. But there's no such file, although there is a /etc/rc_keymaps/haupp.
So based on the aboves, I added a line to the rc_maps.cfg:
* rc-hauppauge-new haupp
I loaded the keymap with this:
# ir-keytable -a /etc/rc_maps.cfg
But this diabled all the protocolls, so I enabled them one by one:
# ir-keytable -p <protocoll>
And it turned out that I have an RC-5 remote, so I enabled that.
After this, lirc worked fine, with new button names of course.
One more thing: udev disabled all the protocolls at startup, so I corrected the /etc/udev/rules.d/70-infrared.rules:
Original:
ACTION=="add", SUBSYSTEM=="rc", RUN+="/usr/bin/ir-keytable -a /etc/rc_maps.cfg -s $name"
Corrected for RC-5 remotes:
ACTION=="add", SUBSYSTEM=="rc", RUN+="/usr/bin/ir-keytable -a /etc/rc_maps.cfg -s $name -p RC-5"
Offline
Ok, the last part of this guide doesn't work, beacause ir-keytable doesn't take -p and -a options at the same time (damn, this should be a prerelease), so the udev rule should remain untouched, and add this line to /etc/rc.local:
ir-keytable -p rc5
Last edited by bbandi (2011-05-05 17:01:39)
Offline