AVerMedia M103 (Hybrid) Mini PCI

From LinuxTVWiki
Jump to navigation Jump to search
AverMedia M103 (Hybrid) /w u.FL to BNC pigtail
Block Diagram
Case Study

The AverMedia M103 (Hybrid) Mini PCI is a Hybrid DVB-T Mini PCI card from AVerMedia.

The AverMedia M103 is supported under Linux since kernel 2.6.19.

Overview/features

This device is also known as "AverTV Hybrid DVB-T" or "Avermedia M103 (hybrid)".

TV:

  • Analog TV: Worldwide Analog Access
  • Digital TV: DVB-T
  • Stereo Sound: Yes

Input/output:

  • Inputs: 75 ohm TV Antenna Input
  • Outputs: None

Features:

  • Windows XP MCE Compliant (XP MCE Certificated)
  • Unbundled Remote Control Supported
  • PCI v2.3 interface
Note:
  • It doesn't have any MPEG-2 HW encoding support.
  • This device has just one input using a BNC to u.FL pigtail, so no any other inputs such FM radio, S-Video and Remote.
  • Also, this devices doesn't have any external Audio/Video outputs, so the Audio should be software piped to an other Audio device


Components used

The following ICs and modules are used by the device:

  • Philips SAA7135H - Philips Video Decoder and Broadcast Audio Decoder /w PCI bridge
  • Zarlink MT352 - Silicon Tuner - Zarlink DVB-T Demodulator (Digital Terrestrial TV Demodulator)
  • Xceive XC3028 - Xceive Silicon Tuner (for Hybrid system)


Identification

The relevant output of lspci -vvnn'

#  sudo lspci -vvnn -s 04:07
04:07.0 Multimedia controller [0480]: Philips Semiconductors SAA7131/SAA7133/SAA7135 Video Broadcast Decoder [1131:7133] (rev d1)
	Subsystem: Avermedia Technologies Inc Device [1461:f636]
	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: 64
	Interrupt: pin A routed to IRQ 17
	Region 0: Memory at fd8fe000 (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=0 PME-
	Kernel driver in use: saa7134
	Kernel modules: saa7134

Making it work

The AverMedia M103 works out of box in {U,{K,Ed,X}u}buntu 8.10.

Sample kernel output

If autodetection works you will see the similar output:

# dmseg
[...]
[   26.903212] saa7130/34: v4l2 driver version 0.2.14 loaded
[   26.904817] saa7134 0000:04:07.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[   26.904831] saa7133[0]: found at 0000:04:07.0, rev: 209, irq: 17, latency: 0, mmio: 0xfd8fe000
[   26.904838] saa7134 0000:04:07.0: setting latency timer to 64
[   26.904844] saa7133[0]: subsystem: 1461:f636, board: AVerMedia MiniPCI DVB-T Hybrid M103 [card=145,autodetected]
[   26.904858] saa7133[0]: board init: gpio is 220000
[   27.072671] saa7133[0]: i2c eeprom 00: 61 14 36 f6 00 00 00 00 00 00 00 00 00 00 00 00
[   27.072690] saa7133[0]: i2c eeprom 10: ff ff ff ff ff 20 ff ff ff ff ff ff ff ff ff ff
[   27.072703] saa7133[0]: i2c eeprom 20: 01 40 01 02 02 01 01 03 08 ff 00 0e ff ff ff ff
[   27.072717] saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   27.072730] saa7133[0]: i2c eeprom 40: ff 65 00 ff c2 1e ff ff ff ff ff ff ff ff ff ff
[   27.072743] saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   27.072757] saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   27.072770] saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   27.072783] saa7133[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   27.072797] saa7133[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   27.072810] saa7133[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   27.072823] saa7133[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   27.072836] saa7133[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   27.072850] saa7133[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   27.072863] saa7133[0]: i2c eeprom e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   27.072876] saa7133[0]: i2c eeprom f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
[   27.116022] saa7133[0]: i2c scan: found device @ 0xa0  [eeprom]
[   27.128129] saa7133[0]: i2c scan: found device @ 0xc2  [???]
[   27.232043] tuner' 0-0061: chip found @ 0xc2 (saa7133[0])
[   27.495472] xc2028 0-0061: creating new instance
[   27.495481] xc2028 0-0061: type set to XCeive xc2028/xc3028 tuner
[   27.496778] firmware: requesting xc3028-v27.fw
[   27.849632] xc2028 0-0061: Loading 80 firmware images from xc3028-v27.fw, type: xc2028 firmware, ver 2.7
[   27.868026] xc2028 0-0061: Loading firmware for type=BASE F8MHZ (3), id 0000000000000000.
[   36.508063] (0), id 00000000000000ff:
[   36.508071] xc2028 0-0061: Loading firmware for type=(0), id 0000000100000007.
[   36.676080] xc2028 0-0061: Loading SCODE for type=MONO SCODE HAS_IF_5320 (60008000), id 0000000f00000007.
[   37.116657] saa7133[0]: registered device video0 [v4l2]
[   37.117502] saa7133[0]: registered device vbi0
[   37.144805] saa7134 ALSA driver for DMA sound loaded
[   37.145363] saa7133[0]/alsa: saa7133[0] at 0xfd8fe000 irq 17 registered as card -2
[   37.272116] xc2028 0-0061: attaching existing instance
[   37.272123] xc2028 0-0061: type set to XCeive xc2028/xc3028 tuner
[   37.272742] DVB: registering new adapter (saa7133[0])
[   37.272749] DVB: registering frontend 0 (Zarlink MT352 DVB-T)...
[   37.273160] mt352: mt352_init: hello
[...]
[   43.900838] xc2028 0-0061: Loading firmware for type=(0), id 0000000100000007.
[   44.068521] xc2028 0-0061: Loading SCODE for type=MONO SCODE HAS_IF_5320 (60008000), id 0000000f00000007.
[   46.293245] mt352: mt352_init: hello
[...]

External links