## Keyboard.io Model 01

A few people have asked me to write up a review of my Keyboard.io Model 01 now that I’ve had it for a little while. Here are my thoughts.

First, some backstory. I have used computers my whole life, and ever since the age of 19 I’ve had quite a bit of trouble with chronic wrist pain. This has only gotten worse over the past 20 years. I have tried all sorts of keyboards, from various mechanical keyboards such as from Filco, to ergonomist-recommended split keyboards such as the Kinesis Freestyle, all the way to incredibly exotic weird-as-heck things like the Datahand and ErgoDox. All of them had pluses and minuses, but ultimately none of them really let me escape the orbit of horrible wrist pain; almost universally, their design flaws would end up ultimately making it worse than it was before and I’d end up going back to a more-traditional Filco 10keyless.

A few years ago, I found out about the Keyboard.io Model 01 via Kickstarter, and I liked many of the design choices made in it. As I was working full-time at the time, I went in for a two-pack, one for home and one for work; two and a half years later after quite a few setbacks and difficulties, the first batch finally shipped and I received my first keyboard, with soft-touch keys.

The out-of-box experience was simply okay, but the default keyboard layout left a lot to be desired, with shift keys that required quite a lot of extension of my thumbs, exacerbating my DeQuervain’s syndrome, and several keys set up in less-than-ideal configurations.

Fortunately, the software for the Model 01 is entirely opensource, and over time I have tweaked the layout to my liking. In particular, I rearranged the thumb-cluster modifier keys, I replaced NumLock with a dedicated backslash-and-pipe key, I swapped backspace and tab, and I made the led key require holding down Fn to activate, and only set it to turn the backlights on or off rather than cycling through the dozen or so default patterns. The butterfly key also became a second Cmd key, which helps greatly on macOS. (My customizations fork, should you want to adopt it, is available on GitHub.)

While the first keyboard was great – and I mean, my wrists have felt better than they have in a long time – it wasn’t without its problems. The first batch was plagued with some manufacturing issues, including key chatter, which I encounter regularly (Jesse provided me with a temporary solution which clears it up for a few weeks at a time, though) and several other backers reported quite a few other defects, none of which I experienced, fortunately. Also, remapping the layouts is currently an ordeal, as you have to install the Arduino SDK and modify the keyboard’s C++ code directly – not for the faint of heart.

Fortunately, Keyboard.io has a community of people working to improve the keyboard, and there are folks working on easier layout editing tools and also improving the debouncing and anti-chatter logic in the firmware.

Just today I finally received my second keyboard, with the clicky-touch keys. Because of the massive difficulties Keyboard.io had with their first manufacturing partner, they switched to some other manufacturers with better quality control processes. So how does the second-batch keyboard hold up?

The finish on the keys feels a bit softer and more matte and satiny. One isn’t better than the other; they’re just different. The switches themselves feel a lot stiffer, with a somewhat higher actuation force than the Cherry MX Blue, and some of them seem to stick a bit more than others; in particular, my M key takes a lot more force to activate than its neighbors, and the Z and X keys could be a bit better as well. I definitely like the soft-touch key switches better. However, both key actions feel great, aside from the switches that bind on the clicky keys. (This was enough of a defect that the keyboard.io folks have kindly agreed to RMA my keyboard and replace it with another one which hopefully won’t have that issue.)

However, the clicky keys are incredibly clicky – they are about 10x as loud as the soft keys, which in turn are a bit louder than Cherry Browns! They’re also a lot stiffer in general than the soft ones. I feel like the soft-touch keys have about the same actuation force as a Cherry Blue; the clicky ones feel more like a Cherry White. So, at least to my preferences and particular wrist issues I would absolutely recommend the soft-touch keys, which still feel every bit as great as a Cherry Blue while also being somewhat quieter. (But still not, like, silent by any means.)

Setup on the second keyboard was of course much quicker, as I was able to upload my customized firmware directly onto it rather than having to go through the same setup process. So, that’s nice.

These keyboards aren’t perfect, though. The palm-rest areas are kind of awkwardly-shaped and aren’t quite big enough to put good gel palm rests onto, and the palm rests I use make pressing the Function keys a little more difficult, which is unfortunate with how many common keys living on the Function layer. I’m experimenting with a few different palm rests, and so far haven’t found any good solutions. The next thing I’ll try will be cutting some neoprene out and then sewing some felt to it, stuffing it with a bit of polyfill or the like. More on that later, I suppose.

It would also be nice if the adjustable tent bases were easier to orient, and if they were a bit thinner; ideally I would have the keyboard halves low enough that they just barely touch my keyboard tray, so that I can have the keyboard as close to lap-level as possible. Several people have used mini camera tripods to prop up their keyboard halves which is fine for a standing-desk configuration, but I definitely prefer sitting for a lot of my activities. Unfortunately, the flat configuration causes a heck of a lot of pronation, so I really need tenting. At some point I will probably just try 3D printing some wedges for them to sit on, probably using the factory bases’ screws. If I do I will of course opensource them.

Also, some of the chording necessary for some punctuation is a bit weird. As I said above I already remapped the numlock key (which I don’t use) to a more traditional \| key, but also dealing with braces and brackets as a programmer is a little weird, especially since <> still live on the shift key but {}[] now live on the Fn key. It’s a weird cognitive thing that’s hard to get past. Not impossible, but it’s weird.

