Skip to content

Doug Engelbart’s Chorded Keyboard as a Multi-touch Interface

Doug Engelbart’s contributions to computing and human-computer interaction have been phenomenal. In what’s been named “the mother of all demos,” Doug and his team introduced the world to the mouse, video conferencing, hypertext, multi-pointer collaborative interfaces, and dynamic file linking (all in 1968!). If you’ve never watched the videos of the demo, definitely check them all out.

However, what’s often left out was an equally-important input device opposite the mouse, the chorded keyboard. Using this input, the user could type and issue key commands using only one hand. This left the other hand free to navigate with the mouse. Unfortunately, since there’s a pretty steep learning curve to using a chorded keyboard, it never really caught on.

HOW IT WORKS

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 even leaves a few for high level text commands (such as space, delete, and enter).

Engelbart Chorded Keyboard touch screen interface by Teague Labs

As designers, we all know that on-screen soft keyboards are cumbersome and rather slow to use due to their lack of physical texture and haptic feedback. And with the continual rise of touch screens on phones, tablets, and laptops, we got excited about giving the chorded keyboard another chance!

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.

TRY IT OUT YOURSELF

Ok, enough build-up. :) If you have a tablet (android or iPad) handy,
give the chorded keyboard a try here!

Of course, this project is completely open source for you to play with and build upon. View the html and javascript source code directly in the demo to see how it works and incorporate it into your own projects.

