Hauppauge WinTV-HVR-2250

From LinuxTVWiki
Jump to: navigation, search
A Hauppauge WinTV-HVR-2250

The Hauppauge WinTV-HVR-2250 is an ATSC PCIe card from Hauppauge. Support for its digital side was added to Hg in September 2009.

Overview/features

  • Low-profile PCI Express (PCIe) ×1 board
  • Two analog tuners, each with their own hardware MPEG-2 encoders
  • Two digital TV receivers for ATSC or clear QAM

Components used

REV C1F1

  • NXP SAA7164E/3
  • Pair of Conexant CX24228-21Z demodulators
  • Samsung 819 K4H561638H-UCCC

REV C2F2

REV C3F2

  • NXP SAA7164E/3
  • Samsung 846 - K4H561638J-LCCC - H56162YI369GDU
  • Pair of Conexant CX24228-21Z - NI3W4H - 0811 KR
  • 0916 - 3506 - EFE - N8578
  • 24C3265I- 408(4)9E - not sure on the (4)
  • Pair of LD1117 - C822

REV C4F2

  • Trident SAA7164E/3 (P2A988.00 02 / ESD11252)
  • Samsung S5H1411X01-Y0 / N3511ND / H1103 (Two of these)
  • Presumed pair of: NXP TDA1827 1HDC2 / GT1049 03 / TSD10501 (no confidence in last line, did not remove EMI shield)
  • 54 MHz and 24.690 MHz oscillators (two of the latter, seems to be for the Samsung chips), there is a third oscillator under the EMI shield that was not viewed
  • ESMT M13S2561616A- 5T / ASK1PO35E 1052
  • Linear Technology (LT) 1120 / 3506 / EFE N9096 / e3 (last presumably a date/lot/factory code)
  • ATMEL1040 / TINY13A / Δ SSU (on reverse side of PCB)

Making it work

Digital support

In September 2009, Steven Toth at kernellabs submitted code to the linux kernel mailing list that adds support for the NXP Saa7164 PCIe A/V bridge used by the Hauppauge HVR-2250 card. See Hauppauge WinTV-HVR-2200. Note that the upstream driver support is limited to DVB-T / ATSC / QAM digital TV only.

Firmware needed for current cards is:

wget http://www.steventoth.net/linux/hvr22xx/22xxdrv_27086.zip
wget http://www.steventoth.net/linux/hvr22xx/HVR-12x0-14x0-17x0_1_25_25271_WHQL.zip
wget http://www.steventoth.net/linux/hvr22xx/extract.sh

sh extract.sh
cp *fw /lib/firmware
# for some linux distros, might need the following line instead of the above
cp *fw /lib/firmware/`uname -r`

Installing this firmware is all that is needed.

Analog support

Experimental analog support was released by KernelLabs on July 31, 2010. See here for more details related to installing analog support: KernelLabs saa7164 analog announcement

Development continues at http://www.steventoth.net/blog/products/hvr-2250/

Firmware

The Windows driver and Linux firmware extraction scripts are up on http://www.steventoth.net/linux/hvr22xx

Drivers

Drivers were merged into the kernel in Linux 2.6.32.

Sample kernel output

[    9.281086] saa7164_downloadfirmware() no first image
[    9.281103] saa7164_downloadfirmware() Waiting for firmware upload (NXP7164-2010-03-10.1.fw)
[    9.412799] saa7164_downloadfirmware() firmware read 4019072 bytes.
[    9.412806] saa7164_downloadfirmware() firmware loaded.
[    9.412811] Firmware file header part 1:
[    9.412815]  .FirmwareSize = 0x0
[    9.412819]  .BSLSize = 0x0
[    9.412822]  .Reserved = 0x3d538
[    9.412825]  .Version = 0x3
[    9.412829] saa7164_downloadfirmware() SecBootLoader.FileSize = 4019072
[    9.412838] saa7164_downloadfirmware() FirmwareSize = 0x1fd6
[    9.412842] saa7164_downloadfirmware() BSLSize = 0x0
[    9.412846] saa7164_downloadfirmware() Reserved = 0x0
[    9.412850] saa7164_downloadfirmware() Version = 0x1661c00
[   16.079066] saa7164_downloadimage() Image downloaded, booting...
[   16.180066] saa7164_downloadimage() Image booted successfully.
[   16.180114] starting firmware download(2)
[   17.897064] saa7164_downloadimage() Image downloaded, booting...
[   20.119066] saa7164_downloadimage() Image booted successfully.
[   20.119113] firmware download complete.
[   20.164528] tveeprom 1-0000: Hauppauge model 88061, rev C4F2, serial# 7339378
[   20.164537] tveeprom 1-0000: MAC address is 00:0d:fe:6f:fd:72
[   20.164544] tveeprom 1-0000: tuner model is NXP 18271C2_716x (idx 152, type 4)
[   20.164552] tveeprom 1-0000: TV standards NTSC(M) ATSC/DVB Digital (eeprom 0x88)
[   20.164559] tveeprom 1-0000: audio processor is SAA7164 (idx 43)
[   20.164564] tveeprom 1-0000: decoder processor is SAA7164 (idx 40)
[   20.164570] tveeprom 1-0000: has radio, has IR receiver, has no IR transmitter
[   20.164575] saa7164[0]: Hauppauge eeprom: model=88061
[   20.490460] tda18271 2-0060: creating new instance
[   20.494989] TDA18271HD/C2 detected @ 2-0060
[   20.699512] DVB: registering new adapter (saa7164)
[   20.699542] DVB: registering adapter 0 frontend 0 (Samsung S5H1411 QAM/8VSB Frontend)...
[   20.991060] tda18271 3-0060: creating new instance
[   20.995384] TDA18271HD/C2 detected @ 3-0060
[   21.197830] tda18271: performing RF tracking filter calibration
[   23.397812] tda18271: RF tracking filter calibration complete
[   23.399813] DVB: registering new adapter (saa7164)
[   23.399838] DVB: registering adapter 1 frontend 0 (Samsung S5H1411 QAM/8VSB Frontend)...
[   23.402824] saa7164[0]: registered device video1 [mpeg]
[   23.634564] saa7164[0]: registered device video2 [mpeg]
[   23.845910] saa7164[0]: registered device vbi0 [vbi]
[   23.846392] saa7164[0]: registered device vbi1 [vbi]

External links