Contents

Building a Custom Split Mechanical Keyboard

static/PXL_20220313_113552846.jpg

Backstory

My first mechanical keyboard was a black tenkeyless (TKL) Leopold Otaku with Cherry MX Browns (looks like this) that I was given in college by a friend. It was certainly an improvement over the low quality membrane keyboards I was using at the time (either on my laptop or otherwise). I used it for years, and was quite happy with it. Eventually, though, I started hearing stories about other programmers getting carpal tunnel from typing all day, so I started looking into more ergonomic solutions for my desk.

The common wisdom for ergonomic keyboards seemed to be to switch to a split keyboard, breaking the keyboard into two halves. This allows the halves to be spaced further apart than they would be with a normal plank, allowing a more natural shoulder resting position. Going to a completely split keyboard from my plank was a potentially large jump though, so some colleagues at work recommended I try the Microsoft Sculpt Keyboard instead. It’s a fixed-split keyboard that acts as a nice compromise between a full split and a full plank. Getting used to it took a while (especially with the keys in the middle of the keyboard), but after a week or so I was back up to full speed.

Unfortunately, the Sculpt wasn’t able to completely replace my TKL - I still needed the TKL when I played videogames, as I had more keybinds than fit on just the left half on the keyboard, and reaching over the fixed split on the Sculpt was just too awkward (and conflicted with my muscle memory). This resulted in me fairly regularly switching between keyboards - the Sculpt during the day, when I was working, and the TKL at night, for video games or other casual usage. There had to be a better way, some way to get the best of both worlds. Why not build it myself?

Requirements

After a few years of experience with a variety of keyboards, I had a few requirements (and nice-to-haves) I was trying to satisfy. This link from Kinesis goes into some detail about possible keyboard risk factors to consider as well. In no particular order:

  • Off-the-shelf, or with minimal assembly (I didn’t want to solder 100 switches)
  • Fully split keyboard (rather than fixed-split)
  • Duplicated middle keys on each half (i.e. Y column available on left, T on right)
  • Wireless (ideally with solar charging for better battery life)
  • Tented
  • Low profile (~2mm travel, like my beloved Thinkpad keyboards)
  • Printed keycaps (rarely needed, but occasionally useful)
  • Hot-swap key switch sockets (so I could try different switches)
  • 75%+ keyboard, with a function row and home/delete keys

The Contenders

I spent a lot of time looking through /r/mechanicalkeyboards and /r/ergomechkeyboards, as well as various other keyboard review sites, and came up with this (incomplete) list of some of the top choices, based on my requirements. They all have some interesting features, but unfortunately none completely fit the bill. Again, in no particular order:

  • Dygma Raise - split keyboard which joins together is a neat idea, but keys are missing (notably function row)
  • Kinesis boards - the “go-to” brand, but their boards are either fixed-split, or don’t have duplicated keys along the middle
  • Glove80 - seems to be the closest so far, but it’s pricey, and only a kickstarter project for now
  • Moonlander - has extra keys along the middle which could be mapped to whatever I wanted, and offers tenting and thumb clusters, but is missing a function row, and I wasn’t sure how I felt about ortholinear just yet
  • Ergodox - the “original” split MK, which has since been superseded by the Moonlander (AFAICT)
  • Dactyl Manuform - hardcore custom keyboard that could be sized to include all the keys I wanted, but I wasn’t sure how I’d feel about the key well, and didn’t want to spend the money soldering a keyboard to try
  • Other DIY boards like Mitosis - these all have too few keys

The Chosen One

https://cdn.shopify.com/s/files/1/1851/5125/products/image_1024x1024_2x_3ac41a98-5e21-4599-8a4a-ebe757301931_1100x.jpg?v=1621823219

