Compro VideoMate Vista M1F
An Analog TV PCI card from Compro Technology.
Overview/Features
- PCI interface
- Inputs:
- Antenna/Cable
- Composite
- S-Video In
- FM antenna
- Remote control IR receiver
- Stereo audio input
Components Used
(the labels in parenthesis are the ones used in the layout schematic image to the right)
- NXP/Philips SAA7135HS/203 -- A/V decoder and PCI Interface (IC1)
- EM78P156LMJ -- 8 bits microprocessor? (IC2)
- TDA 9801T -- VIF-PLL demodulator & FM-PLL (IC3)
- TEA 5767 -- FM tuning (IC4)
- 4.0F8E -- Crystal oscilator (XT1)
- 32 110 BLX -- Crystal oscilator (XT2)
- X4.58 -- filter? (FLT1)
- Tvision TVF85P4-AF-XG-M -- tuner (SINT) -- Manufactured by YMEC http://www.ymec.com.tw -- According to this review at a Russian site, the similarly-named TVF85P4-AF-XG is powered by the TDA 6509A 3-band mixer/oscillator and PLL for terrestrial tuner.
Other Images
Identification
# lspci -vvvnn 01:07.0 Multimedia controller [0480]: Philips Semiconductors SAA7131/SAA7133/SAA7135 Video Broadcast Decoder [1131:7133] (rev d1) Subsystem: Compro Technology, Inc. VideoMate T750 [185b:c900] 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 (21000ns min, 8000ns max) Interrupt: pin A routed to IRQ 17 Region 0: Memory at feaff800 (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 NoSoftRst- PME-Enable- DSel=0 DScale=1 PME- Kernel driver in use: saa7134
Making it Work
Work is underway to add support for this card to the saa7134 V4L2 driver. See this and this thread.
- Video: Works (tested with PAL-Nc cable signal)
- Sound: Works (see Sound below)
- Remote Control: Works (see Remote Control below)
- FM Radio: Doesn't work (yet)
Firmware
No firmware is needed for this card.
Drivers
See Making it Work above.
Sample Kernel Output
Output when loading the 'saa7134' module with the 'i2c_scan=1' option on a unpatched tree:
# dmesg [ 4.213572] Linux video capture interface: v2.00 [ 4.291311] saa7130/34: v4l2 driver version 0.2.15 loaded [ 4.291667] ACPI: PCI Interrupt Link [LNKB] enabled at IRQ 17 [ 4.291670] alloc irq_desc for 17 on node -1 [ 4.291672] alloc kstat_irqs on node -1 [ 4.291680] saa7134 0000:01:07.0: PCI INT A -> Link[LNKB] -> GSI 17 (level, low) -> IRQ 17 [ 4.291684] saa7133[0]: found at 0000:01:07.0, rev: 209, irq: 17, latency: 64, mmio: 0xfeaff800 [ 4.291689] saa7133[0]: subsystem: 185b:c900, board: Compro VideoMate T750 [card=139,autodetected] [ 4.291711] saa7133[0]: board init: gpio is 63f00 [ 4.291720] IRQ 17/saa7133[0]: IRQF_DISABLED is not guaranteed on shared IRQs [ 4.433016] saa7133[0]: i2c eeprom 00: 5b 18 00 c9 54 20 1c 00 43 43 a9 1c 55 d2 b2 92 [ 4.433022] saa7133[0]: i2c eeprom 10: 00 ff 86 0f ff 20 ff ff ff ff ff ff ff ff ff ff [ 4.433027] saa7133[0]: i2c eeprom 20: 01 40 01 02 02 03 01 03 08 ff 00 89 ff ff ff ff [ 4.433032] saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.433036] saa7133[0]: i2c eeprom 40: ff da 00 c6 86 ff ff ff 03 ff ff ff c6 ff 04 11 [ 4.433041] saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff cb [ 4.433045] saa7133[0]: i2c eeprom 60: 35 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.433049] saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.433054] saa7133[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.433058] saa7133[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.433062] saa7133[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.433067] saa7133[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.433071] saa7133[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.433075] saa7133[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.433080] saa7133[0]: i2c eeprom e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.433084] saa7133[0]: i2c eeprom f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.446016] saa7133[0]: i2c scan: found device @ 0xa0 [eeprom] [ 4.450016] saa7133[0]: i2c scan: found device @ 0xc0 [tuner (analog)] [ 4.452016] saa7133[0]: i2c scan: found device @ 0xc6 [???] [ 4.574187] tuner 1-0060: chip found @ 0xc0 (saa7133[0]) [ 4.574232] tea5767 1-0060: type set to Philips TEA5767HN FM Radio [ 4.580535] saa7133[0]: registered device video0 [v4l2] [ 4.580551] saa7133[0]: registered device vbi0 [ 4.580566] saa7133[0]: registered device radio0 [ 4.583456] saa7134 ALSA driver for DMA sound loaded [ 4.583462] IRQ 17/saa7133[0]: IRQF_DISABLED is not guaranteed on shared IRQs [ 4.583476] saa7133[0]/alsa: saa7133[0] at 0xfeaff800 irq 17 registered as card -1
Output when loading the 'saa7134' module with the 'card=181 i2c_scan=1' options on a patched tree:
# dmesg [ 4.471051] IR NEC protocol handler initialized [ 4.472733] IR RC5(x) protocol handler initialized [ 4.475089] IR RC6 protocol handler initialized [ 4.476764] IR JVC protocol handler initialized [ 4.478095] IR Sony protocol handler initialized [ 4.561108] Linux video capture interface: v2.00 [ 4.689007] saa7130/34: v4l2 driver version 0.2.16 loaded [ 4.689411] ACPI: PCI Interrupt Link [LNKB] enabled at IRQ 17 [ 4.689415] alloc irq_desc for 17 on node -1 [ 4.689416] alloc kstat_irqs on node -1 [ 4.689424] saa7134 0000:01:07.0: PCI INT A -> Link[LNKB] -> GSI 17 (level, low) -> IRQ 17 [ 4.689429] saa7133[0]: found at 0000:01:07.0, rev: 209, irq: 17, latency: 64, mmio: 0xfeaff800 [ 4.689433] saa7133[0]: subsystem: 185b:c900, board: Compro VideoMate Vista M1F [card=181,insmod option] [ 4.689449] saa7133[0]: board init: gpio is 63f00 [ 4.770021] Registered IR keymap rc-videomate-m1f [ 4.770075] input: saa7134 IR (Compro VideoMate Vi as /devices/pci0000:00/0000:00:08.0/0000:01:07.0/rc/rc0/input8 [ 4.770104] rc0: saa7134 IR (Compro VideoMate Vi as /devices/pci0000:00/0000:00:08.0/0000:01:07.0/rc/rc0 [ 4.770110] IRQ 17/saa7133[0]: IRQF_DISABLED is not guaranteed on shared IRQs [ 4.909016] saa7133[0]: i2c eeprom 00: 5b 18 00 c9 54 20 1c 00 43 43 a9 1c 55 d2 b2 92 [ 4.909022] saa7133[0]: i2c eeprom 10: 00 ff 86 0f ff 20 ff ff ff ff ff ff ff ff ff ff [ 4.909026] saa7133[0]: i2c eeprom 20: 01 40 01 02 02 03 01 03 08 ff 00 89 ff ff ff ff [ 4.909031] saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.909035] saa7133[0]: i2c eeprom 40: ff da 00 c6 86 ff ff ff 03 ff ff ff c6 ff 04 11 [ 4.909040] saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff cb [ 4.909044] saa7133[0]: i2c eeprom 60: 35 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.909048] saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.909053] saa7133[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.909057] saa7133[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.909061] saa7133[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.909066] saa7133[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.909070] saa7133[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.909074] saa7133[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.909079] saa7133[0]: i2c eeprom e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.909083] saa7133[0]: i2c eeprom f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 4.922016] saa7133[0]: i2c scan: found device @ 0xa0 [eeprom] [ 4.926016] saa7133[0]: i2c scan: found device @ 0xc0 [tuner (analog)] [ 4.928020] saa7133[0]: i2c scan: found device @ 0xc6 [???] [ 5.112188] tuner 1-0060: chip found @ 0xc0 (saa7133[0]) [ 5.112231] tea5767 1-0060: type set to Philips TEA5767HN FM Radio [ 5.117162] tuner 1-0063: chip found @ 0xc6 (saa7133[0]) [ 5.117209] tea5767 1-0060: type set to Philips TEA5767HN FM Radio [ 5.179141] tuner-simple 1-0063: creating new instance [ 5.179143] tuner-simple 1-0063: type set to 37 (LG PAL (newer TAPC series)) [ 5.189439] saa7133[0]: registered device video0 [v4l2] [ 5.189453] saa7133[0]: registered device vbi0 [ 5.189467] saa7133[0]: registered device radio0 [ 5.224483] saa7134 ALSA driver for DMA sound loaded [ 5.224489] IRQ 17/saa7133[0]: IRQF_DISABLED is not guaranteed on shared IRQs [ 5.224504] saa7133[0]/alsa: saa7133[0] at 0xfeaff800 irq 17 registered as card -1
Sound
This card doesn't need an audio cable to be connected between it and the system sound card (although it can be done because there is a green output plug for this purpose in the PCB). The audio signal transfer is done in digital format through the PCI bus.
mplayer
Make sure you use the 'alsa', 'adevice=...' and 'immediatemode=0' options for the '-tv' command line switch to specify the sound capture device from which mplayer should pull the data, e.g.:
$ mplayer tv:// -tv alsa:adevice=hw.2:immediatemode=0
You can get the value for 'adevice' by listing your ALSA capture device with 'arecord', e.g.:
$ arecord -l **** List of CAPTURE Hardware Devices **** card 0: NVidia [HDA NVidia], device 0: VT1708B Analog [VT1708B Analog] Subdevices: 2/2 Subdevice #0: subdevice #0 Subdevice #1: subdevice #1 card 2: SAA7134 [SAA7134], device 0: SAA7134 PCM [SAA7134 PCM] Subdevices: 0/1 Subdevice #0: subdevice #0
Replace the ':' character with '.' ('hw:2' -> 'hw.2').
tvtime
Tvtime doesn't have support for controlling the sound ALSA devices. I still haven't tried using any of the ALSA-OSS compatibility solutions available.
Remote Control
The remote control included is Windows Media Center-certified, it uses the RC-6 protocol.
It is the same as the one included with the K100 kit sold by Compro but with a receiver integrated into the card instead of an USB one.
Support is implemented through the Linux kernel input layer.
External Links
- Product page at manufacturer website.