Wednesday, February 02, 2011

*NEW* Now with less functionality!

I use a single linux box as a router, HTPC and storage server. I use XBMC for my HTPC needs which I control with an ancient MCE remote (1039). I don't use this remote much, as I mostly use the web GUI. I noticed some days ago that the remote didn't function anymore, or actually only the arrow buttons worked. After much swearing and looking for reasons I found that:

  • This was since the first reboot since I upgraded to Ubuntu 10.10
  • I could stop lirc and still have the working arrow buttons
  • irw did not echo anything on button presses

It seems this is all caused by a new driver that's included with 10.10. The mceusb kernel driver. Lirc used to make use of lirc_mceusb. I found this forum thread stating this. I also found some complaining about the state of the kernel driver in ubuntu on the lirc mailinglist.
So I figured it would be best for now to fall back to the old driver which did work correctly. Doing this is quite easy, as explained in the forum thread:

  • add 'blocklist mceusb' to /etc/modprobe/blacklist.conf
  • install lirc-modules-source which contains the old drivers
  • change /etc/lirc/hardware.conf to load lirc_mceusb instead of mceusb
  • stop lirc and unload all related modules (lsmod|grep -e lirc -e ir)
  • start lirc and test functionality with irw