Inside Twiddler 2.1

I got myself a new toy – a chorded keyboard called twiddler. The more appropriate term, according to Wikipedia is keyer, since it has no “board” as such. The idea behind it is that you don’t actually need all the keys a regular keyboard has if you press more than one at a time. It looks like this:

twiddler 2.1

As you can see the white labels wore off, on the first day actually, but you don’t need them that much anyhow because they’re facing away from you while you type. What you can not see in the photo is that it also has a small joystick at the top (providing mouse functionality) + function 4 buttons (Ctrl, Alt, Shift and toggle number input). I decided to take it apart to see who’s doing the smart work:

twiddler 2.1 opened wide

Much to my content, it’s Atmel’s AVR with built in USB controller, at90usb646:

twiddler 2.1 mcu, at90usb646

There’s also 16Mbit flash, at45db161d:

twiddler 2.1 flash, at45db161d

The front keys are pretty much micro-switches:

twiddler 2.1 front switch array

And here’s the thumb board:

twiddler 2.1 thumb board

There are two smd ICs underneath, HC165 – the parallel-input/serial-output shift registers. They are most likely daisy-chained, and used to shift in the states of the buttons and the joystick over SPI, a very neat trick to save the IO pins. Here’s a joystick closeup:

twiddler 2.1 thumb joystick

And here’s how it fits into hand, to give you a sense of scale:
twiddler 2.1 held in hand

Basically, it’s difficult to learn to type with it. It takes some spirit. You can get the key mappings here: I also think it’s slightly overpriced at $200, but I couldn’t let it go. On the open-source side, there’s spiff chorder, check it out (some stupid warning about the SSL certs comes up).