[pvrusb2] IR doesn't work

Miguel Sevillano Torrado masevillano at gmail.com
Sun May 18 17:01:18 CDT 2008


El sáb, 17-05-2008 a las 21:36 -0500, Mike Isely escribió:
> On Fri, 16 May 2008, Miguel Sevillano Torrado wrote:
> 
> > Hello,
> > 
> > I have a problem with my remote control in my PVR (Wintv-PVR-USB2). I
> > have installed the Debian packages (my SO is Debian Linux 4.0) as it is
> > described in
> > http://www.mythtv.org/wiki/index.php/LIRC_on_Debian_Etch , but it didn't
> > work finally. My model is  24029 LF Rev E189 Multi-PAL.
> > 
> > The problem is that when I try irw, or mode2, or cat /dev/lirc/0,
> > nothing is detected. I press several buttons on the remote control, but
> > the mode2 command returns nothing. How can I solve this? I send you some
> > information I think it is useful:
> > 
> > maradona:~# tail /var/log/messages
> > May 11 19:26:57 localhost -- MARK --
> > May 11 19:46:57 localhost -- MARK --
> > May 11 20:06:57 localhost -- MARK --
> > May 11 20:26:58 localhost -- MARK --
> > May 11 20:32:32 localhost kernel: i2c /dev entries driver
> > May 11 20:32:32 localhost kernel: lirc_dev: IR Remote Control driver
> > registered, at major 61
> > May 11 20:32:32 localhost kernel: lirc_i2c: chip found @ 0x71 (Hauppauge
> > IR (PVR150))
> > May 11 20:32:32 localhost kernel: lirc_dev: lirc_register_plugin:
> > sample_rate: 10
> > May 11 20:46:58 localhost -- MARK --
> > 
> > 
> > maradona:~# lsmod |grep i2c
> > lirc_i2c                9092  0
> > lirc_dev               13716  1 lirc_i2c
> > i2c_dev                 8548  0
> > i2c_algo_bit            8424  2 cx88xx,bttv
> > i2c_i801                7468  0
> > i2c_core               19680  11
> > lirc_i2c,i2c_dev,cx88xx,bttv,i2c_algo_bit,wm8775,tuner,cx25840,pvrusb2,i2c_i801,tveeprom
> > 
> > maradona:~# dmesg | tail -4
> > i2c /dev entries driver
> > lirc_dev: IR Remote Control driver registered, at major 61
> > lirc_i2c: chip found @ 0x71 (Hauppauge IR (PVR150))
> > lirc_dev: lirc_register_plugin: sample_rate: 10
> > 
> > maradona:~# l /dev/lirc*
> > srw-rw-rw- 1 root root  0 2008-05-11 20:34 /dev/lircd
> > 
> > /dev/lirc:
> > total 0
> > crw-rw----  1 root video 61, 0 2008-05-11 20:32 0
> > drwxr-xr-x  2 root root     60 2008-05-11 20:32 .
> > drwxr-xr-x 16 root root   4,4K 2008-05-11 20:34 ..
> > 
> > 
> >     When I execute  lircd -d /dev/lirc/0 and mode2 -d /dev/lirc/0, then
> > I press buttons on my remote, and it prints nothing in the console. Can
> > you help me?
> 
> Unfortunately there are several versions of the 24xxx device floating 
> around.  Does yours have an IR blaster built in?  If it does, then I 
> think I can explain this.  If it does not then I can't suggest a cause.
> 
> I had posted an explanation about this a while back, but I will try to 
> recap here:
> 
> The first PVR USB2 device was the 29xxx series.  This device contained 
> an IR receiver that was functionally identical to those found in 
> ivtv-driven devices at the time.  The way the pvrusb2 driver dealt with 
> this was not to deal with it at all.  Rather, all you had to do was 
> install lirc and let the lirc_i2c driver probe for its IR receiver chip 
> (via an I2C adapter driver in the pvrusb2 driver) and all would be well.
> 
> Then Hauppauge produced a newer device, known as the 24xxx series.  This 
> had a number of hardware changes.  I modified the pvrusb2 driver to 
> adapt accordingly, which is why the driver handles either device just as 
> well.  But one of the changes was the IR receiver.  Hauppauge removed 
> the discrete I2C-hosted IR receiver chip and replaced it with some FPGA 
> logic, all accessed not by I2C but rather by some additional commands to 
> the FX2.  I really didn't want to get into the business of rolling my 
> own IR chip driver, so I did something different in the pvrusb2 driver.  
> For 24xxx series devices, the driver creates a "fake" IR receiver chip 
> in software - from outside the driver it looks exactly like the chip 
> found in the 29xxx devices and thus the same lirc_i2c driver can attach 
> and "operate" it.  Internally, the pvrusb2 driver implements the fake 
> chip by translating operations aimed at it into appropriate commands to 
> the FPGA logic.  (This was almost trivial to emulate because the 
> interface is very simple.)  Problem solved.  For now.
> 
> Then a while ago Hauppauge changed the device again.  This time the 
> changes were not as pervasive and they kept the model number the same.  
> Unfortunately however the IR receiver changed again.  They added an 
> internal IR blaster to the device, and in doing so the IR receiver once 
> again became a "normal" I2C device in the box.  However it's a 
> completely different device now so the lirc_i2c driver can't recognize.  
> Instead, later versions of lirc (8.1 or later?) contain another IR 
> receiver driver that you're supposed to use instead.  I don't know the 
> details though because I haven't really tried this.  Others have, and 
> report success.  There is a discussion about this in the list archives.
> 
> Unfortunately there is a point of confusion though.  See Hauppauge 
> didn't change the model number on this last spin so the pvrusb2 driver 
> still treats this 3rd variant as the same 24xxx device.  Thus the driver 
> still creates that "fake" IR receiver chip, and then lirc_i2c will 
> happily probe it and try to use it.  But it won't work because the 
> internal FPGA stuff of course isn't there anymore.  So you're left with 
> what looks like a dead receiver.
> 
> There is a module option you can specify to turn off the fake receiver.  
> I suspect if you turn it off, then lirc_i2c will go away.  The option is 
> "ir_mode"; see here:
> 
> http://www.isely.net/pvrusb2/usage.html#Logging
> 
> for the description.
> 
> So this is why I'm asking if you have the 24xxx model with the IR 
> blaster.  If you do, then you're probably erroneously talking to the 
> fake receiver and not the real one - which needs a different LIRC 
> driver.  I don't remember the LIRC driver name off the top of my head, 
> but it's in the archives here and perhaps someone else might add his/her 
> $0.02 here about that.  If you don't have the IR blaster on your device, 
> then my only comment is that everything you showed above looks correct 
> and that the problem must be in how you have LIRC itself setup, but 
> there I can't help you :-(
> 
>   -Mike
> 
> 

