You are not logged in.

#1 2011-03-26 19:20:56

Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 9,974

since 2.6.38 there is no more lirc_i2c - how to get my remote working?

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: 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:

Last edited by graysky (2014-03-23 14:28:37)

CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs


#2 2011-04-14 18:14:20

Registered: 2009-08-30
Posts: 5

Re: since 2.6.38 there is no more lirc_i2c - how to get my remote working?

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:

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"


#3 2011-05-05 14:36:32

Registered: 2009-08-30
Posts: 5

Re: since 2.6.38 there is no more lirc_i2c - how to get my remote working?

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)


Board footer

Powered by FluxBB