Hauppauge WinTV-HVR-1900: Difference between revisions

From LinuxTVWiki
Jump to navigation Jump to search
No edit summary
(Gentoo package has been moved to another category)
 
(18 intermediate revisions by the same user not shown)
Line 1: Line 1:
A [[Hybrid]] [[DVB-T]] [[USB]] device from [[Hauppauge]].
A [[Hybrid]] [[DVB-T]] [[USB]] device from [[Hauppauge]].
==Overview/Features==
==Overview/Features==
Interface: USB 2.0
* Interface: USB 2.0
Inputs: Composite, S-Video
* Inputs: Composite, S-Video
* Hardware MPEG-2 Encoder
* DVB-T TV/Radio
* Analogue TV/FM Radio
* Timeshift
* TV-Recorder

==Making it Work==
==Making it Work==
===Checking the driver===
===Checking the driver===
This information is taken from this [http://forum.ubuntuusers.de/topic/hauppauge-wintv-hvr-1900/ | forum thread on ubuntuusers.de] and complemented by own experiences on Ubuntu and Gentoo.
This information is taken from this [http://forum.ubuntuusers.de/topic/hauppauge-wintv-hvr-1900/ forum thread on ubuntuusers.de] and complemented by own experiences on Ubuntu, Gentoo and Arch Linux.


According to Hauppauge's [http://www.hauppauge.com/site/support/linux.html | Running WinTV under Linux] support page,
According to Hauppauge's [http://www.hauppauge.com/site/support/linux.html Running WinTV under Linux] support page,
there is Linux support for this card since the kernel 2.6.26 release.
there is Linux support for this card since the kernel 2.6.26 release.


Line 30: Line 36:
pvrusb2: Giving up since device microcontroller firmware appears to be missing.</pre>
pvrusb2: Giving up since device microcontroller firmware appears to be missing.</pre>


====Current driver for outdated kernels====
If dmesg output does not look like this your kernel may be to old. According to the [http://forum.ubuntuusers.de/post/1900853/ | forum thread on ubuntuusers.de] the built-in drivers in older version of the kernel may have inconsistencies. You can download new drivers from [http://linuxtv.org/hg/v4l-dvb?ca=-1;type=bz2 | LinuxTV (v4l)]. To compile and install untar the driver to a directory of your choice, change into the drivers directory and issue as root:
If dmesg output does not look like this your kernel may be to old. According to the [http://forum.ubuntuusers.de/post/1900853/ forum thread on ubuntuusers.de] the built-in drivers in older version of the kernel may have inconsistencies. You can download new drivers from [http://linuxtv.org/hg/v4l-dvb?ca=-1;type=bz2 LinuxTV (v4l)]. To compile and install untar the driver to a directory of your choice, change into the drivers directory and issue as root:
<pre>
<pre>
make
make
Line 37: Line 44:
Make sure you have the built-essentials (gcc and co.) installed.
Make sure you have the built-essentials (gcc and co.) installed.


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


You may [http://www.linuxtv.org/wiki/index.php/Firmware#Acquiring_the_Firmware | extract the firmware] yourself or [http://steventoth.net/linux/hvr1950/v4l-pvrusb2-73xxx-01.fw | download the extracted firmware]. Put the firmware into one of these directories (trie out which one of those works for you):
You may [http://www.linuxtv.org/wiki/index.php/Firmware#Acquiring_the_Firmware extract the firmware] yourself or [http://steventoth.net/linux/hvr1950/v4l-pvrusb2-73xxx-01.fw download the extracted firmware]. Put the firmware into one of these directories (try out which one of those works for you):
<pre>
<pre>
/lib/firmware/
/lib/firmware/
/lib/firmware/2.6/
/lib/firmware/2.6/
</pre>
</pre>
On Gentoo its ''/lib/firmware/''.
On (K)Ubuntu Karmic and Gentoo its ''/lib/firmware/''.


This is the dmesg output after plugging in the device:
This is the dmesg output after plugging in the device:
Line 103: Line 110:
tda18271: performing RF tracking filter calibration
tda18271: performing RF tracking filter calibration
</pre>
</pre>

Still the [http://linuxtv.org/downloads/firmware/v4l-cx25840.fw | 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:
===Getting the cx25840 firmware===
Still the v4l-cx25840 firmware file is missing. There are several ways to get this firmware.

* Get the [http://linuxtv.org/downloads/firmware/v4l-cx25840.fw v4l-cx25840.fw] file from liunxtv.org and copy it to the appropriate firmware directory.
* Install the utilities for use with the ivtv kernel driver, ''ivtv-utils'' provided by the [http://www.ivtvdriver.org/index.php/Main_Page IVTV Project]. On Ubuntu its in the ''multiverse'' section. On Gentoo the firmware files are in the seperate package sys-firmware/ivtv-firmware. [http://www.ivtvdriver.org/index.php/Documentation Installation guides] for many linux distributions are available on the project website.
* On Arch-Linux the firmware is included in ivtv-utils. Install it with
<pre>
pacman -S ivtv-utils
</pre>
* On Gentoo there is a third alternative: media-tv/linuxtv-dvb-firmware. But this package is missing v4l-cx2341x-enc.fw and conflicts with media-tv/ivtv-firmware. Therefore media-tv/ivtv-firmware is preferable. If for some reason you still want to go for media-tv/linuxtv-dvb-firmware the next section describes how to install it:
====Emerge linuxtv-dvb-firmware on Gentoo====
media-tv/linuxtv-dvb-firmware has to be unmasked:
<pre>
<pre>
cat ~media-tv/linuxtv-dvb-firmware-2009.09.19 >> /etc/portage/package.keywords/linuxtv-dvb-firmware
echo "~media-tv/linuxtv-dvb-firmware-2009.09.19" >> /etc/portage/package.keywords/linuxtv-dvb-firmware
</pre>
</pre>
if ''/etc/portage/package.keywords'' is an directory or
if ''/etc/portage/package.keywords'' is an directory or
<pre>
<pre>
cat ~media-tv/linuxtv-dvb-firmware-2009.09.19 >> /etc/portage/package.keywords
echo "~media-tv/linuxtv-dvb-firmware-2009.09.19" >> /etc/portage/package.keywords
</pre>
</pre>
if it is a file.
if it is a file.
Line 115: Line 134:
Add a new device section to ''/etc/make.conf'':
Add a new device section to ''/etc/make.conf'':
<pre>
<pre>
cat DVB_CARDS="pvrusb2" >> /etc/make.conf
echo "DVB_CARDS=\"pvrusb2\"" >> /etc/make.conf
</pre>
</pre>
<pre>
<pre>
Line 121: Line 140:
</pre>
</pre>


===Checking the driver again===
Now dmesg output should look like this:
Now dmesg output should look like this:
<pre>
<pre>
Line 178: Line 198:
</pre>
</pre>


There are no complaints about missing firmware files anymore. And these devices are created:
/dev/video0
/dev/dvb/adapter0/demux0
/dev/dvb/adapter0/dvr0
/dev/dvb/adapter0/net0
In case you have an other video device already installed, e.g. a webcam, ''/dev/video0'' may be ''/dev/video1'' instead.

==Watching TV==
===Analogue===
Annoyingly tvtimer does not support pvrusb2 chipsets. Hence an alternative has to be found. You may use [http://www.mythtv.org/ mythtv] or [http://freevo.sourceforge.net/ freevo] which are both in the ubuntu as well as the gentoo repositories. But both seem to be a little overkill for just watching tv. That's what the author of [http://tv-viewer.sourceforge.net/mediawiki/index.php/Main_Page tv-viewer] thought, too. Install tv-viewer as explained in the projects [http://tv-viewer.sourceforge.net/mediawiki/index.php/Documentation:Installation user guide]. TV-Viewer supports timeshift and recording.

For Gentoo an experimental ebuild can be found [http://bugs.gentoo.org/show_bug.cgi?id=271853 here].

For Arch Linux an tv-viewer pkgbuild can be found on the [https://aur.archlinux.org/ AUR].

===DVB-T===
Not tested yet.

==Listening to Radio==
===Analogue===
Not tested yet.

===DVB-T===
Not tested yet.





Latest revision as of 23:32, 22 February 2014

A Hybrid DVB-T USB device from Hauppauge.

Overview/Features

  • Interface: USB 2.0
  • Inputs: Composite, S-Video
  • Hardware MPEG-2 Encoder
  • DVB-T TV/Radio
  • Analogue TV/FM Radio
  • Timeshift
  • TV-Recorder

Making it Work

Checking the driver

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

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.

Current driver for outdated kernels

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 pvrusb2 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 (try out which one of those works for you):

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

On (K)Ubuntu Karmic and 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

Getting the cx25840 firmware

Still the v4l-cx25840 firmware file is missing. There are several ways to get this firmware.

  • Get the v4l-cx25840.fw file from liunxtv.org and copy it to the appropriate firmware directory.
  • Install the utilities for use with the ivtv kernel driver, ivtv-utils provided by the IVTV Project. On Ubuntu its in the multiverse section. On Gentoo the firmware files are in the seperate package sys-firmware/ivtv-firmware. Installation guides for many linux distributions are available on the project website.
  • On Arch-Linux the firmware is included in ivtv-utils. Install it with
pacman -S ivtv-utils
  • On Gentoo there is a third alternative: media-tv/linuxtv-dvb-firmware. But this package is missing v4l-cx2341x-enc.fw and conflicts with media-tv/ivtv-firmware. Therefore media-tv/ivtv-firmware is preferable. If for some reason you still want to go for media-tv/linuxtv-dvb-firmware the next section describes how to install it:

Emerge linuxtv-dvb-firmware on Gentoo

media-tv/linuxtv-dvb-firmware has to be unmasked:

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

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

echo "~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:

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

Checking the driver again

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

There are no complaints about missing firmware files anymore. And these devices are created:

 /dev/video0
 /dev/dvb/adapter0/demux0
 /dev/dvb/adapter0/dvr0
 /dev/dvb/adapter0/net0

In case you have an other video device already installed, e.g. a webcam, /dev/video0 may be /dev/video1 instead.

Watching TV

Analogue

Annoyingly tvtimer does not support pvrusb2 chipsets. Hence an alternative has to be found. You may use mythtv or freevo which are both in the ubuntu as well as the gentoo repositories. But both seem to be a little overkill for just watching tv. That's what the author of tv-viewer thought, too. Install tv-viewer as explained in the projects user guide. TV-Viewer supports timeshift and recording.

For Gentoo an experimental ebuild can be found here.

For Arch Linux an tv-viewer pkgbuild can be found on the AUR.

DVB-T

Not tested yet.

Listening to Radio

Analogue

Not tested yet.

DVB-T

Not tested yet.