Thanks for all of the information. I've looking for the LIRC driver and
I can't find the name you are saying. With the ./configure --help from
LIRC tarball, I can see this names: 
                          all, none, userspace, accent, act200l,
                          act220l, adaptec, alsa_usb, animax, asusdh,
                          atilibusb, atiusb, audio, avermedia,
                          avermedia_vdomate, avermedia98, bestbuy,
                          bestbuy2, breakoutbox, bte, bw6130, caraca,
                          chronos, cmdir, comX, cph06x, creative,
                          creative_infracd, devinput, digimatrix, dsp,
                          dvico, ea65, exaudio, flyvideo, gvbctv5pci,
                          hauppauge, hauppauge_dvb,
                          hercules_smarttv_stereo, igorplugusb,
                          iguanaIR, imon, imon_24g, imon_knob,
                          imon_pad, imon_rsc, irdeo, irdeo_remote,
                          irman, irreal, it87, knc_one, kworld,
                          leadtek_0007, leadtek_0010, leadtek_pvr2000,
                          livedrive_midi, livedrive_seq, logitech,
                          lptX, macmini, mceusb, mceusb2, mediafocusI,
                          mouseremote, mouseremote_ps2, mp3anywhere,
                          nslu2,packard_bell, parallel, pcmak,
                          pcmak_usb, pctv, pixelview_bt878,
                          pixelview_pak, pixelview_pro, provideo,
                          realmagic, remotemaster, sa1100, sasem,
                          sb0540, serial, silitek, sir, slinke,
                          streamzap, tekram, tekram_bt829, tira,
                          ttusbir, tuxbox, tvbox, udp, uirt2,
                          uirt2_raw, usb_uirt_raw, usbx

I'm sorry for my lack of knowledge, but I would choose the hauppauge
always... Can you tell what is the correct one?

I can tell you that the device has the IR blaster built in, because it
has a 1/8" jack on the front.

I've probed with the standalone version of the pvrusb2 driver, instead
of the in-kernel version (by the way, my kernel version is 2.6.18), but
I can only see one /dev/lirc/0 device. Why doesn't appear the
other /dev/lirc/1 device, that is the correct one? 

The versions I am using now:
kernel 2.6.18 (Debian 4.0 etch)
lirc-0.8.3 (tarball)
standalone pvrusb2 version (20080420)

I've read in http://www.isely.net/pipermail/pvrusb2/2007-May/001519.html
that it works (receiving) with this versions: 20070428a for pvrusb2 and
0.8.2pre2 for lirc, so why I can't make it works with newer versions?
What I am doing wrong?

Can you help me? 

Also I've seen that I have a debian package liblircclient0.deb which
provides the
files /usr/lib/liblirc_client.so.0.1.0, /usr/lib/liblirc_client.la
and /usr/lib/liblirc_client.so.0. Can it interference with the binaries
compiled from the lirc-0.8.3 tarball?

I am thinking also about upgrading to the unstable distribution of
Debian. Can it help?

Thank you very much.

Miguel.



More information about the pvrusb2 mailing list