The Ergodox keyboard is an absolutely fantastic design; I use it every day at my office. However, I like to work away from the office frequently, and I thought I might try my hand at designing something a little more portable. The great thing about assembling my Ergodox is that it taught be there’s really nothing magical about it; it’s just a piece of circuitry with a bunch of switches read by a microcontroller that speaks the USB HID interface.
The Atreus is meant to be complementary to the Ergodox as something smaller, cheaper, and more travel-friendly. The case measures 25x11cm and lacks even a number row, relying heavily upon the fn key. There is no PCB in this design, requiring a manual matrix wiring approach. However, given that there are only 4 rows and 11 columns, this isn’t as daunting as it could be.
I’ve seen a number of existing DIY 40% keyboard designs, but most of them stagger the rows, which I find very annoying now that I’ve gotten used to the columnar layout of the Ergodox. In addition, many of the designs I’ve seen waste a lot of room on the space bar, failing to take into account the fact that the thumb is the strongest and most versatile of the fingers. This design avoids both these problems.
Only a handful of punctuation marks (and no digits) available unshifted, and all the modifiers are on the bottom row.
q w e r t || y u i o p a s d f g || h j k l ; z x c v b || n m , . / esc tab fn shift bksp ctrl || alt space enter super pgup pgdn
The numbers and most punctuation are on the fn layer:
1 2 3 4 5 || 6 7 8 9 0 - + ( ) = || / [ ] { } ! @ # $ % || ^ & * ? ~ || ` _ \
I type in Dvorak but prefer to do the remapping in software rather than hardware so I don’t have to change layouts when I switch to my laptop’s internal keyboard.
This layout has five modifiers and 37 non-modifiers.
I strongly prefer the feel and sound of tactile Cherry MX blue switches for typing. However, I like having linear switches on the modifier keys (ctrl, alt, super, shift, and fn). Cherry MX red switches are nice and light but are expensive and difficult to find. Cherry MX black switches are cheaper and easier to source, but may be too heavy, especially for keys under pinky fingers.
One trick is take the springs from some of your blue switches and trade them with the springs from your black switches. The blacks then become the equivalent of reds, and the blues become MX green switches, which are a heavier variant of blues. These are typically used for space bars on boards that otherwise use blues. They could be suitable for non-modifier thumb keys like backspace, space, and enter.
In order to avoid ghosting, each switch needs a diode.
An Arduino Micro or Teensy 2 is recommended. Be sure to get one without headers so it will fit in between the bottom layer and the plate.
This DSA-shaped base set from Signature Plastics has 52 1x keys plus a few extras we won’t use. It claims on that page to contain only one deep key, but my shipment contained two, which I put under the index finger keys to help guide your hands without looking.
Seven M3 machine screws and nuts hold the whole thing together. The length of the screws depends on the thickness of the materials you use for the case.
Layered laser-cut acrylic; see .
The first two shapes in the case file are the top and bottom covers; these should be cut on 3mm acrylic (black in the photo). The third is the spacer that goes under the fourth, which is the plate on which the switches are mounted. These should be cut in 6mm, especially the spacer, which needs to be at least as thick as the micro USB cable you connect to the microcontroller.
On a 100W Epilog laser, the 3mm layers cut in about a minute and a half. I did a run with 6mm acrylic of the other layers which took nearly 6 minutes.
My fork of the tmk firmware has support for the Atreus layout. Currently only supports software-dvorak–the default layer is all qwerty, but the punctuation keys send keycodes assuming that the qwerty->dvorak transformation will be applied to them, so they don’t make sense otherwise.
- 37 MX Blues @ $1.00
- 5 MX Blacks @ 0.80
- 42 diodes @ $0.052
- Base keycap set: $18.00
- Teensy 2: $16 OR Arduino Micro: $25
- USB Mini cable: $1.94
- Acrylic materials: $11
- Acrylic laser cutting: 6 at $3/min (varies by thickness of acrylic)
(+ 37 (* 5 0.8) (* 42 0.052) 18 16 1.94 11 (* 3 7.5))
-> $112.62 plus tax/shipping
- Digikey (switches, diodes, arduino?) US shipping: $5.32
- Signature Plastics (keycaps) shipping: $8.00
- PJRC (teensy) shipping: $3.03
There are a few ways to get the cost under $100. Using all black switches brings it down, but I strongly recommend against this unless you’re already familiar with the feel of the various Cherry switches. Using wood for the case will reduce both the materials cost as well as the amount of time needed to cut the case.
Replacing the colored acrylic with transparent might also save a few dollars. You could also use thinner acrylic for the switch plate too; I cut mine in 4.5mm. A thinner spacer is inadvisable; even with 6mm it’s pretty tight.
Copyright © 2014 Phil Hagelberg
Released under the GNU GPL version 3