DVB-T PCI Quad Tuner
Howto build a PCI quad tuner
Hardware
This document describes how to construct a PCI four tuner card. The parts need to be acquired from various sources. The tuner consists of the following parts:
- A RouterBOARD 14 32bit PCI card
- Four AVerMedia M-103C modules
- Four u.FL to F female bulkhead pigtails
The RouterBOARD was acquired from Aerial.net. There service and shipping was excellent. The AVerMedia mini-PCI modules were acquired directly from AVerMedia (the pigtails were supplied with the mini-PCI modules). As a manufacturer, AVerMedia was able to supply sample quantities ex. stock (excellent).
The M103C module has a Philips SAA7134 chipset, which has good Linux driver support. It doesn't have MPEG2 encoding support which should make it cheaper, as well as using less power. Each mini-PCI module uses 1amp at 3.3volts, and the corresponding regulator will need to dissipate the power from the 1.7volts dropped across it (linear regulator).
Procedure:
- Remove the PCI bracket from the routerboard 14
- Make 4 holes for the F connectors
- Attach the 4 pigtails to the PCI bracket
- Put the PCI bracket back onto the router board
- Install the 4 mini-PCI modules
- Connect the u.FL pigtails to the mini-PCI slots
- Put the quad tuner card into the PCI
- Attach 4 fly leads from the quad tuner card to a splitter
Remove PCI bracket
The RouterBOARD 14 comes with a PCI bracket with a single round hole for mounting a small RF connector for a wireless antenna. This needs to be removed so that additional holes can be made. Remove the two screws used to attach the bracket to the PCB.
Make 4 holes
Four holes are required for the F connectors. The holes must be D shaped so that the F connectors don't rotate when a cable is attached to them. Relying on the nut being tight enough to stop rotation of the connector wouldn't be a good idea. I don't have a fancy punch out tool, so form the holes with a combination of drilling an 8.5mm hole, and filing the rest out.
The following diagram shows the mechanical dimensions for the 4 holes:
And the 'finished' product:
Attach pigtails
Feed the four pigtails through the PCI bracket, add the washers, and tighten the hex nuts.
Attach PCI bracket
Attach the PCI bracket back onto the RouterBOARD 14 with the two mounting screws.
Install mini-PCI modules
Add the four modules to the RouterBOARD. I found it easiest to half put the module in, determine where the pigtail would go, and then remove the module while adding pushing the u.FL connector.
Connect pigtails
The u.FL connectors are physically small. They have a very low rating for mating. Ideally the correct mating tool should be used, and they should be attached once and only once. Ensure that the connector is put on straight, and that the mini-PCI card is supported.
I didn't get any information/specifications on the pigtails, but assume that the cable and the u.FL connectors are 75ohm.
Add tuner to PC
Install the quad tuner card in a 5volt 32bit PCI slot. It is important to note that the tuners on the back (non-component side) of the card extend back beyond what a normal card would. If would not be possible to put the quad tuner card next to a card with large components (e.g. a video card with heatsink, or a tuner card with a can style tuner).
Attach fly leads
Attach the four F connectors to a UHF antenna to receive the DVB-T signal. I used a 6 way passive splitter (rated to 2GHz), and 1.2m RG-6 cables. The picture below shows the 4 female F connectors ready to be connected at the back of the PC.
Software
Support for the M103C mini-PCI module is not included in the mainstream kernel. There is however support in experimental video 4 linux (v4l) development repositories. This support is being moved into the main v4l repository.
Initially I got the cards running with a Linux 2.6.23 kernel on Fedora 8 (i386), as per this page. This worked flawlessly until I upgraded to a 2.6.24 kernel (with a compile error). I am now working through getting the v4l-dvb tree drivers
operation with the M103C.
Appendices
[1] PCI
# lspci -vvt -[0000:00]-+-00.0 Intel Corporation 82875P/E7210 Memory Controller Hub +-03.0-[0000:02]----01.0 Intel Corporation 82547GI Gigabit Ethernet Controller +-1c.0-[0000:03]--+-01.0 Tiger Jet Network Inc. Tiger3XX Modem/ISDN interface | \-02.0 Broadcom RAIDCore RC4000 +-1d.0 Intel Corporation 6300ESB USB Universal Host Controller +-1d.1 Intel Corporation 6300ESB USB Universal Host Controller +-1d.4 Intel Corporation 6300ESB Watchdog Timer +-1d.5 Intel Corporation 6300ESB I/O Advanced Programmable Interrupt Controller +-1d.7 Intel Corporation 6300ESB USB2 Enhanced Host Controller +-1e.0-[0000:04-05]--+-02.0 ATI Technologies Inc Radeon RV100 QY [Radeon 7000/VE] | +-06.0 Techsan Electronics Co Ltd B2C2 FlexCopII DVB chip / Technisat SkyStar2 DVB card | +-07.0 Philips Semiconductors SAA7146 | \-08.0-[0000:05]--+-08.0 Philips Semiconductors SAA7133/SAA7135 Video Broadcast Decoder | +-09.0 Philips Semiconductors SAA7133/SAA7135 Video Broadcast Decoder | +-0a.0 Philips Semiconductors SAA7133/SAA7135 Video Broadcast Decoder | \-0b.0 Philips Semiconductors SAA7133/SAA7135 Video Broadcast Decoder +-1f.0 Intel Corporation 6300ESB LPC Interface Controller +-1f.1 Intel Corporation 6300ESB PATA Storage Controller +-1f.2 Intel Corporation 6300ESB SATA RAID Controller \-1f.3 Intel Corporation 6300ESB SMBus Controller