One of the things that amazed me when I was just experiencing Linux many years ago was the ability to use my joystick as a remote control for x11amp. I'd never heard of any Windows audio player with such functionality on that epoch. It has been proven really useful while I was working and listening to music, I could control the music quickly without being distracted switching desktops or looking for tray icons. With the help of a DB-15 extension cord, I was also able to drag it to anywhere in my bedroom and control the music even when I was not at the computer.
Unfortunately, with too much handling, the joystick cable tends to break. I already have 3 defective joysticks, 2 of them would still work if it was not by their cables. When my last joystick starded mal-functioning a few weeks ago, I decided to try something different.
Infrared remote controls for computers aren't any news, but it is still not a common peripheral. LIRC provides the drivers and daemons necessary to decode the signal from many types of receivers on Linux, including home-brew receivers. Following the instructions on the site I built my own infrared receiver module, using the receiver IC from an old VCR since I couldn't find it on any electronics shop nearby.
This home-brew receiver connects to the computer serial port, but it is not a normal serial device. Instead of using the serial data lines, it uses the carrier line to transmit the raw signal returned by the receiver IC.
And it worked incredibly nice. Now I can watch videos laying on my bed without having a joystick cable twining on my toes. :P
The only drawback is that the responsiveness of the remote control is slower than the joystick. Sometimes I have to hold a button shortly until LIRC decodes the signal. On the other hand, the new mobility pays it back.
Now the next thing I need is an LCD display...
(many thanks to Keila, who lent me her camera to take the above photo)