Tour of split ergo keyboards
Pascal Getreuer, 2022-10-09 (updated 2024-08-10)
Thinking of buying a custom keyboard? Or got one and looking to leverage its features? Here’s a tour.
Ergonomic hardware
For typing comfort, I highly recommend a keyboard that is split, columnar, and with QMK or other programmable firmware. A couple examples are the ZSA Moonlander and Dactyl Ergodox:
Some other popular options are the Lily58, Sofle, and Corne split keyboards. There’s an extensive catalog of split keyboards at Awesome Split Keyboards.
What makes these keyboards so good
A split keyboard has separate modules for each hand connected by a flexible cable. This enables you to type with your hands comfortably at shoulder width apart and with wrists straight to avoid ulnar deviation.
A columnar keyboard has aligned columns of keys. This is in contrast to the row-staggered keys of conventional keyboards, a vestige of mechanical typewriters to make space for levers that connect each key to the type hammers that strike the paper. Columnar arrangement follows the natural direction of the fingers and helps reduce ulnar deviation in the left wrist.
A programmable keyboard is one where the function of each key may be reassigned, perform macros, and so on to adapt to your workflow. More on this in a moment.
Next-level ergo: DataHand-style keyboards
If you are seeking relief from typing pain, you may be open to an unconventional solution. DataHand-style keyboards enable typing without any wrist movement, extremely low finger movement, and light forces. While the original DataHand is no longer available, Svalboard Lightly is a modern evolution, with offers available as a prebuilt or self-print kit device.
Each fingertip remains in an individual key well, an adjustable cluster of 5 keys. The keys have a magnetic action that break away sharply, going from 20 g force down to about 8 g at the end of travel, naturally discouraging hammering key presses as the finger immediately senses the action of the key.
The minimized motion and light forces are a significant advantage for those suffering from tendonitis or carpal tunnel syndrome.
Where to buy split keyboards
The r/ErgoMechKeyboards wiki has a list of vendors that sell split and ergonomic keyboards, organized by region. You can also try r/mechmarket.
To give fair warning…
These keyboards are not exactly cheap, in the ballpark of $250 USD. This is an investment in your comfort.
Custom keyboards are often sold as kits that you assemble yourself. If you don’t want to do that, look for prebuilt keyboards or vendors with a build service to assemble a kit for you.
Typing on a split columnar keyboard takes some time to adjust, around a couple weeks for many people.
Ergonomic keyboards differ in placement of the thumb buttons as well as in the stagger and splay or the columns. You can use Splitkbcompare to make 1:1 prints for many popular keyboards to test how they fit your hands.
Keyboards often use cheap AVR microcontrollers, like the Pro Micro and Elite-C boards with the ATmega32U4 microcontroller. While they are enough to get running, AVR microcontrollers have a stingy amount of flash space, and you’ll need to be sparing in which firmware features to enable in order to fit in that space (see Squeezing the most out of AVR). If you have an option to use a better microcontroller, I’d recommend it.
Firmware features
Here are some highlight features of what a keyboard with QMK firmware can do, potentially boosting your comfort and productivity.
QMK is not strictly necessary. Other programmable keyboards have their own firmware features, and at least basic functionality is comparable. Or even with a regular keyboard, you can get some of these features in software with Kanata or KMonad.
(ZSA keyboard users) If you use the Oryx configurator, it is QMK firmware underneath, and most of these features are available in Oryx.
Multiple layers
Generalizing how e.g. holding Shift changes the number row to type symbols, you can define multiple layers and use “layer switch keys” to access them. For instance, a symbol layer is useful for programming. Never run out of keys.
Home row mods
The idea of home row mods is to put the modifier keys—Ctrl, Shift, Alt, Gui (Win key)—directly on the home row as mod-tap keys. This has the ergonomic advantage of reducing finger travel and awkward hand positions. In my keymap, I additionally put layer-tap keys on the home row to access the symbol layer.
The E key for example types “e” when tapped and behaves as Shift when held.
I was skeptical at first, but home row mods feel great now that I got used to them. As you might expect, there is a learning curve. See A guide to home row mods for a detailed explanation and Home row mods are hard to use for further tips.
Do more with each key
There are several additional QMK features to get more out of each key:
Combos – Hit multiple keys at once to produce a different effect.
Mod-Tap – Behave as a modifier when held, a different key when tapped.
Layer-Tap – Layer switch when held, a different key when tapped.
Tap Dance – Do something different when tapped vs. held vs. double-tapped…
Key Overrides – Override modifier-key combinations to do something else.
There are many options to facilitate your workflow!
Macro buttons
It’s possible to define a macro button that types multiple characters
when pressed. My favorite is a key that types ../
, useful
in the shell for up directory. See Macro
buttons for a collection of QMK macros and QMK triggers for further tricks.
QMK allows the user to write arbitrary C code to handle events. This is great flexibility. I’ve been having fun with this to write my own features as userspace libraries:
Achordion – customize the tap-hold decision
Autocorrection – run rudimentary autocorrection on your keyboard
Caps Word – modern alternative to Caps Lock
Custom shift keys – they’re surprisingly tricky to get right; here is my approach
Layer Lock key – macro to stay in the current layer
Mouse Turbo Click – macro that clicks the mouse rapidly
Repeat Key – an extensible “repeat last key” implementation
Sentence Case – automatically capitalize the first letter of sentences
Word selection – macro for convenient word or line selection
Closing thoughts
Have questions or curious to see more?—come to r/ErgoMechKeyboards.
Resources:
- Glossary – keyboard-related slang, technical jargon, and anatomical terms
- Links about keyboards – interesting links about keyboards and related topics
- KeymapDB – curated database of keymaps for programmable keyboards