TV Tuner With Linux

June 29th, 2006 by Andrew

I’ve had a Hauppauge WinTV Go Plus TV Tuner for about a year now. Originally, I installed it in my Windows machine. The software that came with the card was horrible, and the drivers were even worse. Since the right driver for Windows XP apparently didn’t come in the box, I had to hunt it down on the Internet. Installing the driver involved a chicken, a goat, and some arcane incantations. I had enough, especially when the sound on the card intermittently worked when I scheduled a show to be recorded. Nothing is worse than 2 gigs of video with no sound.

Present day…
After some research on the good ol’ Internet, I found how to get the tv tuner to work with my machine. I have Ubuntu installed with a 2.6 version linux kernel. I had to set some driver flags to make everything happy. I recommend TVtime if you’ll be watching the TV right on your monitor. It has a nice interface, and it’s really easy to use.

Here are some of the details that finally made the tuner work:

Removing the drivers that got loaded at boot time:

rmmod tuner
rmmod bt878
rmmod bttv

Adding the drivers with correct settings:

modprobe bttv card=10 tuner=50
modprobe tuner card=10 tuner=50
modprobe bt878

You may have to fool around with the tuner number. I’ve seen that 2, 39, and some other tuner numbers may work for WinTV cards. To make sure that your tuner is using the right tuner number, try the command:

dmesg | grep bttv

You should find a line that says something like:

bttv0: using tuner=50

If you do, you should be golden. This is what my output looked like:

[4358448.355000] bttv: driver version 0.9.15 loaded
[4358448.355000] bttv: using 8 buffers with 2080k (520 pages) each for capture
[4358448.364000] bttv: Bt8xx card found (0).
[4358448.364000] bttv0: Bt878 (rev 17) at 0000:01:02.0, irq: 9, latency: 132, mmio: 0xf4000000
[4358448.365000] bttv0: detected: Hauppauge WinTV [card=10], PCI subsystem ID is 0070:13eb
[4358448.366000] bttv0: using: Hauppauge (bt878) [card=10,insmod option]
[4358448.366000] bttv0: gpio: en=00000000, out=00000000 in=00ffffdb [init]
[4358448.368000] bttv0: Hauppauge/Voodoo msp34xx: reset line init [5]
[4358448.510000] bttv0: using tuner=50
[4358448.510000] bttv0: i2c: checking for MSP34xx @ 0x80... not found
[4358448.512000] bttv0: i2c: checking for TDA9875 @ 0xb0... not found
[4358448.514000] bttv0: i2c: checking for TDA7432 @ 0x8a... not found
[4358448.541000] bttv0: i2c: checking for TDA9887 @ 0x86... not found
[4358448.846000] bttv0: registered device video0
[4358448.852000] bttv0: registered device vbi0
[4358448.859000] bttv0: registered device radio0
[4358448.859000] bttv0: PLL: 28636363 => 35468950 .. ok


There are no comments.

Leave a Reply