[ code. keyboards. terminals. cyber. ]


diy keyboard from scratch (I)


If you work with a MacBook Pro for quite some time, you will miss a "real" keyboard at some point. At first, you seem to be able to type faster on the butterfly keyboard, but you soon miss a clearly you miss a clearly noticeable key stroke or even the ESC key. So what is the alternative? The answer is simple - mechanical keyboards are the alternative. There are various suppliers who offer kits and want to have their price for it. Now this wouldn't be the NERDBUDE if I just bought one. So let's build our own mechanical keyboard!

SPOILER: This is the biggest "Rabbit Hole" I've fallen into in a long time.

1st Size

. Keyboard sizes are a dime a dozen. Before you think about which case, which switches, which keycaps you want, you should know what size keyboard you want:

Fullsize: The standard. Knows everyone. Had everyone already once in the hand. This is exactly the size that you can find in any office. but rather do not want to have.

Copact Fullsize: The CF has essentially the same keys as the Fullsize, only here the spacing of the keys are significantly smaller, which should make the keyboard "Compact".

80% (TKL / Tenkeyless): Still the normal keyboard layout like a Fullsize only without the numeric keypad.

75%: The basic layout of the Fullsize remains. Here, however, the cursor keys have moved to the left and integrate inconspicuously. The F-keys are still present and part of the special keys can be found in a column on the right edge.

65%: 10% less than 75% - means as much as no more F keys present.

60%: So what else can you leave out? Right Arrowkeys! So no more arrow keys at the 60%.

40%: Now it becomes slowly exciting. On the 40% keyboard, there are still the alpha keys (so the letters) and a few modkeys like Shift, Tab, Space, Ctrl, Alt and Del. But also the modkeys are significantly reduced. This is also the size for which I have decided!

2. layout

Standard: The name already reveals everything. The above office keyboard has exactly this layout. Slightly offset keys for comfortable typing. Nevertheless boring.

Ortholinear: Here the keys are arranged without offset - so clearly divided into columns and rows. Mostly all keys are the same size (no larger spacekey or similar) - This is what I opted for.

Staggered Column: Here the individual columns are offset in height, adjusted to the finger length. Offsets in the rows are mostly omitted.

Split Boards: To further advance the ergonomics could still divide the keyboard in the middle and adapt to the orientation of the hands. As with the split boards.

3. Switches

The switches are available in a wide variety of designs, pressure strengths, with/one LED, clicky, etc. Here times the types that are offered - in the Rabbithole you have to plunge yourself to find out which switches you want to have on your keyboard. There are various testers that are offered with which you can get an approximate picture of how the switches behave later on the keyboard when typing.

Buckling Spring: With the buckling spring switch, a spring is loaded by pressure on the key, which buckles and thereby actuates a switch. This type of switch is usually still found in old Microsoft keyboards.

Topre / Rubberdome: The Rubberdome Switch uses a cone-shaped spring which is protected by a rubber / silicone. When the key is pressed, the spring is compressed until contact is made between the key and PCB and the signal flows through.

MX: Everyone knows them - everyone loves them. Or something like that. MX switches have a straight spring inside which allows a clearly noticeable straighter path. Switched here on the side of the stamp which pushes between two contacts and when pressing the key connects both contacts.

ALPS: The classic is very similar in function to the MX Switch and differs only slightly in structure.

Now you can sit down at the rice board and start drawing. Fortunately, you don't have to as nice as it can be. Conveniently, there are tools for this. Online and compatible for any OS.

The Keyboard Layout Editor: LINK.

Here you can let your imagination run wild and even create completely custom layouts. Small tip in advance - best not on the colors of the keycaps versteifen since you have to find the keysets also still or let produce. Since you can leave tidy money.
Another function of the editor is the JSON file export. Whether you like the format or not, so you have the possibility to generate a CAD file to have the right template for the keyplate.

Who would have thought it also for this there is a tool:

Keyplate Maker: LINK

With this, most of the planning is already done. The next steps are to choose the material and the shape of the keyboard. Here, however, you are on your own if you do not want to take prefabricated cases.
For me it will be a simple case made of wood with a total height of about 19mm. The only thing you should keep in mind here is that there should still be room for the microcontroller in the case, otherwise the keyboard is without function and no one wants that.

The next part will be about the microcontroller and the software that will run on it.