Linux driver support

Note: For the answer, see HVR1110 working in Linux

I decided to get with the 21st century, and buy a Digital TV card, to use with MythTV.

Bitten before, I researched what cards were supported in the Linux kernel natively, and found out that the HVR 1100 by Hauppauge was in the kernel.

cd /usr/src/linux ; grep -ir hvr1100 *

So I nipped off to PC World, and bought one. £49.99. Couldn't go wrong, I thought.

So I took it home, and plugged it in. lspci didn't show it, apart from

00:06.0 Multimedia controller: Philips Semiconductors SAA7133/SAA7135 Video Broadcast Decoder (rev d1)

which wasn't at all what it was supposed to show. (I was expecting to see Conexant).
Hmm, I thought. I'll compile up the drivers anyway, and see if I can get it to work. No go.
I was on the verge of taking it back to the shop, and getting my money back.

Anyway, after much gnashing, I popped into #v4l on irc.freenode.net, and mentioned my problems to them. After taking photos of the device, they told me that it was a newer one that was actually a HVR 1110 - a completely new device that used different chipsets (saa7131 + tda10046), and not a 1100 at all. They said that there wasn't a driver for it yet, but if I hung around, they'd knock one up for me.

I'd say you can't get much better support than that.

Hauppauge are apparently very helpful to the Linux community, including providing new cards for developers to write drivers for. They try to get support for all their devices before they are released, but it seems that I beat the system.

It's nice to hear of big companies supporting Linux - too often they don't, but perhaps they're starting to realise that people running Linux don't want to gamble with binary drivers released when the manufacturer feels like it.

Now, if MythTV could just use Postgres, I'd be a happy bunny.

PS. The support you get for Postgres in the #postgres channel on the same server is amazing too. It's great when you can actually speak with the people that write the stuff.

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

still no clues tvtime black with no signal

dmesg|grep saa
saa7130/34: v4l2 driver version 0.2.14 loaded
saa7133[0]: found at 0000:09:04.0, rev: 209, irq: 16, latency: 0, mmio: 0xd2005000
saa7133[0]: subsystem: 1461:a836, board: Avermedia M115 [card=119,autodetected]
saa7133[0]: board init: gpio is a400000
i2c_adapter i2c-1: adapter [saa7133[0]] registered
i2c-dev: adapter [saa7133[0]] registered as minor 1
saa7133[0]: i2c eeprom 00: 61 14 36 a8 00 00 00 00 00 00 00 00 00 00 00 00
saa7133[0]: i2c eeprom 10: ff ff ff ff ff 20 ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 20: 01 40 01 02 02 01 01 03 08 ff 00 c0 ff ff ff ff
saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 40: ff 65 00 ff c2 1e ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: registered device video0 [v4l2]
saa7133[0]: registered device vbi0
saa7134 ALSA driver for DMA sound loaded
saa7133[0]/alsa: saa7133[0] at 0xd2005000 irq 16 registered as card -1
saa7134 ALSA driver for DMA sound unloaded
i2c-dev: adapter [saa7133[0]] unregistered
i2c_adapter i2c-1: adapter [saa7133[0]] unregistered
saa7130/34: v4l2 driver version 0.2.14 loaded
saa7133[0]: found at 0000:09:04.0, rev: 209, irq: 16, latency: 64, mmio: 0xd2005000
saa7133[0]: subsystem: 1461:a836, board: Pinnacle PCTV 310i [card=101,insmod option]
saa7133[0]: board init: gpio is a400000
i2c_adapter i2c-1: adapter [saa7133[0]] registered
i2c-dev: adapter [saa7133[0]] registered as minor 1
saa7133[0]: i2c eeprom 00: 61 14 36 a8 00 00 00 00 00 00 00 00 00 00 00 00
saa7133[0]: i2c eeprom 10: ff ff ff ff ff 20 ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 20: 01 40 01 02 02 01 01 03 08 ff 00 c0 ff ff ff ff
saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 40: ff 65 00 ff c2 1e ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: registered device video0 [v4l2]
saa7133[0]: registered device vbi0
saa7133[0]: registered device radio0
saa7133[0]/dvb: frontend initialization failed
root@MONSTER /usr/local/src/www.avermedia.com/AVerMedia-MTSA-MD2006-0.36Beta-i386 # ./dvbscan dvb-t/it-Milano | tee channels.conf
scanning dvb-t/it-Milano
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
main:2232: FATAL: failed to open '/dev/dvb/adapter0/frontend0': 19 No such device
root@MONSTER /usr/local/src/www.avermedia.com/AVerMedia-MTSA-MD2006-0.36Beta-i386 # ls /dev/dvb/adapter0/frontend

same as pinnacle 310i ?

Hi Calum,

Mine works as a pinnacle 310i.

Try:

modprobe saa7134 card=101
modprobe saa7134_dvb

John

Hello John,Thanks for the

Hello John,

Thanks for the suggestion.

