Ken Shirriff Gets Douglas Engelbart's Keyset, the Less-Successful Mouse Companion, Talking USB
Teensy-based adapter brings a largely forgotten piece of the Mother of All Demos out of the 1960s and talking to modern computers.
Reverse engineer and vintage electronics enthusiast Ken Shirriff has built an adapter to turn a real piece of computing history into a USB input device compatible with modern machines: Douglas Engelbart's chording keyset.
"In the early 1960s, Douglas Engelbart started investigating how computers could augment human intelligence: 'If, in your office, you as an intellectual worker were supplied with a computer display backed up by a computer that was alive for you all day and was instantly responsive to every action you had, how much value could you derive from that?'," Shirriff explains. "Engelbart developed many features of modern computing that we now take for granted: the mouse, hypertext, shared documents, windows, and a graphical user interface. At the 1968 Joint Computer Conference, Engelbart demonstrated these innovations in a groundbreaking presentation, now known as 'The Mother of All Demos.'"
Calling it "The Mother of All Demos" may feel a little hyperbolic, but watching Engelbart's presentation from a modern perspective reveals it was an entirely apt description: the demo showcases technologies including collaborative file editing over a remote network connection that would take decades to catch on, while being for many the first introduction to computers which work via a mouse-based interface rather than keyboards — which would inspire Xerox in its work, in turn inspiring Apple that would inspire Microsoft and usher in the modern era of computing and the windows, icons, menus, and pointer (WIMP) paradigm.
Engelbart's mouse was an undeniable success, having only recently ceded ground to touchscreen devices for mainstream computing, but there's on aspect of the demo which failed to make quite as much of an impact: the "keyset," a five-key input device that was designed to have the user rapidly type out text by holding multiple keys down to create "chords." While the stenography-inspired keyset did spawn a few imitators, the most successful of which was the Microwriter, it didn't catch on in the same way as the mouse.
Shirriff has been lucky enough to experiment with an original Engelbart keyset, provided by his daughter Christina Englebart. As you might expect for a gadget built in the 1960s, the keyset lacks any kind of connector that could interface with a modern computer — so Shirriff built one, using a Teensy 3.6 microcontroller to read the status of the five switches and convert those to USB keyboard characters compatible with a modern Apple Mac.
"With five keys, the keyset only supports 32 characters," Shirriff explains. "To obtain upper case, numbers, special characters, and control characters, the keyset is designed to be used in conjunction with mouse buttons. Thus, the interface needs to act as a USB host, so I can plug in a USB mouse to the interface. If I want the mouse to be usable as a mouse, not just buttons in conjunction with the keyset, the interface must forward mouse events over USB. But it's not that easy, since mouse clicks in conjunction with the keyset shouldn't be forwarded. Otherwise, unwanted clicks will happen while using the keyset."
Shirriff's full write-up is available on his website; as for the keyset itself, while the write-up was typed using it the experience was perhaps suboptimal. "Engelbart claimed that learning a keyset wasn't difficult — a six-year-old kid could learn it in less than a week — but I'm not willing to invest much time into learning it," he admits. "In my brief use of the keyset, I found it very difficult to use physically. Pressing four keys at once is difficult, with the worst being all fingers except the ring finger. Combining this with a mouse button or two at the same time gave me the feeling that I was sight-reading a difficult piano piece."