Hauppauge WinTV-NOVA-T PCI

From LinuxTVWiki
Revision as of 00:32, 27 January 2008 by D.s (talk | contribs) (Add some details about remote control support wrt the budget-ci driver.)
Jump to navigation Jump to search

Hauppauge uses the WinTV-Nova moniker for their digital TV PCI cards that lack an onboard MPEG-2 decoder (i.e. the designation is used for their so-called "budget" or software decoding cards). The -T suffix signifies that the device is for DVB-T reception. There have been two different types of card sold under the name WinTV-NOVA-T PCI.

Original Version(s)

WinTV-Nova-T PCI (TDA10045) with its remote control (model R808)

The first version(s), sold approximately between the later part of 2001 and before about July 2004, were based on the Philips SAA7146 interface chip and used either a Philips TDA10046 or TDA10045 or LSI L64781 demodulator.

All of these variants are well-supported. The earliest cards featuring the LSI demodulator work "out of the box". For the receivers featuring the TDA demodulators, you need to identify your chip and see the TDA10045 or the TDA10046 pages. Since there doesn't appear to be a way to tell which one you have programatically you'll probably have to take the card out and look.

In most systems and for average users these cards work satisfactorily, the Linux drivers are well-tested and robust. Due to the limitations of the quite old-fashioned hardware there may exist some quirks when using multiple cards in a system. Tuning is slower than in competing designs.

Overview of Some Early Versions

  • (l64781/Grundig 29504-401)
 features: decoder, partialts
 card driver: dvb-ttpci
 interface: PCI
 PCI device id: 1131:7146
 PCI subsystem id: 13c2:0008
 frontend 1:
   tin box: Grundig 29504-401.04
   frontend driver: l64781
   demodulator location: separate
   demodulator: LSI L64781 @0x55
   PLL: ?? @0x61
 Notes: Board has text "Sat-DVB Rev.: 1.6"
  • (L64781/Grundig 29504-401(tsa5060))
 features: fullts
 board markings: "S-DVB Data Rev 1.2"
 card driver: budget
 interface: PCI
 PCI device id: 1131:7146
 PCI subsystem id: 13c2:1005
 Bridge: Philips SAA7146A
 frontend 1:
   tin box: Grundig 29504-401 
   frontend driver: l64781
   demodulator location: tin box
   demodulator: LSI l64781 @0x55
   PLL: Philips tda5060 @0x61
 Notes:
  • (tda10045/Philips tdm1316l(tda6651tt) + TDA9889)
 features: fullts
 board markings: "B2T1110 Rev 1.1"
 card driver: budget-ci
 interface: PCI
 PCI device id: 1131:7146
 PCI subsystem id: 13c2:1011
 Bridge: Philips SAA7146A
 frontend 1:
   tin box: Philips tdm1316l
   frontend driver: tda1004x
   demodulator location: separate
   demodulator: Philips tda10045 @0x08
   PLL: Philips tda6651tt @0x63
 Notes: Need to disable the MC44BC374 (i2c:0x65) in the tin box.
        SAW filter chip (TDA9889) is controlled by the tda10045's GPIO lines.

Remote control support issues

Some remote controls may appear not to work despite having been supplied with the card. If you find that this is the case, read the rest of this section…

Method 1

This is the default for (some) Technotrend cards (PCI device IDs 1010 and 1017) and any "unknown" card.

This method allows you to use almost any RC5 remote control with your card. Their device codes will be ignored. You will therefore need to make sure that only one remote control's signals are ever picked up by the card, and that you do not use a remote control which uses more than one device code - chances are that it has groups of keys with identical command codes, and the keys in any such group are indistinguishable from each other.

There are two ways to set this: you can add the following line to /etc/modules:

budget-ci rc5_device=255

or the following line to a file in /etc/modprobe.d, e.g. 00-local:

options budget-ci rc5_device=255

The latter method has the advantage that the module is not loaded if no cards which need it are present.

Method 2

This is the default for some Hauppauge cards (PCI device IDs 100c, 100f, 1011 and 1012). The default device code is 31.

This method restricts you to the supplied remote control (or any other which uses the same device code). Signals from other remote controls will be reported by the card, but the driver will ignore them. Remote controls which use more than one device code will have some non-functional keys.

Enable IR debugging for the card (with the driver module loaded):

# echo 1 > /sys/module/budget_ci/parameters/debug

Now, press a few keys on the remote control then:

# dmesg | tail

You'll see some lines of the form

budget_ci: received byte 0x3f

These lines (bit 6 clear; values between 0 and 0x3F or 0x80 and 0xBF) are important - plug that number into the following line:

# echo $((0x3f & 0x1f))

You'll get the remote control's device code. There are two ways to set this: you can add the following line to /etc/modules:

budget-ci rc5_device=31

or the following line to a file in /etc/modprobe.d, e.g. 00-local:

options budget-ci rc5_device=31

The latter method has the advantage that the module is not loaded if no cards which need it are present.

Two mappings have been reported "in the wild".

Identifier Device code
R808 OH/S1-1 26
R808 OH/S1-3 31

New Version

WinTV-Nova-T PCI (Conexant) with its remote control (model A415)

This model is based on a Conexant CX2388x.

It should be automagically detected and work "out of the box" since kernel 2.6.12 and onwards. If by chance it is not, try getting the card to work by simply running "modprobe cx88_dvb".

Overview of Revision with Product Code: 90002

  • (cx22702/Thomson dtt7592(tua6034))
 features: fullts
 board markings: sticker "DVB-T 90002", board "900000-03, HannStar MV-4 94V-O"
 card driver: cx88
 interface: PCI
 PCI device id: 14f1:8804
 PCI subsystem id: 0070:9002
 EEPROM: 128 bytes @0x50
 Bridge: Conexant CX2388x
 frontend 1:
   tin box: Thomson dtt7592
   frontend driver: cx22702
   demodulator location: separate
   demodulator: Conexant cx22702 @0x43
   PLL: Infineon tua6034 @0x61
 Notes: