NSLU2-Linux
view · edit · print · history

This page is to describe the installation of the Hauppauge WinTV PVR USB2 on a Linksys NSLU2 that is running the official Debian/NSLU2 distribution.

Since Kernel 2.6.18, the pvrusb2 driver is included in the distribution and doesn't need to be installed separately. However, the device firmware is not part of the distribution and must to be obtained elsewhere as described below.

1/ setup Debian/NSLU2

2/ Extract the device firmware from the Windows software CD that came with the device. You may also download the latest driver from http://www.hauppauge.com/pages/support/support_pvrusb2.html and extract the firmware from there.

See full instructions at http://www.isely.net/pvrusb2/setup.html#Firmware

 extract the Windows files to a temporary directory on the NSLU2
 use "fwextract.pl" to extract the firmware files from the official driver package
 copy the extracted *.fw files to /usr/lib/hotplug/firmware

3/ Test!

Plug in the pvrusb2, wait for 5 seconds and check the dmesg-output. It should contain some lines starting with "pvrusb2". Then try to record the stream with

 cat /dev/video0 > test.mpeg

Hit Ctrl-C after a while and playback the file on anything that understands MPEG2? files - mplayer, xine, totem, Windows Media Player (with the Hauppauge decoder installed), etc.

4/ Configure

You can change the channel and do other various things by setting flags in /sys/class/pvrusb2/ctl_* (see the "Sysfs Interface" section at http://www.isely.net/pvrusb2.html). For example:

 # cd /sys/class/pvrusb2/sn-*
 # cat ctl_input/enum_val
 television
 s-video
 composite
 radio
 # echo composite > ctl_input/cur_val

This switches to the composite input. Another useful one is ctl_signal_present which you can look at to see if it has detected any video.

If audio is distorted, try

 echo "62000" > ctl_volume/cur_val

(a value of 58000 might give better results)

The device defaults to VBR @ 6Mbps - you may also get CBR @ 12Mbps or 27 Mbps:

 echo "Constant Bitrate" > ctl_video_bitrate_mode/cur_val
 echo "12000000" > ctl_video_bitrate/cur_val

or

 echo "27000000" > ctl_video_bitrate/cur_val

5/ Stream

Use the following command to stream RAW MPEG2? data over UDP to the network:

 netcat -u HOSTNAME PORT < /dev/video0

Aparently, VLC should work as well, however I couldn't figure out how...

view · edit · print · history · Last edited by oo.
Originally by oo.
Page last modified on July 13, 2007, at 12:53 PM