localhost ~ # modprobe -v saa7134 card=101
insmod /lib/modules/2.6.17.13/kernel/drivers/media/video/saa7134/saa7134.ko card=101 i2c_scan=1
localhost ~ # modprobe -v saa7134_dvb
insmod /lib/modules/2.6.17.13/kernel/drivers/media/video/saa7134/saa7134-dvb.ko 

This shows

Oct 23 19:23:39 localhost kernel: saa7130/34: v4l2 driver version 0.2.14 loaded
Oct 23 19:23:39 localhost kernel: ACPI: PCI Interrupt 0000:00:06.0[A] -> GSI 17 (level, low) -> IRQ 20
Oct 23 19:23:39 localhost kernel: saa7133[0]: found at 0000:00:06.0, rev: 209, irq: 20, latency: 32, mmio: 0xcefee800
Oct 23 19:23:39 localhost kernel: saa7133[0]: subsystem: 0070:6701, board: UNKNOWN/GENERIC [card=0,autodetected]
Oct 23 19:23:39 localhost kernel: saa7133[0]: board init: gpio is 6400000
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c eeprom 00: 70 00 01 67 54 20 1c 00 43 43 a9 1c 55 d2 b2 92
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c eeprom 10: ff ff ff 0e ff 20 ff ff ff ff ff ff ff ff ff ff
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c eeprom 20: 01 40 01 32 32 01 01 33 88 ff 00 aa ff ff ff ff
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c eeprom 40: ff 21 00 c2 96 10 03 32 15 60 ff ff ff ff ff ff
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c eeprom 50: ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c eeprom 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c eeprom 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c scan: found device @ 0x10  [???]
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c scan: found device @ 0x96  [???]
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c scan: found device @ 0xa0  [eeprom]
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c scan: found device @ 0xe0  [???]
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c scan: found device @ 0xe2  [???]
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c scan: found device @ 0xe4  [???]
Oct 23 19:23:39 localhost kernel: saa7133[0]: i2c scan: found device @ 0xe6  [???]
Oct 23 19:23:39 localhost kernel: saa7133[0]: registered device video0 [v4l2]
Oct 23 19:23:39 localhost kernel: saa7133[0]: registered device vbi0
localhost ~ # dvbscan /usr/share/dvb/scan/dvb-t/uk-Mendip 
scanning /usr/share/dvb/scan/dvb-t/uk-Mendip
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
main:2247: FATAL: failed to open '/dev/dvb/adapter0/frontend0': 19 No such device
localhost ~ #

My HVR1110 is now working

The answer is:

Build and install a normal kernel (with DVB and v4l stuff selected as modules).

hg clone http://linuxtv.org/hg/v4l-dvb #(you might need to install mercurial - a cvs replacement)
cd v4l-dvb && make && make install

Reboot (optional, but suggested).

Then, when it comes back:

modprobe -v saa7134 card=101 && modprobe -v saa7134_dvb
dvbscan /usr/share/dvb/scan/dvb-t/uk-yourlocation > ~/.mplayer/channels.conf
mplayer dvb://Film4

All working.

More info here :

Email sent to Hauppauge

Hello.

I'm a Linux user, and I checked before I bought a DVB card that it was supported in the Linux kernel.
I read that the HVR1100 was supported natively in the kernel.

So I went out and bought one.

However, I couldn't get it working.
This is because it's actually a HVR1110, with different chips on board. (One of which actually shows HVR1110 on it.
http://calum.org/not-an-hvr-1100/IMG_6439.JPG )

Why is this being sold in a box that says 1100 on it?
This is simple stupidity. If it's a different card, then change the packaging.

I understand that the Linux guys are working on an HVR1110 driver, but the wait is annoying. Not because I need to wait for them (as they altruistically work on it in their spare time), but because I was sold something in a box that didn't indicate what was in it. Surely this is contrary to the Trades Description Act?

Please forward this complaint on to your marketing department, as they need to be shot.

Ticked off (would-be) Hauppauge Linux user,

Calum

PS. On the other hand, it's great that you're working with the community to support Linux. Just sort out your packaging.

Hauppauge reply

Hello Callum

If you were a Windows User I would have to disagree as the actual drivers are the same between the 2 models, but being a Linux savvy I would certainly agree with you and I have cc'd a sales rep who can raise this issue.
I am aware that there are Linux driver being made and on the last update I was given a rough 2 weeks timescale.

Why don't you take it back

Why don't you take it back to PC World then since it's not as advertised.

Well, I asked the Linux

Well, I asked the Linux developers if I should take it back, and they said no, there'd be a driver in a short while.

So it's probably outside the time period that I can take it back.

I just can't believe the stupidity of selling something in a box that doesn't reflect what's in it.

Any chance yet to have this card working under Linux

Dear,

Where you already able to have this card working under linux ?

If so, can you give me some directons how to have it operational ?

Tx

They told me to keep

They told me to keep checking this page:

http://linuxtv.org/hg/v4l-dvb?f=-1;file=linux/Documentation/video4linux/CARDLIST.saa7134;style=gitweb

And when it appeared in that list, there was a driver for it.