Hairy Sun

Matt's Blog on Some Geeky Topics

Revisiting the ErgoDox

I purchased and built an ErgoDox keyboard over a year ago. I thought it would be good to revisit that since I get asked questions about the keyboard every now and then.

What is an ErgoDox?

The ErgoDox is the Voltron of keyboards-a combination of open source hardware and software, that when combined with a little elbow grease from the user becomes a powerful keyboard. That description is not too far from the truth. There currently is no way to buy a complete ergodox keyboard, one must purchase (and assemble) the parts piecemeal or buy a kit from a company such as MassDrop.

What is it?

To be more precise it is keyboard that has the following features:

  • Split keyboard halves - There is a piece for the left hand that is completely independent of the right hand piece. This allows a good deal of flexibility in fitting the keyboard to an individual. I can position the pieces close together to emulate more traditional keyboard configurations, “tent” them for a more natural feel, or place the wider apart. My current favorite is to have them about shoulder width apart. To get an idea of what that would feel like, place your hands on the outside edge of a 13-14 inch laptop. I really like that positioning currently, though was tenting with about six inches between previously.

There is even an open source project for tenting it.

  • Matrix layout - The (finger) keys are oriented in columnar fashion, unlike normal “staggered” arrangements that are oriented in a slightly up and to the left manner. Other than staggered layout being the norm, I don’t see how anyone could argue that it is ergonomic in any way. There is some hardcoded vertical offset of the columns but it seems to work for me.

  • Thumb clusters - Both pieces have a cluster of keys for thumb use. Most people only type with one of their thumbs, which is a shame. If they do use both thumbs they are likely using both for the same key. I don’t know that pianists do this? On my keyboard I’m using Control and Meta on the left thumb (emacs user here), and Enter and Space on the right.

  • Mechanical Switches - Mechanical switches such as the Cherry switches are rated at 50 million presses before failure. They also have switches with different mechanical properties-activation forces, tactility, and sound. Having broken cheap dome switches, it wouldn’t make sense to invest the time and cost to build a keyboard only to have the switches fail in a year.

  • Open Hardware - On that note, the hardware design is completely open, I could replace a switch, or teensy microcontroller if I needed to. This is empowering in an era where hardware is disposable.

  • Open Software - The firmware is also customize-able, in fact requires it. Indeed, the lack of labels on the keys (at least in the MassDrop kit) and having keys that exist in positions that do not occur on traditional keyboard layouts encourage some thought about what an ergodox layout should look like a particular user. There are now two main firmwares for driving the keyboard. The traditional fw, and the tmk fw which has been ported to support the ergodox (and provides features such as macros and USB mouse emulation). Both fw’s have the notion of “layers”, where a new layer be it qwerty, colmak, dvorak, custum gaming layout, or programming layout can be turned on with either a chorded keystroke or a toggle. MassDrop has even gone so far as to provide a web gui to customize and share layouts (though it is lacking at providing the complete power of the fw and is not open source).

Status

I originally bought a single keyboard to use at work. I found that I enjoyed it so much (or at least convinced myself that I did), that I purchased another keyboard for home when the second MassDrop buy appeared. I liked having a backup and at the time wasn’t sure that there would be an easy way to buy one again. (In reality MassDrop has put them on sale every few months). Both have the smaller case that lacks the built-in wrist rest. My original purchase has “blue switches” (tactile with sound) as I was coming from a Unicomp Buckling Spring keyboard. The second has “clear switches” (tactile with less sound) so as to not annoy the wife so much with the clackity clack.

Construction was pretty straightforward for a soldering newbie like myself. It took about six hours to get the 100 or so parts attached to the first board. It then took a while to debug and fix a few of my connections. I thought the second would be done quicker and indeed I proceeded at such a fast pace that I put half of the diodes on the wrong side (the PCB is dual sided and I wasn’t paying enough attention, or it was really late at night…).

Being a kit there were a few niceties that were lacking. I added rubber bumper feet to the bottom, purchased “nubbed” locator keys, and bought a mouse wrist rest for each side. I also wish that the TRSS cables were a bit longer to allow for more placement experimentation.

From a few days in my layout has been the Norman layout. I grew up typing on computers with qwerty, and felt comfortable with it. Given that I was going ergonomic, I thought that it made sense to go to a more ergonomic key layout. Because the fw is in the keyboard, I can plug it in and start typing on any computer with a USB port. No need to install software. I always thought I would add a qwerty layer, but have never got around to it.

In addition I have a USB mouse emulation and arrow layer and a programming symbols layer. These last two are newer as I recently migrated to the tmk fw. I use them a bit, but have not been fervent about using them. I normally place a mouse between the halves.

If there were more time in the day I would optimize it more. I have loaded up some of my work into some Pandas dataframes to view how my key frequency compares to standard frequencies. Coming up with a layout is always a compromise and could involve endless tweaking.

Norman was painful for the first week. The second week was just slow, and after that I seem to have adjusted ok. I don’t know that my typing speed has improved any over qwerty, but that wasn’t my goal. I did do some online Nitro Racer typing races for a bit, but after a month or two left it at that. My qwerty is ok still. It has suffered, but I can switch back pretty painlessly. My original intent was to treat the new physical layout as a new “instrument”, say guitar vs bass, and I think it has worked.

The blank keys help during the learning phase in that they discourage looking at the keyboard. They also provide some obfuscation to onlookers who might want to see your password, or prevent your kid/wife/anyone else from using your computer (my tiling wm already did this though). I find that the locator (ie “nubbed”) keys were required for my hands to locate themselves correctly.

I have also created a case to carry it around in. It is fashioned from a small plastic (pistol?) case with foam cut to the shape of the halves. My biggest concern is not transportation of the keyboard per se, but the insertion and removal of the connector cables (TRSS and micro USB) every time I move it. Some in the geekhack forums have complained about faulty TRSS connections.

Miscellany

I know of at least one co-worker who has an unassembled kit sitting around for almost a year now. Another buddy claimed that column orientation threw him off (but then he went off and put Norman on a staggered layout!). Keyboards can make you do wierd things.

Is the ergodox the perfect keyboard? No. It is hard to even acquire. You need to wait for a MassDrop buy, or purchase parts piecemeal. And then there is the cost. It isn’t cheap-$250 for parts plus time to build, customize, and program. Even though it is pretty ergonomic, Kinesis and Maltron users with “well” keyboards tend to really like the wells. And the thumb cluster location is also hardcoded which throws some people (indeed I only frequently use two thumb keys out of six on each hand).

There is also an onramp time for both physical position of keys and layout of the symbols/letters that are in a non-standard location.

Also inspiring is Phil Hagelberg’s keyboard that he constructed after making an ergodox. One would hope the combination of smarts and 3D printer’s would allow for truly custom keyboards in the near future. Do I regret my purchase? Nope, and I don’t know that there is another keyboard out today that I would consider over it.

Comments