Try it yourself on a touchscreen here: projects.kumpf.cc/projects/Labs_ChordKeyboard/demo/
A chorded keyboard works by using combinations of finger presses to signal a keypress (for example, pressing both the first and second finger down simultaneously might send an "A", while pressing the first and third finger down might send a "B"). With 5 fingers, there are 32 possible binary combinations. Leaving out the rest state (all off), and a drag state (all on), we have 30 useful mappings. With 26 letters, that leaves just a few for high level text commands (space, delete, and enter).
Note that the finger/letter mappings used in this demo are not directly aligned with Doug's original (but they easily could be -- just view the source code!).
Here's what makes this little keyboard so exciting:
- One handed use.
- Bring it up anywhere by putting down all 5 fingers.
- large hit area per key (since there are only 5 keys to press) allows for blind/touch-typing operation.
- Contextual feedback to make learning easier (possible letters are shown at each level).
- Drag anywhere by pressing all 5 fingers down and moving your hand.
- Cancel a mid-phase chorded keypress by pressing all 5 fingers.
- Issuing keypress on touch-up allows users to type at any speed.
Special thanks to Teague Labs for time and support to bring this modern prototype of Doug's fantastic idea to life.