Hi,
Update2: From looking at the templates for the hdpvr device in lmce and the some instructions for compiling the driver from the mythTV wiki (
http://www.mythtv.org/wiki/Hauppauge_HD-PVR) , it seems like I may have been hit by the need to update the driver to 4903 instead of 4902 or 4901--which are currently listed in the template. Compounding that, the changes in the sources.list for the downloads of the ivtv-utils may be affecting some of the scripts that are supposed to load ivtv-utils at boot. (if it can't download it, it can't load it.)
Has anybody some insight into if this might be the case and how to fix one or both? It seems like the first step to testing this would be to recompile the hdpvr driver with/for dkms. Having never done this, it would be great to get a confirmation that this is (could be) the problem.
first update here:
Update: after searching around on the web, it appears that the reason I'm not getting a /dev/videox when the hdpvr driver is loading is because the driver is loading improperly or is outdated.
I went through the drivers that interacted with hdpvr one by one and found that the cx88-dvb.ko driver, even though it showed that it was present in the dkms directory (/lib/modules/2.6.27-17-generic/updates/dkms/) where all the other drivers were loading from, would not load:
root@dcerouter:/lib/modules/2.6.27-17-generic/updates/dkms# modprobe cx88-dvb
FATAL: Error inserting cx88_dvb (/lib/modules/2.6.27-17-generic/updates/dkms/cx88-dvb.ko): No such device
So my question is, not being familiar with how dkms works in LinuxMCE, can I move this directory so that the other drivers I have compiled with the kernel (see below) will work as is suggested by mythtv wiki:
"In Ubuntu, the module may fail to load and refer you to the dmesg command. If this happens, reboot and see if the error resolves itself. It is also possible that Ubuntu is prioritizing another, older copy of the v4l-dvb modules above the one you just installed, and the hdpvr will fail because the two versions do not match. Try a command like:
locate cx88-dvb.ko |grep `uname -r`
This will search for the cx88-dvb kernel module, which is provided in the Hg tree you just built, and also in default Ubuntu installs. If you see more than one copy of this file, you may need to move the older versions out of the way. In at least one case, alternate versions of all the modules were located in "/opt/ltsp/amd64/lib/modules/kernel version number/ubuntu/". The symbol mismatch was solved by moving the "/opt/ltsp/amd64/lib/modules/kernel version number/ubuntu/media" directory into a backup directory in the user's home, then rebooting. " from http://www.mythtv.org/wiki/Hauppauge_HD-PVROr, will that kill LinuxMCE? Alternatively, is there a way to replace the driver that does not load? Just copying it in give me a whole series of mismatches in dmesg.
Any help greatly appreciated. This is killing me that the driver loads with very little trace of why it will not create the /dev/videox link I need to get this thing working. It seems so close...
Original post begins here:
Emboldened by this link that says it works:
http://wiki.linuxmce.org/index.php/Hauppauge_HD_PVRI manually created a device from the template and followed the instruction in the wiki for enabling S/PDIF
I then went to the MythTV wiki page which was a link in the Wiki:
http://www.mythtv.org/wiki/Hauppauge_HD-PVRFrom there, I updated the firmware to 1.5.7 as suggested and for good measure, installed and tested it on Win XP. Everything worked fine. BTW, my unit is rev. F1
I then went to the section on HD-PVR Driver Compilation Howto and looked through the directions. Since I had previously had problems compiling and installing an updated network driver I thought I would just see if an existing driver could be located.
running
modprobe hdpvr
it installed with no problems that I could detect so I did a
modinfo hdpvr
and got back that it was in the dkms folder under updates
filename: /lib/modules/2.6.27-17-generic/updates/dkms/hdpvr.ko
description: Hauppauge HD PVR driver
author: Janne Grunau
license: GPL
srcversion: FA2DE51489C7F30C23989B9
alias: usb:v2040p4982d*dc*dsc*dp*ic*isc*ip*
alias: usb:v2040p4902d*dc*dsc*dp*ic*isc*ip*
alias: usb:v2040p4901d*dc*dsc*dp*ic*isc*ip*
alias: usb:v2040p4900d*dc*dsc*dp*ic*isc*ip*
depends: usbcore,videodev,v4l2-common
vermagic: 2.6.27-17-generic SMP mod_unload modversions 586
parm: video_nr:video device number (-1=Auto) (array of int)
parm: hdpvr_debug:enable debugging output (int)
parm: default_video_input:default video input: 0=Component / 1=S-Video / 2=Composite (uint)
parm: default_audio_input:default audio input: 0=RCA back / 1=RCA front / 2=S/PDIF (uint)
parm: boost_audio:boost the audio signal (bool)
when I went to dmesg I got:
14519.552800] usb 5-4: new high speed USB device using ehci_hcd and address 6
[14519.716586] usb 5-4: configuration #1 chosen from 1 choice
and
[11655.462505] usbcore: registered new interface driver hdpvr
lsusb
Bus 005 Device 006: ID 2040:4903 Hauppauge
all seemed like this was going to be the easiest install ever until I ran
ls -l /dev/video*
ls: cannot access /dev/video*: No such file or directory
Which indicated to me that even though modprobe loaded hdpvr and it was registered, the driver was not loading properly
Thinking something was either missing or being duplicated I did:
locate cx88-dvb.ko |grep `uname -r`
/lib/modules/2.6.27-17-generic/kernel/drivers/media/video/cx88/cx88-dvb.ko
suggesting there was only one copy installed
So, I thought that the kernel did need to be updated after all and followed the directions on the mythtv wiki:
sudo apt-get install build-essential mercurial linux-headers-`uname -r`
hg clone
http://linuxtv.org/hg/v4l-dvbcd v4l-dvb
make
sudo make install
sudo modprobe hdpvr
hdpvr loaded, but when I did modinfo I found it was the same hdpvr that was loaded initially.
So...going back to first principles, I went to the LinuxMCE template for the HDPVR and found that the file Name and path script had apparently not run
sh /usr/pluto/bin/CaptureCards_SelectInput_HDPVR.sh
gave me the error that /usr/pluto/bin/CaptureCards_SelectInput_HDPVR.sh: line 18: v4l2-ctl: command not found
running v4l2-ctl gave me
The program 'v4l2-ctl' is currently not installed. You can install it by typing:
apt-get install ivtv-utils
bash: v4l2-ctl: command not found
But wait, didn't LinuxMCE tell me it was starting ivtv-utils during the messages at start up?
Sure enough modprobe ivtv loaded
Thinking I needed to install a newer version I did the
apt-get install ivtv-utils
I got these error messages, apparently because I had changed the sources.list to old-releases where ever there was an "archives" or "security" in the URL as per this post:
http://forum.linuxmce.org/index.php?topic=10901.0But I have no idea where to get ivtv-utils or even if this is the problem at this point so I did not pursue it.
So now I am in a loop where I get no /dev/video loading apparently because v4l2-ctl is not installed, even though ivtv-utils is installed, but is not upgradeable.
Anyone who has installed hdpvr or knows how the ivtv-utils is supposed to work in loading the /dev/video or anything else I've missed willing to give me some ideas how to get this to work?
Many thanks in advance. Hopefully, once I get this sorted, I can put these instructions in the wiki for others to follow.