[pvrusb2] HVR-1950 -- Have I messed up the fw installation?

Mike Isely isely at isely.net
Wed Oct 27 23:45:46 CDT 2010


Comments interspersed...


On Fri, 22 Oct 2010, David Liebman wrote:

> HI!
> 
> I run debian squeeze at the moment and I have a liquorix kernel. I just
> purchased a new HVR-1950. I've gotten the tuner to work to a certian
> degree, but I think I might have messed up the fw extraction.
> 
> I used the fwextract.pl script on the disk that came with the tuner to
> extract the fw and place it in /lib/firmware.
> 
> This is the output of 'ls -l /lib/firmware/v4l*'
> 
> $ ls -l /lib/firmware/v4l*
> -rw-r--r-- 1 root root 376836 Oct 20 16:03 /lib/firmware/v4l-cx2341x-enc.fw
> -rw-r--r-- 1 root root  16382 Oct 20 16:03 /lib/firmware/v4l-cx25840.fw
> -rw-r--r-- 1 root root   8192 Oct 20 16:03 /lib/firmware/v4l-pvrusb2-29xxx-01.fw
> -rw-r--r-- 1 root root  16384 Oct 20 16:03 /lib/firmware/v4l-pvrusb2-73xxx-01.fw
> 
> (Should v4l-cx25840.fw be 16382 bytes?)

Yes.  It's fairly small and its size does not have to be a power of 2.  
The size won't be exact; different versions of the firmware are 
different sizes but they are all in the ballpark of about 16KB, maybe 
even smaller.


> 
> I downloaded the pvrusb2-mci-20100708.tar.bz2 file and unpacked it and
> built it. I installed it on the linux version:
> 
> 2.6.35-6.dmz.3-liquorix-686
> 
> This is the liquorix kernel.
> 
> I added pvrusb2 to the /etc/modules file, and when I plug in the usb
> from the tuner I get this on dmesg.
> 
> usb 1-1: new high speed USB device using ehci_hcd and address 12
> usb 1-1: New USB device found, idVendor=2040, idProduct=7501
> usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
> usb 1-1: Product: WinTV
> usb 1-1: Manufacturer: Hauppauge
> usb 1-1: SerialNumber: 7300-00-F06FA66F
> pvrusb2: Hardware description: WinTV HVR-1950 Model 751xx
> pvrusb2: Device microcontroller firmware (re)loaded; it should now reset
> and reconnect.
> usb 1-1: USB disconnect, address 12
> pvrusb2: Device being rendered inoperable
> usb 1-1: new high speed USB device using ehci_hcd and address 13
> usb 1-1: New USB device found, idVendor=2040, idProduct=7501
> usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
> usb 1-1: Product: WinTV
> usb 1-1: Manufacturer: Hauppauge
> usb 1-1: SerialNumber: 7300-00-F06FA66F
> pvrusb2: Hardware description: WinTV HVR-1950 Model 751xx
> pvrusb2: Binding ir_video to i2c address 0x71.
> cx25840 1-0044: cx25843-24 found @ 0x88 (pvrusb2_a)
> pvrusb2: Attached sub-driver cx25840
> tuner 1-0042: chip found @ 0x84 (pvrusb2_a)
> pvrusb2: Attached sub-driver tuner
> cx25840 1-0044: loaded v4l-cx25840.fw firmware (16382 bytes)
> tveeprom 1-00a2: Hauppauge model 75111, rev D2F5, serial# 7317103
> tveeprom 1-00a2: MAC address is 00:0d:fe:6f:a6:6f
> tveeprom 1-00a2: tuner model is NXP 18271C2 (idx 155, type 54)
> tveeprom 1-00a2: TV standards NTSC(M) ATSC/DVB Digital (eeprom 0x88)
> tveeprom 1-00a2: audio processor is CX25843 (idx 37)
> tveeprom 1-00a2: decoder processor is CX25843 (idx 30)
> tveeprom 1-00a2: has radio, has IR receiver, has IR transmitter
> pvrusb2: Supported video standard(s) reported available in hardware:
> PAL-M/N/Nc;NTSC-M/Mj/Mk;ATSC-8VSB/16VSB
> pvrusb2: Mapping standards mask=0x300b700
> (PAL-M/N/Nc;NTSC-M/Mj/Mk;ATSC-8VSB/16VSB)
> pvrusb2: Setting up 6 unique standard(s)
> pvrusb2: Set up standard idx=0 name=PAL-M
> pvrusb2: Set up standard idx=1 name=PAL-N
> pvrusb2: Set up standard idx=2 name=PAL-Nc
> pvrusb2: Set up standard idx=3 name=NTSC-M
> pvrusb2: Set up standard idx=4 name=NTSC-Mj
> pvrusb2: Set up standard idx=5 name=NTSC-Mk
> pvrusb2: Initial video standard (determined by device type): NTSC-M
> pvrusb2: Device initialization completed successfully.
> pvrusb2: registered device video1 [mpeg]

