AVerMedia AVerTVHD MCE A180

From LinuxTVWiki
Revision as of 23:22, 3 June 2012 by CityK (talk | contribs) (→‎Making it Work: some clean up and add user note about audto detection)
Jump to navigation Jump to search

An ATSC PCI card from AVerMedia.

The AVerTVHD MCE A180 is supported under Linux (added to kernel 2.6.15).

Overview/Features

In terms of its television reception capabilities, as far as it is known, this card is only capable of supporting digital TV. The exact tuner contained within the, single RF input, Alps NIM is unknown (someone would have to open up the can module in order to identify it), but it behaves as a simple tuner and works fine with LinuxTV's generic tuner driver, serving up streams from both digital OTA and cable sources. While the Alps NIM does have an order option to include an analog IF demodulator, it is believed that AVer did not exercise that option for the NIMs used on the A180, and hence analog TV reception is impossible. (Although there were, a couple of years ago, mumblings/rumours about some card owners being able to receive NTSC under Windows. Nonetheless, all attempts by LinuxTV developers to detect the presence of an analog IF demodulator were negative. Again, the only way to absolutely discern the presence or absence of such component would be to open up the can module -- which is risky and may lead no further to the truth, as the IC could also very well be tucked underneath on the backside of the NIM's PCB, and proceeding any further toward this end would then require completely disassembling the NIM from the card's PCB ... i.e. its NOT worth the risk of damage to the card, nor the hassle ... on the other hand, anyone with a dead card and who wishes to find out the answer for sure are welcome to report their findings on the mailing list).

In any regard, the regular A180 card also features analog A/V inputs, though there are also some OEM versions of the card (probably intended for sale with media centre PCs from large vendors) that are stripped down and have had the A/V inputs on the card removed.

Note: An AVerMedia press release (Jan 8 2007, CES) mentions them demonstrating an "updated AVerTVHD MCE A180". It does not indicate what updates have been made to the card.

Components Used

  • Alps NIM TDHU
    • tuner ? (maybe a Infineon tua6030 or tua6034 ?)
    • ATI Nxt2004 (digital demodulator for 8VSB & 256/64-QAM)
  • Philips SAA7135 (A/V decoder & PCI bridge)

Identification

The PCI subsytem ID information provided by the output of the "lspci -vvnn" command:

# lspci -vvnn -s 04:08
04:08.0 Multimedia controller [0480]: Philips Semiconductors SAA7133/SAA7135 Video Broadcast Decoder [1131:7133] (rev d1)
       Subsystem: Avermedia Technologies Inc AVerTVHD MCE A180 [1461:1044]
       Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
       Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
       Latency: 32 (21000ns min, 8000ns max)
       Interrupt: pin A routed to IRQ 16
       Region 0: Memory at fdbff000 (32-bit, non-prefetchable) [size=2K]
       Capabilities: [40] Power Management version 2
               Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
               Status: D0 PME-Enable- DSel=0 DScale=1 PME-
       Kernel driver in use: saa7134
       Kernel modules: saa7134

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]/Documentation/dvb/
# 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 AVerTVHD MCE A180. As the firmware's code has not been discerned, it is unclear whether other firmwares for the Nxt2004 would have any affect on reception performance.

Drivers

Just use the in-kernel drivers (any kernel >2.6.15 should have the drivers included and thereby provide native support for the card). If you wish, for whatever reason, to compile your own driver modules, you can do so by following the How to Obtain, Build and Install V4L-DVB Device Drivers instructions.

If your device is not auto detected properly (as has been reported in some user cases), create an options.conf file in the /etc/modprobe.d/ directory. (If the file already exists, just edit the existing one) Add the following line to the file:

    options saa7134 card=75

Note: If you have two AVerMedia A180 cards installed, change "card=75" to read "card=75,75".

Sample kernel output

For a properly configured device, an example of the relevant output provided by the "dmesg" command would look like:

DVB: registering new adapter (saa7133[0])
DVB: registering frontend 0 (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

And

saa7133[0]: found at 0000:04:08.0, rev: 209, irq: 16, latency: 32, mmio: 0xfdbff000
saa7133[0]: subsystem: 1461:1044, board: AVerMedia AVerTVHD MCE A180 [card=75,autodetected]
saa7133[0]: board init: gpio is 110400
saa7133[0]: i2c eeprom 00: 61 14 44 10 54 20 1c 00 43 43 a9 1c 55 d2 b2 92
saa7133[0]: i2c eeprom 10: 00 ff 86 0f ff 20 00 00 00 00 00 00 00 00 00 00
saa7133[0]: i2c eeprom 20: 01 40 01 02 02 ff 01 03 06 ff 01 11 00 00 00 00
saa7133[0]: i2c eeprom 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
saa7133[0]: i2c eeprom 40: ff 64 00 c2 14 16 ff ff 00 00 00 00 00 00 00 00
saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
saa7133[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c scan: found device @ 0x14  [???]
saa7133[0]: i2c scan: found device @ 0x16  [???]
saa7133[0]: i2c scan: found device @ 0xa0  [eeprom]
saa7133[0]: registered device video0 [v4l2]
saa7133[0]: registered device vbi0
DVB: registering new adapter (saa7133[0])
saa7133[0]/alsa: saa7133[0] at 0xfdbff000 irq 16 registered as card -1

Remote control support

External Links