Hauppauge WinTV-HVR-950Q
A hybrid ATSC USB 2.0 device by Hauppauge.
The digital side of the device is supported under Linux since kernel 2.6.26. Analog support was merged into the mainline v4l-dvb tree on March 18, 2009.
Overview/Features
The device supports NTSC, 8-VSB and QAM.
Components Used
- XC5000 (tuner and analog demodulator)
- Auvitek AU8522 (A/V decoder analog demodulator [not used], and digital demodulator)
- Auvitek AU0828 (USB bridge)
Identification
Output of lsusb -v:
Making it Work
Firmware
In order to use the LinuxTV driver, you need to download and install the firmware for the xc5000.
wget http://www.steventoth.net/linux/xc5000/HVR-12x0-14x0-17x0_1_25_25271_WHQL.zip wget http://www.steventoth.net/linux/xc5000/extract.sh sh extract.sh cp dvb-fe-xc5000-1.1.fw /lib/firmware
Note: Though the usual directory location in which the firmware file is placed is /lib/firmware, this may differ in the case of some distros; consult your distro's documentation for the appropriate location.
The firmware will be added lazily (on-demand) when you first use the driver.
Drivers
The xc5000 driver needed for this WinTV-HVR-950Q is already part of the latest Linux kernel (part of v4l-dvb drivers).
Analog support was merged into the mainline v4l-dvb tree on March 18, 2009.
Sample Kernel Output
After you plug-in the device on a USB 2.0 port (it won't work with a USB 1.1) and use the driver for the first time (eg, by scanning channels), you may see something like this on dmesg:
usb 1-3: new high speed USB device using ehci_hcd and address 3 usb 1-3: configuration #1 chosen from 1 choice au0828: i2c bus registered tveeprom 0-0050: Hauppauge model 72001, rev B3F0, serial# 5280879 tveeprom 0-0050: MAC address is 00-0D-FE-XX-XX-XX tveeprom 0-0050: tuner model is Xceive XC5000 (idx 150, type 4) tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB Digital (eeprom 0x88) tveeprom 0-0050: audio processor is AU8522 (idx 44) tveeprom 0-0050: decoder processor is AU8522 (idx 42) tveeprom 0-0050: has no radio, has IR receiver, has no IR transmitter hauppauge_eeprom: hauppauge eeprom: model=72001 xc5000 0-0061: creating new instance xc5000: Successfully identified at address 0x61 xc5000: Firmware has not been loaded previously DVB: registering new adapter (au0828) DVB: registering adapter 0 frontend 0 (Auvitek AU8522 QAM/8VSB Frontend)... Registered device AU0828 [Hauppauge HVR950Q] usb 1-3: New USB device found, idVendor=2040, idProduct=7200 usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=10 usb 1-3: Product: WinTV HVR-950 usb 1-3: Manufacturer: Hauppauge usb 1-3: SerialNumber: 000000000 xc5000: waiting for firmware upload (dvb-fe-xc5000-1.1.fw)... firmware: requesting dvb-fe-xc5000-1.1.fw xc5000: firmware read 12332 bytes. xc5000: firmware upload
After an application open the device the first time, the module will load the firmware. You will see:
xc5000: waiting for firmware upload (dvb-fe-xc5000-1.1.fw)... i2c-adapter i2c-2: firmware: requesting dvb-fe-xc5000-1.1.fw xc5000: firmware read 12332 bytes. xc5000: firmware upload