Switching back to a regular keyboard is also really tricky now. Fortunately, I have this second keyboard now, and so I can just take that with me wherever I go. Hooray!

Anyway! While the Model 01 isn’t a perfect keyboard, it is by far the least-bad one I’ve ever had. Oh, and it’s worth mentioning that after just a month and a half with it, I was already typing at 112WPM:

So, even with all its faults I am very happy with this keyboard and hope that the “heirloom-grade” thing turns out to be true.

Oh, also, Jesse Vincent has been absolutely amazing through everything. He’s been very helpful and friendly and incredibly responsive (and patient!) when it comes to my various bug reports, complaints, and niggles. A+ would support again.

### Update 1 (February 21, 2018)

I ended up making some wristpads by cutting out sections of a cheap foam mousepad that I didn’t need, and then hotgluing some felt to it with some polyfill in between. This seems to be pretty comfortable for now; hopefully that works out in the long run.

Also, here is a more intensive comparison of the various keyboard.io audio levels along with many of my other keyboards.

My main takeaway from making that video: dang I have a lot of keyboards. (That wasn’t even all of them, and that’s after I donated a LOT of non-mechanical keyboards to charity a year ago. Like, literally a couple dozen of them. I… might have a problem.)

### Update 2 (March 13, 2018)

I ended up designing a 3D printable tenting stand that works way better than the included spider stands. (I’ve heard of other people just getting some \$1 doorstops and taping them to the back but that’s not as much fun.)

Also the wrist pads slid around too much but I found that putting a loop of painter’s tape underneath makes them stay in place without it marring the surface finish (at least, so far).

### Update 3 (May 15, 2018)

It’s worth noting that even the best keyboard on the planet doesn’t stop me from injuring myself through overwork. So I’m still ramping up the intensity of my typing breaks breaks and figuring out how to protect myself from myself. Fortunately, Time Out has gotten better about keeping me honest with my breaks as well.

Also, recovery feels easier this time around, so that’s good.

### Update 4 (June 26, 2018)

The space key switch on my replacement later-run keyboard ended up shorting out. A quick fix got it going again for a few days but then it failed again. But this is the first time I’ve had a keyswitch outright fail and I’ve had a lot of keyboards so I assume I was simply overdue.

Still, I’m feeling like this keyboard is still in a state where you have to really love keyboards (and tinkering with them) to make it worthwhile. Chances are if you’re reading this article that does describe you, but it’s still something to be aware of – this is not a keyboard for the faint of heart or for someone who simply wants to plug something in and have it working. You’re making an investment in your future of typing.

And on that note I’ve been having some pretty severe chronic pain lately, although it’s different than how it’s been while active on other keyboards, and so I think I need to figure out a new mitigation strategy for when things do flare up. On the plus side it hasn’t been DeQuervain’s which is usually the first thing to happen when I do have a flareup, so I’m calling these thumb clusters a win overall. I suspect I need better wrist pads than the arts-and-crafts hack, just because when I rest my hands on the palm supports that seems to be where I feel all the weight right now.

I’ve had a few folks ask me in other places what that 10key and trackball are. The 10key is a Jelly Comb Numeric Keypad, and the trackball is a somewhat-modified CST Laser, which also comes in red now, apparently. I don’t know if the red one has this problem but the blue one tends to shine right into my eyes with an amazing level of focus, which I solved by sanding/frosting the ball to diffuse it somewhat and by applying some black permanent marker to the LEDs inside to dim it.

I don’t use the number pad much (I only got it for Blender) but the trackball is quite good.

Oh, and people haven’t asked but the tablet above it is a Wacom Intuos Pro mounted on a custom-printed tablet stand. There’s also a newer version of the Wacom.

### Update 5 (February 6, 2019)

Wow, I’ve been using these keyboards as my main ones for well over a year now. Time flies!

A bunch has changed in the landscape; for starters, the company was having too many problems with the clicky keys (and I ran into these problems too) and they eventually ended up swapping my clicky one for a second soft-touch keyboard. I never really liked the feel of the clicky one anyway so I think I’m better off with this setup.

Also, after some rather interesting shenanigans my blank keycaps finally arrived! Originally I was planning on only replacing the keys where the labels differed from my layout, but I got an itch in my brain and decided to go all out:

So, since my last update, Chrysalis, the layout and color map editor, has come a long way, and is actually pretty usable and decent now. And the firmware has gotten to a point where it’s pretty stable! So, rather than having to constantly bang my head against an ever-changing firmware and build process, I can just edit my layout and color scheme in a GUI. There’s still a bunch of rough edges (and at the current moment there’s no way to export a layout to transfer it to another keyboard, but they’re working on it) but yeah, this keyboard is actually getting to the point that you can customize it without being a total nerd.

Oh, also, regarding the overly-bright LEDs in my trackball, I modded it with color-changing LEDs:

Anyway, having the unpainted key caps has also made it easier for me to get over the mental block of having a bunch of keys differ from their labels, so I finally have dedicated [ and ] keys again. Although I suspect I’ll keep on using the fn-O and fn-P combinations for a while since that’s what I’ve gotten used to. (Also, cmd-fn-U and cmd-fn-I end up being way more ergonomic for switching tabs anyway.)

There’s still a lot more tweaking I want to do and I’ll probably end up still using custom firmware for various things (but at least making custom firmware Chrysalis-compatible is fairly straightforward – mine already was after my last update, even) but I am pretty heckin' pleased with this thing right now.