Main Content

This custom keyboard was created to speed up my 3D CAD development. My 60 most used commands are now just a click or two away. The keyboard is fully customizable, uses standard components and is easy to replicate since it does not use a PCB, instead everything is 3D printed using the 3DPCB idea.

Features
33 keys (5×6+3)
Easy to customize (printable keycaps with laminated paper inlay)
Anyone can build it using a 3D-printer (FFF/FDM), common components and a soldering iron.
QMK firmware (allowing advanced keyboard layout)
Replaceable keycaps – twist and release
Using common 6x6mm TACT switches
Anti-ghosting using 1N4148 diodes
No PCB required (everything is 3D printed)
Low activation force (depending on switches)
Ergonomic – half size keyboard enables shoulder width position of hands.

Bill of Materials (BOM)
1x Arduino pro micro (or clone)
33x 6x6mm tact switches (low actuation force)
33x 1N4148 Diodes (can be omitted, with risk of key ghosting when pressing multiple keys)
Strands of 0.3mm copper wire (from RK Cable)
PLA for 3D printer
Micro USB cable
Development
I realized that I frequently use the same commands when I am designing different things (like e.g. this project ;) in Rhino 3D. I tested custom keyboard shortcuts and tried to memorize them, but without much logic it was difficult to learn if revolve was ctrl+shift+7 or ctrl+alt+7 etc. With a custom keyboard, I could design the keycaps to show the most frequent operations. As my right hand is controlling the mouse, I wanted the keyboard to be left-handed and only half the size of a normal keyboard. This allowing the hands to operate closer to each other which results in a more ergonomic working position. I started to take notes on which operations and keys that I used most frequently. Then I grouped them in different categories, like select, curves, surfaces etc. I started with two different functions per key, but realized that three operations were more logical for some keys.

I did my homework and studied tons of different keyboard solutions, both off-the-shelf solutions, but mainly custom mechanical DIY keyboards. I decided to position the keys in an ortholinear layout, allowing the fingers to move up and down instead of the common staggered layout. It improves the visual appearance and some say that it is better ergonomically.

With an estimate of how many keys I needed, and the number of operations per key, I started to design the keyboard. By now I have built several projects using the 3DPCB design, and a keyboard is perfectly suited for this technique. I started to design the keys around standard Gateron/ Kailh/ Cherry MX mechanical switches and did a single key prototype print.”

Link to article