Hauppauge WinTV-HVR-1900

From LinuxTVWiki
Revision as of 00:11, 25 February 2010 by Yminus (talk | contribs)
Jump to navigation Jump to search

A Hybrid DVB-T USB device from Hauppauge.

Overview/Features

Interface: USB 2.0 Inputs: Composite, S-Video

Making it Work

Checking the driver

This information is taken from this forum thread on ubuntuusers.de and complemented by own experiences on Ubuntu and Gentoo.

According to Hauppauge's Running WinTV under Linux support page, there is Linux support for this card since the kernel 2.6.26 release.

This is the output of dmesg when plugged in on a Gentoo system running kernel 2.6.31:

usb 7-2: new high speed USB device using ehci_hcd and address 4
usb 7-2: New USB device found, idVendor=2040, idProduct=7300
usb 7-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 7-2: Product: WinTV
usb 7-2: Manufacturer: Hauppauge
usb 7-2: SerialNumber: 7300-00-F06BBD71
usb 7-2: configuration #1 chosen from 1 choice
usbcore: registered new interface driver pvrusb2
pvrusb2: V4L in-tree version:Hauppauge WinTV-PVR-USB2 MPEG2 Encoder/Tuner
pvrusb2: Debug mask is 31 (0x1f)
usb 7-2: firmware: requesting v4l-pvrusb2-73xxx-01.fw
pvrusb2: ***WARNING*** Device fx2 controller firmware seems to be missing.
pvrusb2: Did you install the pvrusb2 firmware files in their proper location?
pvrusb2: request_firmware unable to locate fx2 controller file v4l-pvrusb2-73xxx-01.fw
pvrusb2: Failure uploading firmware1
pvrusb2: Device initialization was not successful.
pvrusb2: Giving up since device microcontroller firmware appears to be missing.

If dmesg output does not look like this your kernel may be to old. According to the forum thread on ubuntuusers.de the built-in drivers in older version of the kernel may have inconsistencies. You can download new drivers from LinuxTV (v4l). To compile and install untar the driver to a directory of your choice, change into the drivers directory and issue as root:

make
make install

Make sure you have the built-essentials (gcc and co.) installed.

Getting the firmware

Next you need the firmware file v4l-pvrusb2-73xxx-01.fw.

You may extract the firmware yourself or download the extracted firmware. Put the firmware into one of these directories (trie out which one of those works for you):

/lib/firmware/
/lib/firmware/2.6/

On Gentoo its /lib/firmware/.

This is the dmesg output after plugging in the device:

usb 7-2: new high speed USB device using ehci_hcd and address 6                                                      
usb 7-2: New USB device found, idVendor=2040, idProduct=7300                                                         
usb 7-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3                                                    
usb 7-2: Product: WinTV                                                                                              
usb 7-2: Manufacturer: Hauppauge                                                                                     
usb 7-2: SerialNumber: 7300-00-F06BBD71                                                                              
usb 7-2: configuration #1 chosen from 1 choice                                                                       
cx25840 4-0044: cx25843-24 found @ 0x88 (pvrusb2_a)                                                                  
pvrusb2: Attached sub-driver cx25840                                                                                 
tuner 4-0042: chip found @ 0x84 (pvrusb2_a)                                                                          
pvrusb2: Attached sub-driver tuner                                                                                   
cx25840 4-0044: firmware: requesting v4l-cx25840.fw                                                                  
cx25840 4-0044: unable to open firmware v4l-cx25840.fw                                                               
tveeprom 4-00a2: Hauppauge model 73219, rev D1F5, serial# 7060849                                                    
tveeprom 4-00a2: MAC address is 00-0D-FE-6B-BD-71                                                                    
tveeprom 4-00a2: tuner model is NXP 18271C2 (idx 155, type 54)                                                       
tveeprom 4-00a2: TV standards PAL(B/G) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xf4)                 
tveeprom 4-00a2: audio processor is CX25843 (idx 37)                                                                 
tveeprom 4-00a2: decoder processor is CX25843 (idx 30)                                                               
tveeprom 4-00a2: has radio, has IR receiver, has IR transmitter                                                      
pvrusb2: Supported video standard(s) reported available in hardware: PAL-B/B1/D/D1/G/H/I/K;SECAM-B/D/G/H/K/K         
pvrusb2: Mapping standards mask=0x3ff00ff (PAL-B/B1/D/D1/G/H/I/K;SECAM-B/D/G/H/K/K1/L/LC;ATSC-8VSB/16VSB)            
pvrusb2: Setting up 20 unique standard(s)                                                                            
pvrusb2: Set up standard idx=0 name=PAL-B/G
pvrusb2: Set up standard idx=1 name=PAL-D/K
pvrusb2: Set up standard idx=2 name=SECAM-B/G
pvrusb2: Set up standard idx=3 name=SECAM-D/K
pvrusb2: Set up standard idx=4 name=PAL-B
pvrusb2: Set up standard idx=5 name=PAL-B1
pvrusb2: Set up standard idx=6 name=PAL-G
pvrusb2: Set up standard idx=7 name=PAL-H
pvrusb2: Set up standard idx=8 name=PAL-I
pvrusb2: Set up standard idx=9 name=PAL-D
pvrusb2: Set up standard idx=10 name=PAL-D1
pvrusb2: Set up standard idx=11 name=PAL-K
pvrusb2: Set up standard idx=12 name=SECAM-B
pvrusb2: Set up standard idx=13 name=SECAM-D
pvrusb2: Set up standard idx=14 name=SECAM-G
pvrusb2: Set up standard idx=15 name=SECAM-H
pvrusb2: Set up standard idx=16 name=SECAM-K
pvrusb2: Set up standard idx=17 name=SECAM-K1
pvrusb2: Set up standard idx=18 name=SECAM-L
pvrusb2: Set up standard idx=19 name=SECAM-LC
pvrusb2: Initial video standard auto-selected to PAL-B/G
pvrusb2: Device initialization completed successfully.
pvrusb2: registered device video1 [mpeg]
DVB: registering new adapter (pvrusb2-dvb)
cx25840 4-0044: firmware: requesting v4l-cx25840.fw
cx25840 4-0044: unable to open firmware v4l-cx25840.fw
tda829x 4-0042: setting tuner address to 60
tda18271 4-0060: creating new instance
TDA18271HD/C2 detected @ 4-0060
tda18271: performing RF tracking filter calibration