Just when I thought I’d be destined to design my own keyboard, and sink hundreds of hours into the project, I stumbled up on Keeb.io in a /r/ergomech thread somewhere. They sold the Sinc as both a kit and a pre-built, with lots of customization options. While this didn’t satisfy all of the requirements I laid out above, it did meet a surprising number (or came close):

  • Off-the-shelf
  • Fully split
  • Bring-your-own MX stem keycaps
  • Customizable (soldered) switches
  • Many customizable key selections
  • 75% keyboard with function row and space for del / home key in the right column

The ones that didn’t get addressed, I ultimately decided I was okay with foregoing for now:

  • Wireless - At least the keyboard has USB-C!
  • Tented - I could design my own tenting kit, and 3d print it easily
  • Duplicated middle column, but the halves could be joined together if needed
  • Low profile - Could be mitigated slightly with o-rings, but sucks overall
  • Hot-swap switch sockets - I was comfortable enough my MX Browns to pick them

Of the things that didn’t get addressed, I was most bummed about the switches, but I figured I could live with MX Browns. After all, I had been using them on my TKL for years, and they were fine. I did watch this LTT video which tested a variety of enthusiast switches, but the MX Browns ended up winning the Tactile category anyhow. I’d heard that single switch testers don’t really do a good job showing the experience typing on a full keyboard, and I didn’t want to risk going with an unknown switch type for pre-soldered switches.

I ended up ordering the keyboard (Danny was super helpful), and sent over some MX Brown purchased from NovelKeys. It arrived a week and half or so later.

Experience So Far

Overall, I’ve enjoyed using this keyboard. I’ve been able to clear both the Sculpt and the TKL Otaku off my desk, so I’m finally down to 1 keyboard again, and my desk is significantly cleaner for it. I’ve also made the following mods:

  • Added O Rings, from here
  • Printed the case (enclosed, v2). Note that I also originally printed the top, and ordered the 16mm screws to go with it (which I should’ve done in the same order as the keyboard), but I didn’t like the color of filament I had available (silver), and there was a .4mm gap between the enclosure lip (which had a 2mm offset) and the PCB (which is 1.6mm) which was also annoying, so I just left it off.
  • Ordered these GMK / Cherry profile keycaps originally
  • Replaced keycaps with the GMK Red Samurai Clones from here. They came in surprisingly fast, so I only had the other keycaps on for a few days. This website was a great resource in picking a reasonable low profile shape.
  • Ordered 2 of these wrist rests

Future Improvements

While I’ve enjoyed this keyboard so far, and it’s certainly better than the dual keyboard life I was previously living, there’s still room for improvement, and other things I want to try. In no particular order:

  • Switching to low profile switches. The only options here seem to be the Kailh Choc switches, so until something else comes out it’ll have to be one of these.
  • Adding a trackball in between the two keyboards, like this Verge article suggests
  • Adding modules for thumb clusters, a trackball, a trackpoint, or a touchpad, like with the Ultimate Hacking Keyboard
  • Adding a custom screen and touchpad, like in this reddit post
  • Replacing the center and top supports with CNC’d wood (oak?) pieces, like this beautiful one
  • Adding some form of removable tenting, like the feet on the Moonlander / Ergodox
  • Going fully wireless (with solar charging), using either bluetooth (maybe with the nice!nano) or a dedicated radio receiver (probably some NRF module). Or, reversing the logitech unifying protocol and using one of those receivers?
  • Switching to a better wrist rest, ideally a leatherette material which doesn’t grab dirt as easily as the fabric. Also, taller.
  • Consider trying something like this to generate a more optimal keyboard spacing for my fingers. Perhaps base it on keylogging information, like with this logging and this parsing script. Maybe consider looking at Messenger chat logs to see how I normally say things instead, or maybe use a camera above my keyboard to figure out which fingers I use to hit keys.
  • This build has a really neat integration of the switch Joycon, plus a custom key layout. The final result looks really nice, and uses Kailh Choc switches.
  • This Reddit thread talks about trying to build a macbook-like keyboard, and has low profile switch recommendations.

Sources