Well, after using it for a week I think I need to try a different approach. Occasionally it misses keypresses, and worst of all sometimes it misses the keyup code so the buttons "stick". I guess this is because the interrupt jitter is too high due to the non-realtime nature of Linux. The IR decoding is done by the CPU (and not dedicated hardware) and it just can't go that fast reliably. It seems to glitch more when accessing the drive which makes sense.

So my next attempt is to read the object code out of the PIC chip. I've desoldered it and I'm waiting on an adapter for my programmer. I've also researched ways to crack code protection, but there's great risk I smoke the chip. I don't want to end up with a bricked empeg. frown But worse comes to worst I can just code up everything new and replace it with a PIC16F54.

Once I have the code, I have some ideas on how to modify it. Like queue up knob codes for one, so the IR doesn't need to go as fast. Or make the knob transmit at the fast rate but not the buttons. Anyway I think there's room for improvement in the PIC.