Tom Claessens

Building a mechanical keyboard

My first encounter with a mechanical keyboard was during high school, when taking typing classes. However I knew no one at that time who had also a mechanical keyboard at home so I only owned rubber dome keyboards in the past and had my fair share.

When I got my first computer, every computer case, monitor and peripherals was the same beige color. In 1997 I upgraded to the Microsoft Natural Keyboard Elite.

Fast-forward and I’ve owned keyboards from Corsair, Logitech and Razer. Still being a casual PC master race gamer, I decided to buy a Cherry MX Blue Cooler Master Quickfire TK keyboard.

I like the feedback of the MX blue switches but tinkering with the idea to actually take the keyboard with me to work, I assume it’s only a matter of time before they force me into a sound-proof room. So I started to look into alternatives and quickly discovered MechanicalKeyboards subreddit and forums like Geekhack and KeebTalk. Apparently, besides just buying an off-the-shelf product you can actually build a mechanical keyboard yourself!

Mechanical keyboard with brass plate and tealios v2 switches exposed

Why?

Options. The benefit is that you get to choose among so many parts, the possible configurations are endless. First and foremost, which form factor do you prefer? Full size, TKL (TenKeyLess), 60%, 40% or in between formats like 65%?

Depending on the size, you also need to select a case. Do you prefer top mount or tray mount? Do you like plastic cases, do you prefer metal ones like aluminium or perhaps wood? PCB mounted switches or plate mounted switches and if you want a plate, what kind of material - plastic, aluminium, brass, titanium, etc.

PCBs. Your plate and case define the kind of PCB you can use but again, options. The color of the PCB, LED lighting for keys, LED lighting, underglow lighting, micro-USB or USB-C, hot swappable switches or not, etc.

Now imagine all the possibilities listed above and we haven’t touched on the most personal aspect of it all: keycaps. Keycaps allow you to really make your keyboard your own. Different materials, different sets, additional sets, novelty keys, … you can mix and match. Choose blank caps, or ninja printed ones.

Again, options. The best part of it all is that nothing is set in stone. You can start with a specific case, but you might upgrade in the future to a different case, a different color. If your PCB is hot swappable, you can easily switch to different switches or even modify your current switches (lube them, dampen them, change the spring, change the stem) or simply replace your keycaps.

Necessities

Besides a screwdriver with different bits, depending on your needs and chosen layout, you also need:

  • Lube
  • Small brush

Only necessary on non hot swappable boards

  • Soldering iron
  • Solder
  • Soldering wick (or solder pump)

Parts

I briefly touched on the different parts of a keyboard but here is a more in depth explaination why I opted for the chosen design/layout and all the different parts.

Group buys

I think it’s important to add that the community is relatively small. Manufacturers and individual members of the community launch new products often as group buys. This means that you have to sign in and pay upfront before production started.

Production runs are often limited. Cases, keycaps, PCBs are often only available through these so called group buys or in very limited quantities after launch, which is a bummer if you happen to like a particular case you’ve seen someone build. It’s most likely that the case and the used keycap set is no longer available.

Your best options are keeping an eye on the forums and discord servers. Users and manufacturers often announce new products, product re-runs on these channels. This allows you to join the group buys.

Some manufacturers, like KBDFans have limited stock of several cases and PCBs at affordable prices. Remember, while not cheap, the quality and level of customization is something you simply can’t compare to off-the-shelf products and its something you created by yourself.

PCB: DZ60

The KBDFans PCB is actually one of the few components that’s readily available without the need for you to wait for the group buy to finish. That’s one of the reaons why I choose this PCB.

It also offers the 60% layout I was after and allows for multiple configurations within the 60% keyboard size.

Plate: brass

I opted for brass purely on aesthetic reasons first. After reading more up on it, it also changes the sound profile of bottoming out your keys. Common choices are poly carbonate, steel, aluminium, brass and even more exotic materials like carbon fiber are available.

Switches: Tealios v2 (lubed)

Besides the plate and the case material which define partially the typing sound because of sound resonance on of the most important, if not the most important components are the switches.

I’m using tactile and loud Cherry MX blues but I wanted something completely different, so I went with linear switches instead. I also decided to lubricate them with Krytox 205g0 to even further increase the smoothness of these switches.

Stabilizers: Zeal transparent gold plated PCB mount screw-in

