If you are anything like [Antoine], you would love to be able to control your PC with a simple hand-held remote control from anywhere in your house. [Antoine] wrote in to tell us about his wireless computer remote that emulates a USB keyboard, making it suitable for any device that uses a USB keyboard.
His blog post is very well written and contains a ton of design information and background on the project. He initially wanting to easily control his PC’s music from anywhere in his house without needing to be within line of sight of his computer. The end result is a very handy remote that can be used to change music, video, and even launch applications on his computer. The system consists of a base station for his remote that connects to the computer and acts as a USB keyboard, and the remote itself. The base station uses V-USB on an Arduino to interface with the computer, and VirtualWire to handle the wireless protocol for the remote. For those of you who don’t know about VirtualWire (now superseded by RadioHead), it is a very cool Arduino library that lets you easily use raw wireless interfaces (also called vanilla wireless interfaces).
Without going into too much detail here (be sure to see the actual post for more information), the remote itself was redesigned after the initial proof of concept to maximize battery life. The final power consumption is very impressive, resulting in a battery life of more than two years! This remote system is very well put together and contains many aspects that can easily be reused for other projects.
[Michael] built his own clone of the popular MaKey MaKey Kickstarter project. His implementation uses an ATMega328 and the V-USB stack to connect as a USB Human Interface Device. He was showing it off at Toorcamp wired up to a banana piano, which captured the interest of kids and adults alike.
The digital inputs are pulled to ground with a large (10 Mohm) resistance. The user holds a supply voltage in one hand and completes the circuit by touching a conductive object like a banana, which is connected to a digital input of the ATMega328. Since the internal resistance across your body is typically around 1 Mohm, this pulls the input high and corresponds to a key being pressed on a normal keyboard.
We featured banana pianos before, and it’s a great demo of the interfaces that can be built with this project. This implementation is very simple, and works well if your internal resistance is low enough. [Michael] taught a workshop at Toorcamp to show people how to build their own. He has found that the ‘magic’ of playing music with bananas is a great way to get children interested in electronics.
[REVENGE] pointed out a couple cool little project posts from the geekhack fourms converting vintage keyboards to USB with a Teensy. They both have VUSB support, so any avr micro controller that meets VUSB’s requirements in theory could be used.
First up is a PS/2 to USB keyboard converter, and while yes this has been done many times before, this one sports some extra features not often seen, like mouse keys, system and multimedia keys, and keymap customization. Instructions are also provided for use with a non USB enabled avr controller (like a mega 168, or 328) through the VUSB library (though with not all features available).
Next is pretty much the same thing, but it converts Apple Desktop Bus to USB, which is not exactly rare, but its lack of a clock serial signal, somewhat variable timing, and the fact that you wont find a bucket of Apple keyboards for a buck at the thrift store makes any ADB converter worth mentioning.
VUSB instructions seem to be the same for either, source is available and there are some cool pictures and info listed, and besides what is more fun than being able to plug your Model M into your netbook, or your Apple Extended Keyboard into your mac mini.