ATI/AMD HDTV Wonder

From LinuxTVWiki
Jump to navigation Jump to search

The HDTV Wonder is an ATSC PCI card from ATI. It has been supported under Linux since kernel 2.6.15.

Note:
  • There also exists a stripped down, digital only variant of the HDTV Wonder, which is sometimes referred to as the Value Edition (VE) model. It was most notably packaged in HP z556 Media Center PCs. Though this version of the card is not directly supported, it can easily be made to work; see details below.
  • ATI has used the word "Wonder" in the branding of a wide variety tuner devices over the years. Unfortunately, this seems to be causing some confusion with those who may be unaware. Please be sure to make further distinction between these highly varying models, else you run the risk of obtaining an unsupported device.


Overview/features

Highlights of the HDTV Wonder's capabilities include support for analog video (TV and A/V-in), OTA digital (ATSC; 8-VSB) and digital cable (SCTE 07; 64/256-QAM).

The card has a mini DIN input connector, to which you attach the included purple breakout dongle that features S-Video, composite, and L/R audio inputs. External audio inputs are currently not supported, although someone is looking into enabling this feature.

Also included in the retail package were an indoor antenna (Terk), and ATI's Remote Wonder, an USB based RF remote control.

Note: Although not as common an occurrence anymore, many sellers on ebay have, or will, advertised these cards with reference to "pre June '05 stock" or "no Broadcast Flag chip" or some other variation of such. Potential buyers of these cards should not heed any attention to these claims, as they are little more then either shaddy sales tactics or ignorance of behalf of the seller (the choice is your's to decide which is the applicable case). Simply put, there never was a BF chip.

The Value Edition (VE) is a strictly digital TV tuning card, and lacks any form of analog input (i.e. the card is missing the the purple mini-DIN input connector for the ATI Wonder purple breakout box).

Components used

  • Philips TUV1236D (NIM)
    • Infineon TUA6034 (RF tuner)
    • Philips TDA9887 (analog IF demodulator)
    • ATI Nxt2004 (digital demodulator for 8VSB & 256/64-QAM)
  • Conexant CX2388x (broadcast audio & analog video decoder, and PCI bridge)
  • AKM AK5355 (audio decoder)
  • ? (8pin eeprom ... located on back of card)

Value edition

The differences compared to regular retail model appear to be:

  • Philips TU1236 (NIM) ... which is a digital-only NIM: This tuner module can be driven the same as the TUV1236D, except it has no TDA9887, and doesn't have a second RF input, just the normal "DTV" input on top. (I've not opened the can, but i have manually probed for the TDA9887 via i2c and got no response.) [1]. In addition, the TU1236, apparently, employs use of the Nxt2003 instead [2]
  • the AK5355 audio chip is missing, given the card lacks analog TV input or A/V inputs.

Identification

"lspci -vn" will reveal that the card has a subsystem PCI ID of 1002:a101

Value edition

"lspci -vn" will reveal that the card has a subsystem PCI ID of 1002:a103

Note: As a consequence of there being no analog inputs on this variant of the card, only PCI functions 0 and 2 are visible.

Making it work

Firmware

This card requires a firmware file (dvb-fe-nxt2004.fw1) for the demodulator, which can be obtained using the get_dvb_firmware perl script included in the kernel sources:

# cd /[kernel source directory]/scripts/
# perl get_dvb_firmware nxt2004

Once the download is complete, place a copy of the firmware file in your /lib/firmware directory. (This directory may differ with some distros; consult your distro's documentation for the appropriate location).

Note 1: All devices that use the Nxt2004 demodulator are currently using a firmware version from the AVerMedia AVerTVHD MCE A180. As the firmware's code has not been discerned, it is unclear whether other firmware for the Nxt2004 (i.e. those provided by other devices) would have any affect on reception performance.

Drivers

Support is present in the Linux kernel from version 2.6.15

Value edition

It is currently not directly supported, however, it is relatively a trivial matter to get it to work: Within the file /etc/modules.conf(your system may have a different location such as /etc/modprobe.d/options), just add

options cx88xx card=34

Note that in later kernels(around 3.8) there have been reports of /etc/modprobe.d/options not working. Naming the file cx88xx.conf will work. Setting the "card=34" option for the cx88 module will, of course, configure the "VE" as the regular 1002:a101 HDTV Wonder card. A reboot is needed for this to take effect.

Sample kernel output

The following example shows the output provided for a system in which two HDTV Woders are installed:

cx88/2: cx2388x MPEG-TS Driver Manager version 0.0.6 loaded
cx88/0: cx2388x v4l2 driver version 0.0.6 loaded
cx2388x alsa driver version 0.0.6 loaded
cx88[0]/2: cx2388x 8802 Driver Manager vendor=10de device=0370
cx88-mpeg driver manager 0000:01:07.2: PCI INT A -> Link[APC2] -> GSI 17 (level, low) -> IRQ 17
cx88[0]/2: found at 0000:01:07.2, rev: 5, irq: 17, latency: 32, mmio: 0xf9000000
cx88[1]: subsystem: 1002:a101, board: ATI HDTV Wonder [card=34,autodetected]
cx88[1]: TV tuner type 68, Radio tuner type -1
cx88[1]: Test OK
cx88-mpeg driver manager 0000:01:08.2: PCI INT A -> Link[APC3] -> GSI 18 (level, low) -> IRQ 18
cx88[1]/2: found at 0000:01:08.2, rev: 5, irq: 18, latency: 32, mmio: 0xf6000000
vendor=10de device=0370
cx8800 0000:01:07.0: PCI INT A -> Link[APC2] -> GSI 17 (level, low) -> IRQ 17
cx88[0]/0: found at 0000:01:07.0, rev: 5, irq: 17, latency: 32, mmio: 0xfb000000
cx88[0]/0: registered device video0 [v4l2]
cx88[0]/0: registered device vbi0
vendor=10de device=0370
cx88[0]/1: CX88x/0: ALSA support for cx2388x boards vendor=10de device=0370
cx88_audio 0000:01:08.1: PCI INT A -> Link[APC3] -> GSI 18 (level, low) -> IRQ 18
cx88[1]/2: subsystem: 1002:a101, board: ATI HDTV Wonder [card=34]
cx88[1]/2: cx2388x based DVB/ATSC card
nxt200x: NXT2004 Detected
tuner-simple 6-0061: creating new instance
tuner-simple 6-0061: type set to 68 (Philips TUV1236D ATSC/NTSC dual in)
DVB: registering new adapter (cx88[1])
DVB: registering frontend 2 (Nextwave NXT200X VSB/QAM frontend)...

nxt2004: Waiting for firmware upload (dvb-fe-nxt2004.fw)...
firmware: requesting dvb-fe-nxt2004.fw
nxt2004: Waiting for firmware upload(2)...
nxt2004: Firmware upload complete

External links