Still the v4l-cx25840.fw firmware file is missing. Get it and copy it to the appropriate firmware directory. On Gentoo you may unmask media-tv/linuxtv-dvb-firmware:

cat ~media-tv/linuxtv-dvb-firmware-2009.09.19 >> /etc/portage/package.keywords/linuxtv-dvb-firmware

if /etc/portage/package.keywords is an directory or

cat ~media-tv/linuxtv-dvb-firmware-2009.09.19 >> /etc/portage/package.keywords

if it is a file.

Add a new device section to /etc/make.conf:

cat DVB_CARDS="pvrusb2" >> /etc/make.conf
emerge -av media-tv/linuxtv-dvb-firmware

Now dmesg output should look like this:

usb 7-2: new high speed USB device using ehci_hcd and address 7                                                      
usb 7-2: New USB device found, idVendor=2040, idProduct=7300                                                         
usb 7-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3                                                    
usb 7-2: Product: WinTV                                                                                              
usb 7-2: Manufacturer: Hauppauge                                                                                     
usb 7-2: SerialNumber: 7300-00-F06BBD71                                                                              
usb 7-2: configuration #1 chosen from 1 choice                                                                       
cx25840 4-0044: cx25843-24 found @ 0x88 (pvrusb2_a)                                                                  
pvrusb2: Attached sub-driver cx25840                                                                                 
tuner 4-0042: chip found @ 0x84 (pvrusb2_a)                                                                          
pvrusb2: Attached sub-driver tuner                                                                                   
cx25840 4-0044: firmware: requesting v4l-cx25840.fw                                                                  
cx25840 4-0044: loaded v4l-cx25840.fw firmware (16382 bytes)                                                         
tveeprom 4-00a2: Hauppauge model 73219, rev D1F5, serial# 7060849                                                    
tveeprom 4-00a2: MAC address is 00-0D-FE-6B-BD-71                                                                    
tveeprom 4-00a2: tuner model is NXP 18271C2 (idx 155, type 54)                                                       
tveeprom 4-00a2: TV standards PAL(B/G) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xf4)                 
tveeprom 4-00a2: audio processor is CX25843 (idx 37)                                                                 
tveeprom 4-00a2: decoder processor is CX25843 (idx 30)                                                               
tveeprom 4-00a2: has radio, has IR receiver, has IR transmitter                                                      
pvrusb2: Supported video standard(s) reported available in hardware: PAL-B/B1/D/D1/G/H/I/K;SECAM-B/D/G/H/K/K         
pvrusb2: Mapping standards mask=0x3ff00ff (PAL-B/B1/D/D1/G/H/I/K;SECAM-B/D/G/H/K/K1/L/LC;ATSC-8VSB/16VSB)            
pvrusb2: Setting up 20 unique standard(s)
pvrusb2: Set up standard idx=0 name=PAL-B/G
pvrusb2: Set up standard idx=1 name=PAL-D/K
pvrusb2: Set up standard idx=2 name=SECAM-B/G
pvrusb2: Set up standard idx=3 name=SECAM-D/K
pvrusb2: Set up standard idx=4 name=PAL-B
pvrusb2: Set up standard idx=5 name=PAL-B1
pvrusb2: Set up standard idx=6 name=PAL-G
pvrusb2: Set up standard idx=7 name=PAL-H
pvrusb2: Set up standard idx=8 name=PAL-I
pvrusb2: Set up standard idx=9 name=PAL-D
pvrusb2: Set up standard idx=10 name=PAL-D1
pvrusb2: Set up standard idx=11 name=PAL-K
pvrusb2: Set up standard idx=12 name=SECAM-B
pvrusb2: Set up standard idx=13 name=SECAM-D
pvrusb2: Set up standard idx=14 name=SECAM-G
pvrusb2: Set up standard idx=15 name=SECAM-H
pvrusb2: Set up standard idx=16 name=SECAM-K
pvrusb2: Set up standard idx=17 name=SECAM-K1
pvrusb2: Set up standard idx=18 name=SECAM-L
pvrusb2: Set up standard idx=19 name=SECAM-LC
pvrusb2: Initial video standard auto-selected to PAL-B/G
pvrusb2: Device initialization completed successfully.
pvrusb2: registered device video1 [mpeg]
DVB: registering new adapter (pvrusb2-dvb)
cx25840 4-0044: firmware: requesting v4l-cx25840.fw
cx25840 4-0044: loaded v4l-cx25840.fw firmware (16382 bytes)
tda829x 4-0042: setting tuner address to 60
tda18271 4-0060: creating new instance
TDA18271HD/C2 detected @ 4-0060
tda18271: performing RF tracking filter calibration