Thursday, 7th June 2012
This is a chorded keyboard mounted around the edge of my mobile phone, a HTC Hero. Chorded keyboards have existed for ages and never really caught on, but I thought applied to a mobile phone it might be quite useful. I find existing keyboards for phones are a bit lacking; hardware ones are bulky and software ones are fiddly and take up screen space that could be better used. Chorded keyboards can potentially be more compact, and also have the advantage that they can be used without looking at them. It's currently -3 degrees centigrade in Cambridge, and I'd quite like to be able to control my phone without taking it and my hand out of my pockets while outdoors.
The keyboard is just five key switches connected to a IOIO board. To type a character, you hold down a combination of the buttons. The first button sends 'A', the second 'B' and holding down both then releasing gives you 'C', and so on. On a production keyboard, you would organise the most common letter to be the easiest key combinations. 'E', 'R', and 'T' would be single clicks, and 'Q' would require the least comfortable click combination.
There are 31 possible combinations of the 5 keys, which is room for the alphabet and a few extras such as space, backspace, shift lock and a couple of extra escape sequences to add numbers and symbols.
The IOIO board isn't ideal for this application, because it requires external power to operate rather than drawing power from the phone, hence the 9V battery. That and the bulky USB connectors make this impractical to use. I could replace the IOIO with another microcontroller capable of hosting USB if I wanted to make this a real device.
I also need to figure out how to write the necessary Android code to make this a general input method rather than just typing text into a custom application.
The case is 3d printed by Shapeways. It fits over the phone and replaces the normal back cover. There are spaces in it for the volume control, camera and headphone socket. The volume control could also be used as a 6th & 7th button for chording, if desired.
As it stands, the keyboard isn't particularly comfortable to use. The keyswitches require too much force and aren't in quite the right places yet. I think it's got potential though.