Needs updating, eh…

March 31st, 2011

So, it has been a while since I updated this… I guess my server has just been running fine. I recently checked and this driver doesn’t work anymore for the latest kernels. More internal changes I guess, I haven’t looked into the details yet…

AFAIK, they don’t manufacture these chips anymore, but there still is working hardware out there, and the only alternative analog grabbers with hardware compression cost more than these grabbers.

Perhaps it’s would be nice to have a libusb version of this driver, which then turns it into a networked recorder that mythtv can use, perhaps just do the same protocol used by the hdhomerun so that it can work without modification for any software that supports that. Then it would not depend so much on the kernel anymore. I think that can work. You would probably lose the option to choose high/low/medium quality for each recording (unless we modify mythtv too), but that would be fine for me.

Then I can more easily upgrade my mythbackend pc (no more drivers…), and I could even stick the USB grabbers into any pc where a mythbackend is not even running, because the grabbers are networked.

I never used libusb, but in theory it should be possible to port this… Just a program that uses libusb to find the device(s), initialize them, and that can start a recording on a given frequency/channel when requested. I wonder how much work that is. Then add a network layer to it that uses the same protocol as the hdhomerun.

go7007 driver for Plextor px-tv402u/px-m402u for Linux 2.6.31

September 13th, 2009

The drivers posted below don’t work anymore for linux 2.6.31 as included in Ubuntu 9.10 (Karmic).

Apparently there were some details changed in the v4l2 api, the i2c, and the tuner interface. All changes are for the better, making things easier for the driver, but they do have the effect that the old driver doesn’t compile anymore.

The go7007 driver as included as ‘staging’ driver includes all those changes, but is a little too thorough in removing some code related to tuners and their settings (breaking the tuner), and also still  removes the private ioctls that mythtv still needs.

So, for your convenience, here is a package based on the combination of the original sources, code from the staging driver in the most recent kernel tree, choosing those parts that are needed to make this hardware work with mythtv on a linux kernel version 2.6.31.

For Ubuntu Karmic, I needed to change the go7007_firmware_load script a bit, because usbdevfs isn’t in there anymore, and /dev/bus/usb can be used instead (the fxload in ubuntu karmic works fine with it).

Also new in this version: During the ‘make install’, the go7007 kernel modules are removed from /lib/modules/nnnn/kernel/drivers/staging/go7007, if they exist to prevent conflicting combination of those modules and the ones made in this package.

It works for me on the 2.6.31-9-generic kernel that is currently in Ubuntu Karmic.

[ EDIT 2009/11/06 : the wis-go7007-linux-0.9.8-5.tgz didn't have the update go7007_firmware_load script, new '5b' version with the updated script available below ]

Download the go7007 driver package for linux 2.6.31 here: wis-go7007-linux-0.9.8-5b.tgz

New version

February 3rd, 2009

This new version should also compile with 2.6.27, and may work… (perhaps follow the thread at ubuntuforums, or try it and report here or there ;-))…

I also fixed the audio device autodetection in gorecord, so it now works (at least for me) with gorecord like this:

gorecord  -duration 30 -bitrate 800 -input 2 -tvchan ntsc-cable:24 capture.avi

Which gave me 30 seconds of mpeg4 video and audio from cable channel 24…

Download it here: wis-go7007-linux-0.9.8-4.tar.bz2

An initial version of go7007 for 2.6.28

February 2nd, 2009

There has been a bit of a gap in availability of the go7007 (plextor PX-TV402U/PX-M402U)) driver for more recent kernel versions. There is a version in the staging tree, but that one doesn’t seem to work at the moment. Since people (like me) are using such hardware with mythtv, that is a bit unfortunate.

wis-go7007-linux-0.9.8-3.tar.bz2 (note: worpress mangled the filename a little)

I hope this will help alleviate the problem a bit: This is a version of the go7007 driver that I compiled from the sources below. It worked for me in a test with gorecord, on ubuntu jaunty (9.04) with the for that release current kernel, version 2.6.28-6, using this command:

sudo gorecord -input 2 -vdevice /dev/video0 -adevice /dev/dsp2 -tvchan ntsc-cable:13 -bitrate 1500 -duration 30 capture.avi

Gave me 30 seconds of mpeg4 video with audio from ntsc cable channel 13.

I haven’t tested anything else yet.

I took the latest driver code from Greg’s staging-2.6  ‘junk tree’, pasted it into the 0.9.8-2 tarball from nikosapi’s wiki, and made a couple of necessary changes (add ‘struct inode *’ parameter to open()/release(), bring back the private ioctls, some Makefile adaptations, and an obvious ‘udev-detection’ fix in the main Makefile).

Obviously, this will not help getting the driver any closer to full acceptance into the official kernel, but it should get it closer to getting the hardware to work again with mythtv and on more recent kernels.

Sources:

http://nikosapi.org/wiki/index.php/WIS_Go7007_Linux_driver

and

http://git.kernel.org/?p=linux/kernel/git/gregkh/staging-2.6.git;a=summary

I hope this helps others.

Jelle.