52 Comments

  1. […] to hold the tablet in one hand and type with the other. That’s exactly how [Adam Kumpf] has implemented this one-handed typing interface which was originally conceived by [Doug […]

  2. […] sense to hold the tablet in one hand and type with the other. That’s exactly how [Adam Kumpf] has implemented this one-handed typing interface which was originally conceived by [Doug […]

  3. […] to hold the tablet in one hand and type with the other. That’s exactly how [Adam Kumpf] has implemented this one-handed typing interface which was originally conceived by [Doug […]

  4. You can actually use the on-screen keyboard with a mouse or similar pointing device by clicking and holding on your first key, and right clicking the rest of the keys for the letter, and finally dismissing the right-click menu. I was able to sucessfully type “et tu brutus” this way.

    Side note: telling me I can’t do something is a sure way to make me try.

  5. […] to reason a inscription in one palm and form with a other. That’s accurately how [Adam Kumpf] has implemented this one-handed typing interface that was creatively recognised by [Doug […]

  6. There’s still some room for 2 smaller buttons in the lower-right corner, 1 for switching to left-handed typing and 1 for switching to numeric keypad or special characters. Could be tapped by the pinky. That would make it perfect.

  7. I think this would also work great on Macs with the Magic Trackpad! There are enough gesture tools out there that show how to get the touch events.

  8. Great idea, I like that very much since the on screen keyboards are so annoying without haptic feedback. This is a much better approach and leads to fewer typos caused by misplaced fingers :)

    Please put this in the android market! And find a way to navigate with only four fingers at the same time, since some tablets (including mine :( ) have only 4x multitouch.

  9. This is absolutely fantastic. I’ve wanted to play with a chorded keyboard for a long time. But why not take a dvorak-style approach by correlating the frequency with which a letter is typed with the ease of typing it? You’ve done that with the space-delete-return keys. But shouldn’t the two remaining single-finger keys be ‘e’ and ‘t’, with the two-finger combos being ‘a’, ‘o’, ‘i’, ‘n’, etc (http://en.wikipedia.org/wiki/Letter_frequency#Relative_frequencies_of_letters_in_the_English_language)?

    I also suspect that you could eliminate the need for the left hand by using multiple taps, eg a double-tap with the thumb puts the keyboard in shift mode; double-tap with other keys could be ctrl, alt, etc.

    Anyhow, fantastic idea and great execution. Thanks!

  10. This is pretty fine. I like the automatic left-hand/right-hand switching. The documentation/hints are a bit unclear, though; I was unable to type the letter r since it seemed to be indistinguishable from space.

    Infogrip makes a nice, but not very portable, hardware chording keyboard called the BAT (http://www.infogrip.com/bat-keyboard.html). I have used the left-handed version as my primary keyboard for my laptop and desktop for more than 10 years, and type about 30 words per minute on it. They have a very nice chord layout that uses easier-to-type key combinations to type more common letters. E.g. lifting just your ring finger is awkward for many people; that key combination gets “y”. I have no idea if the key layout is patented or anything, but I would be utterly ecstatic to see it available as an alternative iP*d keyboard. For that matter, I’d be so ecstatic to see an actually portable version of the BAT that I’m in the early stages of building one in my lab. I’d love to keep in touch, or even help implement the alternative iP*d keyboard.

  11. The comment system ate up my html, sorry. I meant to request you to add the following (hoping this will show up):

    <meta name=”viewport”
    content=”width=device-width, initial-scale=1.0, user-scalable=no”>

  12. silly question, given that most tablet and especially phones are held in the left hand by right handed people, could you not add a 6th key for the left thumb and double the number of possible characters?

  13. It would be nice if you had an option on this page to use the system with a standard qwerty keyboard, so we could practice our technique!

  14. Hmmmm.

    My mind is wondering if this can be accessed as the primary keyboard under Xdmx. That would be…

    … not tonight. Gotta get some sleep tonight.

  15. You can use alternative keyboards in android devices, so why not port a android application? I might even pay $ for a better keyboard….

  16. Tested this on an Ipad2.

    Like the idea, but would need to be able to move each of the 5 pads into a position where my fingers could reach them quickly (My hand is too large)

    The five finger gesture did not work.

    Also I would prefer to have two pads for the thumb, so that I could have numbers, special characters by moving my thumb and keeping the rest of the fingers in the same place.

  17. Ken Ken

    Add shift key for caps and specials at bottom right.

    move chorded letter cues in yellow field to line below single finger key cue – gives more room for a larger font. I can’t see the letter cues!!!

    Keep one handed – there is a real need for one handed keyboards. Shift function to swap for left-handed operation?

    Option to spread it out a bit for iPhone? I think it would work!

    Keep working on it!!!!

  18. I have been typing with the BAT keyboard for 19 years. In fact I started working for Infogrip, the manufacturer, 19 years ago while in collage and am still here. I type about 50wpm with a left handed BAT. I also have an iPad that I wish I had a BAT on it. At 50wpm it would make my iPad a lot more useful. Unfortunately the BAT never caught on to the masses however we still produce it and sell it. Mostly because we believe in the technology and use it. As a company we can not justify the cost of developing a iOS or Droid product so if anyone has any great ideas we are all ears.

  19. FWIW, the demo page works on the wife’s Blackberry Playbook, even before the Android-compatible OS update. (She’s experimenting, but finds it a puzzle to use.)

  20. My friend and I were discussing this tonight and we truly hope it catches on. I can really see myself using it as my only keyboard on tablets. I have to say I really hope to see this ported to android and iOS and fully open sourced because I truly believe the world could benefit from this, even if it isn’t very widely used.

    Now for our comments and suggestions which won’t be regarded by anyone:

    I’d like to see it stay one-handed, because for various reasons it is often more practical to only use one hand.

    Gestures like swipe right on space for period, and swipe left for comma would be great. And capitalizing by swiping your fingers up before you let go as well. I think simple gestures like this would make it a lot more fluid and keep the interface minimal and unobtrusive.

    I am very excited about this keyboard and hope to see it as a usable beta on tablets soon.

  21. […] [Teague Labs via Hack A Day] Next Post» « Home Comment » Subscribe to Technabob googletag.cmd.push(function() { googletag.display('div-gpt-ad-1319819169012-3'); }); googletag.cmd.push(function() { googletag.display('div-gpt-ad-1319819169012-4'); }); […]

  22. Ma Ma

    There should be also two finger version of this (for mobile phones). For example with seven squares one could easily access most letters and symbols with two fingers. Also two finger input would be better for phones ‘cos then one can use both thumbs (and still be able to use one handed also. Shift could be in the first five (or seven) squares to access uppercase and rarer symbols.

    Anyway, a very nice idea! I hope this gets into mobile devices fast. Hate writing with qwerty on touch screen devices.

  23. Hey this is great – I haven’t tried it yet, but the concept is great. The original keyset was used by the left hand in concert with the mouse, in other words while one hand was pointing and clicking, the other was entering content or commands. Mouse buttons could also be used to extend keyset functionality. See http://www.dougengelbart.org/firsts/keyset.html for details, photos, demos…

  24. ttb ttb

    I’m really interested in this for Android 4.0. I mean, I’ll pay money for it. How about a kickstarter?

  25. Adam
    Interesting project and a clever implementation of a chording device on a multi-touch screen. The use of semi-transparency is appropriate and your effort to support something akin to hunt-and-peck typing on a chord keyboard is pretty original.

    I do have a few comments.

    As you have already found out, attempting to support hunt-and-peck entry by means of labeling the keys in the way you have is already pushing the boundaries of complexity – in terms of the load of visual search – even with only 32 chords. It gets significantly worse as you add chords by means of additional keys.

    However, with what you have you could reduce the load consumed in such visual search by making sure that the characters labeling any single key are in alphabetical order. For example, on the thumb key, search would be much faster if you had “SPACE nopqrstuvwxyz” rather than “SPACE nopqrtysxwnzvu.” But it would be faster still if you simply had: SPACE n-z”. This would also provide a clue that the thumb key was only used in entering characters in the upper half of the alphabet, thus limiting searches for the lower half to 4-button chords using the 4 finger buttons.

    You describe your project as “Doug Engelbart’s Chorded Keyboard …” While Doug made a great contribution to computer interaction, and he did incorporate chording for entering text, I am curious why you did this. I ask because, other than having a 5-button chord keyboard, there is very little in common between your design and his.

    And, in fact, even the 5-button chord keyboard is not quite accurate. Doug actually used a 7-button chording system for text entry. It just happened to be split between two physical devices: the 5-button chord keyboard, and two of the buttons on his 3-button mouse. So, yes, he could enter a sub-set of the available alpha-numeric characters with one hand, using the 5-button device. But he actually typed with two hands chording using the 7 buttons. The one-handed part just emerged because he didn’t need all 7 buttons all the time (just like you don’t need the thumb button for the lower half of the alphabet. The convenient thing was that he could at least enter the lower-case alphabet using just 5 buttons – hence the origin of the claim that he could type with one hand. True, but misleading.

    If you really want to make a one-handed chord keyboard capable of entering a more useful and richer set of characters, I would recommend that you take a look at the Microwriter keyboard. The reality is, your key layout resembles it far more than Engelbarts anyhow. You would just need to add a second thumb key, which is not an issue – as it turns out. If you want to try it, there is a very small Bluetooth descendant of it, the CyKey (http://www.cykey.co.uk/). It works well with slates and can get you touch typing in about 30-60 minutes.

    If you are interested in seeing the mapping of chords to characters that Engelbart used, compared to yours, I have them both in comparable formats in the following two files:

    http://billbuxton.com/EngelbartChordMapping.pdf
    http://billbuxton.com/TeagueLabsChordMapping.pdf

    I might add that Engelbart’s mapping – a minor variation of 7-bit ascii – was not designed for east of use, so not using it was not necessarily a bad choice.
    One short question: given how few chords you had to work with, I am curious why you allocated two chords to the letter “n”.

    Chord keyboards have a long history, as does one-handed typing (for which chord keyboards are only one example). If you are interested in reading more about their history, and seeing some examples, feel free to visit the following:

    http://billbuxton.com/input06.ChordKeyboards.pdf
    http://research.microsoft.com/en-us/um/people/bibuxton/buxtoncollection/

    Thanks for the nice work and making it so accessible.

    Bill

  26. Hi Bill,

    Thanks so much for your detailed write-up and thoughts. You make some very strong points (I completely agree with letter ordering, shortening, and helping to better convey simple mental mappings for finger combinations) and I hope we as a community can keep moving forward toward chorded input that actually allows us to express ourselves more quickly and with greater depth than the current keyboard paradigm provides.

    The intention of referencing all of the way back to Doug Engelbart’s contributions was to both acknowledge the NLS team’s incredible insights, as well as move the conversation of keyboard input beyond being viewed as just a new tech gadget and more toward an evolution of a desire many have shared in HCI for decades. Your contributions are quite vast and informative as well, and I am honored that you took the time to share your thoughts. :)

    Toward a future where people, computers, and information can all be more seamless!

    Cheers,
    Adam

  27. This is absolutely brilliant! I think there’s a lot of potential for this type of input method (as well as something based on sensors, similar to the way Cellulon’s Magic Cube works, except without the laser projection) to make the traditional keyboard obsolete. I’ve developed my own layout (called ASETNIOP or “ten-point”) that’s based on ten fingers, rather than just five, which allows for *much* higher speeds (up to 80 wpm) and is based on the original QWERTY layout, so it should be much easier for new users to learn.

Leave a Reply

Your email address will not be published. Required fields are marked *

WordPress Anti-Spam by WP-SpamShield