Getting the HVR-1600 remote control to work in Mythbuntu-9.10
Roger and I finally got together last evening, and enabled the Hauppauge remote control of the HVR-1600, on his Mythbuntu 9.10 system.
The idea here, was to get a working ir-kbd-i2c driver installed. I have a patch to make it work with the 2.6.30, kernel, and it works "out of the box" with 2.6.32 and higher. But Mythbuntu-9.10 uses the in-between 2.6.31 kernel, which cannot be easily fixed.
First, we tried the "simple" solution of installing a 2.6.32 kernel, but the syslog was instantly flooded by some ext4 error messages. Not wanting to risk filesystem corruption, we scrapped 2.6.32, and reverted back to the 2.6.31 Mythbuntu kernel again.
Next attempt was to download the latest snapshot of the entire [tuner] drivers subsystem from the v4l-dvb site, which includes a working ir-kbd-i2c driver with my fixes already in place.
Installing the snapshot drivers is normally simple: unpack the archive, do make and then make install, and reboot. But there were several build errors -- Mythbuntu's fault, not the drivers -- and we had to hand edit the config files to work around those.
Once we got it to build, the make install and reboot worked just fine. We then ran my enable_hauppauge_remote.sh script, and had a working remote control.
To make the fix "persistent", we added a call to that script into the /etc/init/mythtv-backend.conf "upstart" file (not the similar file in /etc/init.d/).
Unfortunately, Mythbuntu-9.10 also uses the new and confusing GRUB2 bootloader, rather than the hitherto Linux standard GRUB loader. In the time available to us, we were unable to figure out how to add a static boot stanza for the current kernel version to GRUB2. Well, we could add one, but it always got put at the end of the list rather than the top (default) position. Really useful, that (not!).
So this means that Roger has to be careful not to apply any automatic Mythbuntu kernel upgrades, because those will then become the default boot kernels, replacing our hacked driver stack. Things would still work, just not the remote control.
In theory, one could just rebuild the replacement driver stack again after any upgrade, but since Mythbuntu has broken the build for it, that's not trivial.
I expect this all to just go away with the upcoming Mythbuntu-10.4 release (April 2010), which is based on the 2.6.32 Linux kernel, with a working ir-kbd-i2c driver included by default. The enable_hauppauge_remote.sh script will still be needed, but that's a simple thing to tack on.