I started using an Ergodox EZ with QMK firmware 6 weeks ago. I’m now proficient with this keyboard and will continue to use it every day, and I’m impressed with the build quality. However, the Ergodox has some drawbacks, some of which are by design.
I’m coming from using both the built-in keyboards on MacBooks, and the Microsoft Natural Ergonomic Keyboard 4000. In both cases, I perform software-remapping of the keyboard layouts in macOS, the Linux console and X:
- US/QWERTY physical layouts are remapped to Dvorak
- the physical caps lock key is remapped to control
Although I was happy with these keyboards and the Dvorak layout, I wanted to experience what all the fuss was about with mechanical keyboards. I like the Microsoft ergonomic keyboards, so I was looking for something similar with a split and tented/sculpted shape. I liked the idea of a columnar layout, too. And ideally I wanted a full-size keyboard.
Unfortunately no keyboards seem to fit these criteria simultaneously, so I gave up on finding a full-size keyboard. I liked the open source nature of Ergodox, but didn’t want to solder my own, so I got an Ergodox EZ with Cherry MX Blue switches and sculpted blank (Signature Plastics DCS, with O-rings) keycaps.
I should note that even though I wanted an ergonomic keyboard, I’ve never had RSI or pain related to typing, so my preferences may be very different from the preferences of people who have such conditions. Other factors that affect my experience: I learned to type traditionally (i.e. all 10 fingers with row-stagger), I’m not a super-fast typist (~100 WPM at best), I type many hours a day, and a lot of what I type is code.
The first annoyance with the Ergodox is that you have to learn a new layout, because it doesn’t have the same physical layout as a US keyboard. It appears to have been designed with a philosophy (BEAKL?) or certification constraint that keyboards with reaches (e.g. moving your pinky to hit return, or tapping the escape key) aren’t ergonomic. Depending on the row, it’s missing up to two columns on the right (where there’s only space for one key to the right of QWERTY’s ;), so you have some tough decisions about where to move the return key. It’s also completely missing the row where escape and the function keys would be.
The solution offered by the layout designers appears to be compensating for less pinky keys by having thumb clusters with 6 thumb keys on each hand. While the 2 large thumb keys on each hand feel easy for me to press, the smaller keys on the thumb clusters are biomechanically awkward (predominantly abduction instead of flexion). After years of training the dexterity of my right pinky and ring fingers on traditional keyboards, the thumb-cluster keys feel like a poor replacement for the missing pinky keys.
The nice thing about running QMK firmware is that anyone can create custom keymaps. There are thousands of Dvorak layouts alone in ZSA’s configuration tool. Trying to figure out which of these to try was overwhelming, so instead I built a new keymap myself.
You can play the tour for my keymap on Oryx. There were some limitations in the Oryx tool (e.g. limited macro lengths), so for an improved version of the keymap, checkout my QMK branch on github and build it with qmk compile -kb ergodox_ez -km p00ya_dvorak
. I tried to design something as close as possible to what I was used to: a QWERTY physical layout that gets remapped to Dvorak in software (on the computer, not the keyboard), with full-size keyboard features like a Numpad on additional layers. I found after a few days that I’d adapted to the differences between my Ergodox keymap and regular Dvorak, and could still switch easily back and forth to the MacBook’s built-in keyboard.
It was really challenging trying to find positions for keys like [, which simply don’t fit where they’d usually be, but are frequently used when coding. My aversion to the thumb clusters meant there were simply less physical keys to work with. However, QMK provides a neat solution for overloading key semantics (“dual-function keys”), such that modifier keys like shift keys can send other keys like [ when tapped. This let me fit all the essential keys for coding onto the base layer of the keymap, without any reliance on the awkward forefinger and thumb keys nearest the split. However, dual-function keys do have drawbacks, like increased potential for accidentally hitting modifier combos when typing. Ultimately the keymap I designed feels like a workaround for a lack of physical keys in their traditional positions.
The abundance of keymaps is a bad sign. While it could be interpreted as everyone having designed a perfect keyboard for their unique biomechanics and typing patterns, I think it’s actually a symptom of many people having to work around the shortcomings of the physical layout in slightly different ways. Otherwise I’d expect a few default keymaps corresponding to common archetypes of typists (language ⨉ for-coding ⨉ base-layout). Having personalized keymaps makes it harder to switch hardware: either when you need to use a different keyboard (common enough when switching to the built-in keyboard on laptops), or when someone wants to operate your machine (e.g. when providing tech support).
Moving the pointer is another pain point. While I agree that moving your hand to reach for a mouse is very disruptive, I can switch between the built-in keyboard and the trackpad on a MacBook with very little hand movement or disruption. Ergodox’s solution is to use mousekeys, but for most tasks this is vastly inferior to a well-positioned trackpad. I ended up positioning an Apple Magic Trackpad in between the thumb clusters of the Ergodox, but ironically the (already a bit useless for typing) thumb clusters make the trackpad harder to access than on MacBooks.
The shape of the Ergodox EZ makes my hands feel comfortably neutral. Even though I was accustomed to the concave/sculpted shape of the Microsoft Natural Ergonomic keyboard, I was able to replicate a similar supination angle using the tenting and the supplied wrist pads. The DCS keycaps and subtle column staggers do an adequate job of meeting my fingers at the right angles. The tenting using the default stops (no extra washers) feels solid with no flex or wobbles. After jamming a trackpad under the thumb clusters, I did have to get a bit creative by propping the lower-outer corners up with notebooks, but even this turned out pretty stable.
The choice of switches is independent of the keyboard itself (Ergodox EZ switches can be chosen at time of order, and can also be replaced after-market), but they were a huge part of the reason I switched keyboard at all. The Cherry MX Blue switches lived up to the hype of being interesting to type on. They also lived up to their reputation for being noisy, which I initially thought would be okay while at home in COVID-19 lockdown. However, they are more disruptive during video calls than I’d initially predicted. Another downside I wasn’t prepared for is that their force and travel profile frequently cause me to bottom out. Overall, the tactility and clickiness of the Blue switches wasn’t a revelation, and I don’t particularly miss the mechanical switches while using the butterfly switches on MacBooks.
It’s really cool that the Ergodox EZ “CIY” allows switches to be swapped out without resoldering, since I’m curious to try different switches. I’m tempted by tactiles switches like the Cherry MX Brown, Kailh BOX Brown, and Kailh Copper. These require less actuation force and have less pretravel than the Blues, which I hope will add some agility (and train me to bottom out less).
Update: I switched out the Cherry MX Blue keyswitches for Kailh Copper keyswitches, and they’re everything I hoped for. They’re quieter, too; comparable to typing directly on the MacBook, but with a hollow upstroke (which can be silenced).
The Ergodox EZ itself contributes a lot of noise to the sound of the keyboard. Any vibrations will cause the PCB to “ring” somewhere around 250Hz. Initially I thought this was “ping” in the switch springs, but after pulling all the switches out it can still be reproduced by tapping the case. There’s a lot of vertical space in the case without much mass or sound dampening, so it acts as a resonance chamber.
There is one more reason why the Ergodox has been significantly less comfortable than using the built-in keyboard on a MacBook. With ambient temperatures below 16ºC, my hands get cold while typing on the Ergodox. I realized they stay warmer while resting on the big aluminium heatsink that is the body of a MacBook. This difference would apply for any external keyboard, but it’s been surprisingly significant while working from home during winter.
In summary:
- Overall, I like the keyboard and I’ll continue to use it whenever I’m at my desk
- I think you can have an ergonomic keyboard without removing so many traditional rows and columns
- I don’t like the thumb clusters, because some keys are awkward to press
- I compensated for the missing keys by making my own keymap; seems like everyone else does too
- It’s possible to make a keymap that is similar to a traditional Dvorak layout, and therefore easy to learn
- Mousekeys suck; I use the Ergodox with a Magic Trackpad even though the thumb clusters are in the way
- Cherry MX Blue switches aren’t as compelling as I’d been led to believe
- The case has a noisy ring to it
- I miss the warmth of MacBook built-in keyboards