Stabilizers, or “stabs”, are used under larger keys to stabilize them. Longer shift buttons, enter/return key, space bare and numpad keys (if applicable on the chosen layout)

Case: Grey aluminium 60%

The plastic variant is a lot cheaper but just picking this keyboard up. with the weight of the aluminium feels premium and sturdy. With the rubber feet it doesn’t matter how hard you type and hit those keys, it’s not going to go anywhere. Besides the grey color is as neutral as it can be, offering a wide range of possible keycap pairing.

Keycaps: Maxkey SA Green & White

I do like the color scheme but I must admit, it was primarly chosen because it’s one of the few keycap sets available right now without any delay. The SA profile reminds me of a different era. It requires some adjustment to getting used to.

This is only a temporary keycap set until GMK Ursa is released. Or Apollo. These will go into group buy shortly but won’t arrive before March 2020.

Building a mechanical keyboard

Completed mechanical keyboard with SA profile keycap set

Gather all materials and parts

This often takes most of the total construction time. Even more so if you joined group buys for keycaps for instance. First they do an IC or interest check. If enough traction and enthousiasm is generated, the IC is transformed in a group buy. When the MOQ, minimum order quantity, is reached, production can start. But the seller also has to tackle other things as well: prototyping (the IC often only includes 3D renders), packaging, quality control, shipping.

For instance the GMK Ursa keycap set was posted on KeebTalk on September 9th, 2019. The group buy procedure launches on November 19th, 2019. That’s two months of interest check. The group buy, often shortened to “GB”, often runs for two weeks. Factor in the production, etc. and I don’t expect these keycaps to arrive before 2020.

Testing

After you received your packages, it’s time to do some testing first to make sure your PCB works. This allows you to RMA your PCB if it’s DOA (Death On Arrival), or if something malfunctions. It also allows you to troubleshoot afterwards. If all keys are working during testing but no longer after you soldered the switches, it’s an indication that you did something wrong.

To test the PCB, simply connect it to your computer and use the KeyboardTester website to validate your board. Another great tool is called Switch Hitter but requires software installation.

Simply test by shorting the switch contacts with a pair of tweezers on the PCB.

Lubricating and installing the stabilizers

The first step of this build is to lubricate the stabilizers. A popular solution is to use dielectric grease but I just used the Krytox grease I used on the switches. It’s important to apply enough grease, as this will make the stabilizers smooth and prevent rattle but too much grease will make them sticky, which is undesirable.

Lubricating the switches

Switches can feel a bit rough when they’re fresh out of the box. For this reason and for absolute smoothness, people lubricate the switches. That includes the stem, housing and springs. With lubing, less is more because too much lubricant will turn the switch mushy.

One of the best visual guides available is that of Taeha Types on How to lube MX switches with thin lube.

Installing the switches

Depending on your keyboard setup you have different mounting options such as plate or PCB mount. The Tealios v2 switches are PCB mount. This means that they can be soldered on to the PCB without the need for a plate, if you wish to do so. If your PCB does not support PCB mounted switches, depends if there are two small holes next to each bigger hole for the switch mount, you can always cut these little prongs from the switch housing.

For my setup, I mounted the corner switches on the plate and then put them onto the board. I think soldered these switches in place, the two contact leads, before I put on all the other switches and soldered them.

note: it’s helpful to already have the keycap set you’re going to use so you can figure out the exact placement of the keys. I did not and based the position of the switches on the keycaps of my old keyboard. Because the PCB has different configuratons I managed to solder three switches in a wrong position. If I had the correct keycap set from the beginning, this wouldn’t have happened.

Soldering

I never soldered before but with enough patience and focus, it’s not that difficult. Not every solder joint is perfect however before mounting everything together, after soldering the switches, I tested the PCB and all switches registered.

I watched component soldering on Youtube and dove straight in. If you’re planning to solder in the future, I’d suggest you invest in a decent soldering station as it allows you to set the temperature. I set mine to 360 degrees Celsius. However if you are only building a single keyboard, any soldering iron will get the job done. Just make sure you don’t put too much heat on the soldering pads for too long and you’ll be fine.

Programming your mechanical keyboard

The KBDFans DZ60 uses QMK firmware which has a visual configuration. However because I wanted some special key functionality known as tap modifiers, I decided to download the firmware and build my own layout from scratch, then compile and flash the PCB.

Flashing the PCB is done with the QMK Toolbox.