Once you see the "registered device" message then the pvrusb2 driver has 
completed its primary initialization and it considers the hardware to be 
healthy.  So up to this point at least, you're fine.


> DVB: registering new adapter (pvrusb2-dvb)
> cx25840 1-0044: loaded v4l-cx25840.fw firmware (16382 bytes)
> tda829x 1-0042: setting tuner address to 60
> tda18271 1-0060: creating new instance
> TDA18271HD/C2 detected @ 1-0060
> tda18271: performing RF tracking filter calibration
> 
> Then, checking the /dev folder I find the /dev/video1 as I expected (I
> have a webcam on /dev/video0).

Yup.


> 
> In order to record a video I want to just be able to type
> 'cat /dev/video1 > test_vid.mpeg' but what I have to do is mess with
> mplayer alot. This is my mplayer config file:
> 
> [tuner]
> pvr=abitrate=192:vbitrate=6000000:vpeak=8500000:fmt=dvd:aspect=1:arate=32000
> tv=normid=3:device=/dev/video1:driver=v4l2:input=1:width=720:height=576
> 
> If I type 'mplayer -profile tuner pvr://' I get nothing, but I think the
> 'normid' and 'input' values get set. Then, after failing at that I can
> type 'mplayer -profile tuner /dev/video1 ' and I can view component
> video on the screen. Then I can type 'cat /dev/video1 > test_vid.mpeg'
> and it records a video file. Is this normal?

Well, yes.

You need to interact with the V4L API to operate the device in analog 
mode.  This is what an application like mythtv or xawtv will do for you.  
Or, as you did above, mplayer.

However a lot of those settings you specified have driver internal 
defaults that should be fine.  The pvrusb2 driver has a lot of "knobs" 
you can twiddle - but it doesn't mean you have to twiddle them all!

The pvrusb2 driver has another means to operate its API.  This can be 
done entirely from the shell, no application required.  With that API 
you can in fact set it up with a few "echo" commands and then cat 
/dev/video1 to capture the stream.  A lot of people do this and it's a 
great way to at least verify that the driver is working.

But rather than describe it again here, I recommend you read the web 
page that documents it.  Look here:

http://www.isely.net/pvrusb2/usage.html#sysfs

Or, more generally, for overall usage:

http://www.isely.net/pvrusb2/usage.html


> 
> I have not been able to watch broadcasts yet. I'm not sure what that
> would take. I cannot get xawtv to detect my tuner.

Using xawtv has some additional caveats.  You need to run a 4.x version 
of it and it must be compiled with the right support.  Otherwise you 
won't be able to see any video with it.  Long story, but similar to the 
above, see here:

http://www.isely.net/pvrusb2/usage.html#xawtv

Unfortunately I believe xawtv has been unmaintained for quite some time 
now :-(

  -Mike


-- 

Mike Isely
isely @ isely (dot) net
PGP: 03 54 43 4D 75 E5 CC 92 71 16 01 E2 B5 F5 C1 E8


More information about the pvrusb2 mailing list