Ah, that nice, firm clickity clack of a mechanical keyboard can be so enticing. The rhythmic clunks of keys has formed the sound of "work" for many years, perhaps for the whole 20th Century. However, nowadays, if you want to find a solid mechanical keyboard for your computer, your choices are limited. Options are out there, but they are few and far between.
The custom keyboards in their completed form.
William Yager wanted a mechanical keyboard, but also desired something that was highly customizable. Not only did he want the physical orientation of the two halves to be customizable, he wanted to be able to literally re-code the keyboard to do his bidding. There just wasn't going to be a commercial product out there that fit his needs, so he set out to make his own.
An early prototype, testing out the PCB service and custom Eagle part files.
He started out with a fairly simple prototype. After building custom parts in Eagle to match his chosen switches, he sent off for a sample board through OSH Park. He was pleasantly surprised to find his switches mounted perfectly even though there was a bit of guesswork put into creating the parts in Eagle. This meant that he could continue onward and build the entire keyboard structure, then order it through OSH Park.
Notice the top edge of the keyboard pieces. You can clearly see that he is using a Teensy microcontroller for the brains. This particular microcontroller is quite nice since it does HID, meaning it can be programmed to be a keyboard and function as one on any computer without additional drivers. This also means that he can plug in and re-program these keys at a moments notice, should he need custom layouts for anything.
There are more pictures, schematics, and code available on his blog.
— Caleb Kraft, Chief Community Editor, EE Times
For more projects that engineers are passionate about, be sure to check out EELife daily.