5 ms·
Building a Chording Keyboard: Progress So Far
- berntb 13y agoI've always wondered about the usability of a chording keyboard with a smart phone's edge (or an xPad) and four areas under the fingers. (Four buttons is quite few combinations. You probably need the thumb too, with two-three alternative buttons for it.) It would be easy to have a learning mode which give feedback about possible combinations, since it is on a screen. My only (hobby) programming for mobile has been on iOS, where the system keyboard isn't easily replaced. There seems to be things like this in the Android store? Anyone know why this didn't work well enough to be popular?
- ics 13y agoYou might be interested in this[1] which was posted to HN some time ago. iOS is a no-go for this sort of thing for now at least, but I'm unfamiliar with Android. For hardware modules I think the thumbs work very well as a modal control, but on a small touch screen I don't know how it would work. [1] http://asetniop.com/ http://asetniop.com/
- berntb 13y agoThanks! I missed that. (They should have "Desktop version" and "iPad version" bigger on the page you linked. I browsed a bit before finding those. Can you buy hardware somewhere?)
- mathiasx 13y agoThere is also the GKOS project: http://gkos.com/gkos/index-gkos-com.html http://gkos.com/gkos/index-gkos-com.html
- lispython 13y agoChording keyboard may get popular in the future. Wearable Computing researchers usually use a chording keyboard for typing. You could see how this work with Emacs in real life by Thad Starner (a technical lead on Google's Project Glass) http://www.youtube.com/watch?v=_V2i_7oX8mw http://www.youtube.com/watch?v=_V2i_7oX8mw
- nikatwork 13y agoCan't find anything on Google, but I saw a docco at least ten years ago of a marine biologist who made one of these for taking notes underwater. It had four waterproof buttons, and by pressing various combos he could type one-handed underwater while holding scientific instruments or a camera. I thought at the time it would be awesome for wearable computers.
- lnanek2 13y agoChording keyboards are very common with wearables. The Twiddler being a common example: http://www.handykey.com/ http://www.handykey.com/
- beambot 13y agoFun fact: the Twiddler was a mainstay of Thad Starner's wearable. (Thad was the tech lead behind Google Glass.) Thad had pretty impressive WPM on a Twiddler... 80-90 WPM IIRC.
- prawn 13y agoIt would need to be adapted to work underwater, but Thalmic's MYO could make a great tool for gesture recognition without having to actually carry a keyboard. Just gesture to activate or deactivate, and then have gesture chords for common words or letters of the alphabet? It'd have quite the learning curve though.
- FreakyT 13y agoChord keyboards are pretty cool, historically. I suspect that the reason for their demise was the notion of "keyboard shortcuts" (Ctrl key, alt key, etc) taking over most of their functionality.
- cjh_ 13y agoAwesome project thanks for sharing. A few months ago I started on a project to make a 'grip' style chording keyboard [0] also based on the teensy, sadly the project has stalled for a bit (graduated and got a full-time). I have the keys wired [1] but haven't figure out a nice way to mount them yet, and the firmware isn't finished. [0] http://geekhack.org/index.php?topic=43132 http://geekhack.org/index.php?topic=43132 [1] http://i.imgur.com/zQiYmQC.jpg http://i.imgur.com/zQiYmQC.jpg EDIT: I always found it a bit sad that I was unable to find much documentation on how Engelbart's original chording keyboard worked, does anyone know of a source where I can read how the keys are chorded?
- mathiasx 13y agoI received a reply on Twitter from Bill Buxton, who worked at Xerox/PARC and other cool places, pointing me at this chapter out of his book: http://www.billbuxton.com/input06.ChordKeyboards.pdf http://www.billbuxton.com/input06.ChordKeyboards.pdf The section "The NLS System: Engelbart and English" contains the most detailed explanation of Engelbart's chording keyboard that I've found, and the rest of the chapter is an interesting read.
- gtani 13y agoOrthogonally, i've always wanted a decent pair of foot pedals just to cover Shift, Control, Option and Alt or run key macros. It might be possible to coopt one of the new USB guitar pedals that also control DAW (Logic, ProTools), shd investigate something like: http://www.americanmusical.com/Item--i-TCE-GSYSTEM-LIST http://www.americanmusical.com/Item--i-TCE-GSYSTEM-LIST
- ics 13y agohttp://www.emacswiki.org/emacs/FootSwitches http://www.emacswiki.org/emacs/FootSwitches http://www.cb1.com/~john/computing/emacs/handsfree/pedals.html http://www.cb1.com/~john/computing/emacs/handsfree/pedals.ht... http://hackaday.com/2012/06/21/building-a-clutch-for-vim/ http://hackaday.com/2012/06/21/building-a-clutch-for-vim/ ...do a search for "emacs foot pedals" and you'll find many results. Years ago when I got my first Mac I had visions of buying all these cool MIDI devices and trying to control it with those. As an 11-year-old without internet access I hit a dead end pretty quick, but there are certainly others with the idea.[1] [1] http://stackoverflow.com/questions/5928061/using-a-piano-keyboard-as-a-computer-keyboard http://stackoverflow.com/questions/5928061/using-a-piano-key...
- extra88 13y agoFoot switches are available from ergonomic hardware companies. Kinesis makes the Savant Elite line of USB foot switches. They only provide Windows software for programming them but once programmed they can work with other OS's (with some limitations). http://www.kinesis-ergo.com/fs-savant-elite.htm http://www.kinesis-ergo.com/fs-savant-elite.htm http://www.kinesis-ergo.com/fs-elite-single-compatibility.htm http://www.kinesis-ergo.com/fs-elite-single-compatibility.ht...
- mathiasx 13y agoThis is in the works. While it won't be three pedals to start, I realized the simplicity of wiring the Teensy to a digital piano foot pedal (like this: http://www.amazon.com/M-Audio-Sustain-Pedal-Action-Keyboards/dp/B00063678K/ http://www.amazon.com/M-Audio-Sustain-Pedal-Action-Keyboards...) to build a relatively cheap, durable foot pedal for computing. I'll be posting about that sub-project soon on my blog. One thought, since the Teensy can detect button press and button release events, is to code a vim mode where holding the pedal puts you in insert mode and releasing the pedal hits ESC to leave insert mode. We'll see how that works out in practice. For 3 pedals, you could go with a DIY guitar pedal solution of project boxes and 3 momentary stomp switches (http://www.mammothelectronics.com/ http://www.mammothelectronics.com/ is a good supplier of these parts) but I am unsure about the ergonomics of using one of these pedals constantly. (Guitarists simply stomp them on and off from a standing position. They're generally not pressing and holding the switches for 8 hours from a chair. So it might just cause foot/ankle problems due to the height of the front of the enclosure. More experimentation is needed on my part in this area.) Such a pedal would be way cheaper than the commercial versions from Kinesis and other manufacturers, however, and should be far more configurable / useful on Linux & Mac.
- hughlomas 13y agoI have wanted to make an infrared-based chording keyboard. Using an infrared camera, monitor the velocity of the five brightest points and consider a fingertip contracting to be keypress. Throw a small infrared LED into the front of a smartphone and a forward facing infrared camera and voila, smartphone chording keyboard, without taking up any screenspace.
- dminor 13y agoMy friend Zack made one called asetniop: http://asetniop.com/ http://asetniop.com/ Now he's working on something similar for Leap Motion and Google Glass: http://dextype.com/ http://dextype.com/
- mathiasx 13y agoI'm really looking forward to getting a Leap Motion device! I think there's a lot of possibility there for programmers that are interested in building a new input method. My thinking is that a Leap Motion could be used with a standing desk (my current preferred desk setup), in combination with existing keyboard and mouse, to replace key combos to the OS like switching windows/tabs, window management (maximize, minimize, expand to left half of screen, etc.) as well as macros for common commands we type all day (`git push` or running the tests, for example.)
- jff 13y agoI built a 7-key chording keyset based on the Spiffchorder. It should be adaptable to almost any configuration. Mine came out a bit blocky and hard to use due to crappy buttons.
- mathiasx 13y agoI have found the Cherry MX switches to be fairly good and reasonably priced. I did some research to see if anyone had open sourced a design for a 3D printer to print a Spiffchorder, but I didn't find anything. Maybe that's the next step? 3D printing these iteratively, to see what fits and what needs to change, seems like a huge win for developing a wearable chording keyboard that is comfortable and durable.
- kybernetikos 13y agoI was pretty excited about http://chordite.com/ http://chordite.com/ for a while, but at the moment it's still a build-your-own proposition and I struggle to find the time. I'd really like a non-dominant-hand, bluetooth, chordal keyboard that can replace the mouse and enables decent typing speed suitable for development (i.e. reasonably easy to type { } [ ] , . @ : / \ *, and supports shortcuts).
- flarg 13y agoI had a Microwriter Agenda for a few years (until it got stuck in a system loop and sounded a reminder alarm every hour until the battery pack ran out) - had a great chording keyboard. Recently purchased a CyKey [1] (a follow-on by the designer of the Microwriter Keyboard) and it works well (but I think my hands are too small for it). In both cases I've fond that eventually my hand learns the key strokes and I never forget them, but symbols, brackets etc. are hard to do. [1] http://en.wikipedia.org/wiki/CyKey http://en.wikipedia.org/wiki/CyKey