As some of you might know already, I like to nerd out about input devices. I’ve had the desire to build and try out a chorded keyboard ever since I first watched The Mother of all Demos. Chorded keyboards have had some popularity with wearable computing enthusiasts due to their one-handed use, but I thought they might also be interesting for ergonomic reasons. Building a chorded keyboard would also be a great learning experience as a deep dive into the workings of USB HID devices.

One of my initial thoughts was to use the existing hardware from my Belkin Nostromo SpeedPad n52. It’s a game controller that I haven’t made much use of lately. Opening it up, most of the button connections are extremely simple, so it would be pretty straightforward to put my own hardware inside of the device. The more I research chording patterns, however, the more I think that the keyboard layout on the n52 won’t be optimal for use as a chorded keyboard.

So I went about ordering a number of mechanical switches and I’m attempting to build my own from scratch. Building a nice ergonomic enclosure will be difficult, as I’ve never done anything like it before - I’ve only ever built square things.

For now, I’m starting with the software. I’ve built a simple mock-up device using some cheap pushbuttons (they were easier to use with a breadboard), and attached them to an ATMega328. Now I’m working on getting basic keyboard input out of it using Objective Development’s open source V-USB stack for AVR microcontrollers.

Next time, perhaps some cardboard enclosure prototyping!