Next Previous Contents

1. The Pixelview PlayTV Pro 2 card

The first thing you'll need to do, is to make sure that this HowTo is relevant to your card. To make the task as simple as it can get, I'm including pictures of the packaging and the actual card.

1.1 Pictures of the card and its packaging

Box front view

Box rear view

Box connector detail

Card top view

Card bottom view

Remote controller in package

1.2 Package contents

  1. Prolink "Pixelview PlayTV Pro 2" PCI TV-tuner card
  2. TV-audio-out to Sound-card-line-in connector cable
  3. FM antenna cable
  4. Remote control
  5. One pair of batteries for the remote control
  6. Installation Manual
  7. Windows 98SE/XP Installation CD with recording utility software

The most important items are (1) and (2). The Remote control in your packaging may vary from the one shown in the picture. The card uses a BT878A (also Conexant878A) chipset and is capable of 640x480 image capture resolution. The card comes with a Conexant 4 in 1 tuner. If you need higher resolution, HDTV or DVB support, you might as well shop for a newer card based on a newer c8xx chipset or even try your luck with a SAA713x chipset.

There are two versions of this card available in the market, one with an eeprom and the other without the eeprom. We'll still be able to make them work even if the eeprom wasn't present to identify the chipset and tuner automagically.

1.3 Installing the card within Linux

Installing the card in the system

You should be able to slot in the PCI card. The presence of the FM radio and RF video connectors make this a little tricky on some cabinets. Make sure you have some space below the card as the tuner would get quite hot and heat-dissipation may be favorable. I suggest you do this while the system is switched off, even though you might believe in PCI hotplug drivers; caution is the better approach.

Now connect the "tv-audio-out" of your TV tuner card to the "line-in" of your sound card. You may also choose to use a different set of speakers for this instead of routing the sound. However, routing the sound makes recording simpler to deal with.

Probing your PCI bus from Linux

Boot-up your system as you would normally. If you are in real haste to get things working, I'd suggest you get to init 1. Now try, this (assuming you have administrative rights.)

# lspci -d 109e:* 
0000:06:01.0 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 11) 
0000:06:01.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 11) 

If your result is similar to the one above, we've stepped through the tough part. The card has been detected, linux is able to map the card in PCI space. If this does not happen, you can try changing slots or try "lspci" without any arguments. Here "109e" is Brooktree's vendor id. Please note that the card visibly has a "Conexant 878A chipset". Conexant bought Brooktree and hence all subsequent chipsets manufactured are referred to as Conexant <chipset id>.

If there are indeed differences between the package you have and the one I am using, you would still be able to see two new Multimedia controllers listed during your "lspci" command. To make sure you have the right card (maybe the packaging was the same, but the card wasn't), I reccommend you visit the BTTV chipset card gallery which has images of all cards using bttv/conexant 8xx compatible chipsets.

Getting the Kernel driver up

If you are running a well maintained linux distribution that uses the 2.6 kernel tree, things should be fairly simple.

# modprobe bttv card=72 tuner=44

This would have loaded all necessary modules, the most relevant to the chip being "bttv" and "bt878". If you wish to unload these modules, please use "modprobe --remove bt878 bttv" owing to dependency issues.

If all went well, you could check your kernel messages by running "dmesg" or look at /var/log/messages assuming your klogd and syslogd are up and running.

bttv0: Bt878 (rev 17) at 0000:06:01.0, irq: 74, latency: 32, mmio: 0xdfefe000 
bttv0: using: Prolink Pixelview PV-BT878P+9B (PlayTV Pro rev.9B FM+NICAM) [card=72,insmod option] 
bttv0: gpio: en=00000000, out=00000000 in=009f80ff [init] i2c-algo-bit.o: (0) scl=1, sda=1 
i2c-algo-bit.o: (1) scl=1, sda=0 
i2c-algo-bit.o: (2) scl=1, sda=1 
i2c-algo-bit.o: (3) scl=0, sda=1 
i2c-algo-bit.o: (4) scl=1, sda=1 
i2c-algo-bit.o: bt878 #0 [sw] passed test. 
tuner: chip found at addr 0xc0 i2c-bus bt878 #0 [sw] 
bttv0: using tuner=44 
tuner: type set to 44 (Philips 4 in 1 (ATI TV Wonder Pro/Conexant)) by bt878 #0 [sw] 
bttv0: i2c: checking for TDA7432 @ 0x8a... not found 
bttv0: i2c: checking for TDA9887 @ 0x86... not found 
bttv0: registered device video1 bttv0: registered device vbi0 
bttv0: registered device radio0 bttv0: PLL: 28636363 => 35468950 . ok 
bttv0: add subdevice "remote0" 

You would probably get "video0", "radio0" and "remote0" in the normal case unless you have a webcam already installed (as in my case.) I notice that my card works with both "card=37 and card=72", which are both 878a based cards. If you have a different tuner, your card would have looked different as a pure NTSC tuner or a PAL-M or PAL-N (single capability tuner) would be physically smaller. To identify the tuner (if you have a different one) check linux/Documentation/video4linux/CARDLIST.tuner and choose the appropriate tuner. The card I have has the cool 4-in-one Conexant tuner (tuner=44), which supports most formats and frequencies.

If the card did not get detected, your messages would definitely look different with at least one line indicating an "error". You might have to pass parameters like bttv_debug=1, vbi_debug=1 to the driver to get a clue of why the driver is refusing to load. Most of the stock kernels for various distros have all the needed drivers compiled and ready. If you run a custom kernel, I recommend you get everything under video4linux particularly bttv and bt878 drivers compiled as well as i2c drivers as modules. Compiling them into the kernel (for security reasons or whatever can be done later once you know things work.)

PS: I have used linux kernel v2.6.11.11 while performing the installation on my machine. Most 2.6.x kernels, after 2.6.5 should be able to support and work with the card without any hassle.


Next Previous Contents