Ultimate Hacking Keyboard

A fully programmable, impeccably built, split mechanical keyboard - designed for extreme productivity and ergonomics.

Sep 15, 2016

Project update 26 of 76

Monthly progress and choosing a switch brand

Welcome to this installment of our monthly progress update! This series is composed of two parts: 1) the major happenings of the month, and 2) choosing a switch brand. Let’s get started!

Monthly progress

A lot has happened since our last update. Let’s see the nitty-gritty!

The first plastic case and metal plate samples

Our Serbian contractor has manufactured the first samples of the bottom parts of the case, the case buttons, and the metal plates.

This is the case freshly injection molded:

And then it’s ejected from the mold:

It’s easy to see the protruding pole-like plastic part where the case has been shot. This gets manually removed after molding.

Some more samples with the protruding part removed:

Don’t worry about the aesthetics. These are just test shots.

The first sample of the case buttons:

The first sample of the metal plates:

Let’s put the plate into the case:

The plastic parts look pretty good for the first try, but they have some minor inaccuracies that will need to be corrected. This is nothing unexpected, and corrections like this are usual in the world of manufacturing.

Palm rest

András and I visited a nearby company who cuts foam of various types. We asked for a couple of samples:

Pretty quickly, the 3D printed base plates also arrived (which will be ultimately crafted of aluminium):

And then the time has come to cover the foams with drape and put everything together:

This is how the palm rest looks like when fixed to the UHK:

We’re not ready yet. The type of the foam, the technology, and the drape to be used are not final. This continues to be an active area of development, and in our true style we’ll be keeping you in the loop.

LED display

Our LED display manufacturer has finished the mold of the display and created a couple of samples. This is the front side:

And the back side:

Next step, the PCB of the display will be put into the plastic shell, then it will be filled with epoxy, and a sticker featuring the graphics will be put onto the front side. We should get a ready-made sample pretty soon.

Finding our PCBA manufacturer

We’ve already picked about a dozen of suppliers who will provide all the different parts of the UHK, but a major manufacturer had yet to be found for assembling the PCBs.

So I started to request quotes from foreign companies, but when I received them, I stopped for a moment. “Wouldn’t it be great if we could find a nearby company?” - I thought. And then I emailed all 20 of the PCBA companies of Hungary and waited for quotes.

Then the impossible happened. It turned out that one of them is located in Kalocsa, the same small city where we’ll assemble the UHK. Not only are they next to us but they’re very responsive and interested in the project. We toured their facility and concluded that they’re the kind of guys we want to work with.

We’ve exchanged many emails and made a number of phone calls since then. These conversations are supremely useful, as we can heavily optimize the design of the PCB for manufacturing. As an added bonus, it seems like they can assemble not only surface mount components, but all the through-hole parts, so we won’t have to take care of those separately. We couldn’t wish for more.

And this is how we managed to insource PCBA by finding a company who is not 8,000 but 2 km away from us.

All hail our awesome contributors

Agent has been developed at a rapid pace lately, which leads me to introduce our latest and greatest contributor - Give it up for Mr. Mikko Lakomaa!

I’m Mikko Lakomaa, a web developer from Finland. I’ve worked as a full stack developer for about a decade now but have shifted my emphasis towards front-end JavaScript development in the last few years. I got interested in the UHK when I was looking for a more ergonomic keyboard and it just happens that their software uses technologies I wanted to learn so I decided to help them out.

Over the last few weeks, Mikko has managed to push the Macro UI of Agent to the next level, so mad props go to him along with a UHK with all the bells and whistles. Thank you so much for your contribution, Mikko!

Jozsef and Nejc are also pushing hard and have been making solid progress. Nejc has implemented the add keymap UI of Agent and now working on the data layer which manages the internal state of Agent. Jozsef has been implementing his fair share of refactorings and reviewing a fair number of pull request as the lead developer of Agent.

And now to the second part…

Choosing a switch brand

We have just decided which switch brand will be used for the UHK. Our campaign page originally mentioned Gateron or Greetech as possible candidates, but in order to make the best choice we ended up considering other brands, too.

It’s important for us to share our thought process with you, so we’ll go over all the brands one by one and highlight some major points.


Cherry is hardly stranger to anyone, given that they’re the original designer and manufacturer of Cherry MX switches. Then their patents eventually expired, and other brands entered to the market and replicated their switches.

Cherry is the most trusted brand because they started the show, and they’re still in business after all these years, so it’d make logical sense to pick them over the others except for one thing: availability.

The supply chain issues of Cherry MX switches have been prevalent over the years. Cherry is known for striking exclusive deals with the top keyboard manufacturers of the world, much to the dismay of smaller manufacturers who weren’t able to source Cherry switches in a consistent-enough manner to manufacture their products.

Some manufacturers switched from Cherries to alternative brands, and were accused of cheaping out. We doubt that these guys were actually cheaping out. Some of them might have, but others simply wanted to get their products manufactured. We don’t want to be ever put into this situation.

Availability issues have been well known for long time, so back in the day I ended up phoning Cherry’s German sales office only to be informed that there’s nothing they can do about supply chain issues.

Given the above, we’ll only use clear and green Cherry switches because no other manufacturers create switches of such types, but for everything else we’ll use another brand.


Gateron switches are well known and loved by the keyboard enthusiast community. Gateron manufactures quality switches and trusted by many, so it’d make sense to pick them. We have two issues, though.

The first issue is the lack of direct contact with Gateron. Call us old school, but we like to get involved with manufacturers to be able to discuss any potential issues. We weren’t, however, able to reach Gateron neither across the Internet, nor via phone. We even asked a friend of ours in Hong Kong to try to get in touch with them, but he wasn’t able to.

We would much rather do business directly with a manufacturer than using a buying agent. Again, it’s not because of the slight added cost, but the ability to directly communicate with them.

The second issue is that Gaterons use milky white plastic for their housing. This shouldn’t be a problem for most keyboards because the switches underneath the keycaps are hardly visible, but it’s a different story for the UHK. When the halves are split the milky white color becomes visible, and it doesn’t gel well with the rest of the keyboard which is usually black.

Because of this, we don’t consider Gateron an ideal choice for us, and would rather pick an alternative brand.


Greetech switches resemble the look of Cherry switches the most closely. It’s very easy to miss the difference because the shape of the two seems identical. Only the text featured on the housing of the switch tells whether it’s a Cherry or a Greetech.

The Greetech switches we tested felt great. Being very similar to Cherries makes them a great choice for us, not only functionally but visually. They offer 4 MX switch types (each with or without stabilizer pins) and 2 low profile switch types.

Greetech is a great candidate, but our story doesn’t end here. We wanted to go all the way and consider every switch type.


Photo is courtesy of Massdrop

Truth to be told, we don’t know a whole lot about these switches. We can see them being used in various, mostly Chinese keyboards, but we couldn’t even find their website, and have no way of reaching them directly, so our main concern is the same as for Gateron switches.


Initially, Kailh wasn’t on our radar because we assumed that they only strike deals with large companies and don’t serve small startups like us.

Eventually, our keycap and keyswitch supplier recommended Kail switches. He’s a guy who is also a keyboard designer, deeply passionate about keyboards, and very concerned about quality. In his opinion, Kailh switches are better than other MX compatible switch brands.

Today, I tested about 500 Kailh switches by hand and although I’m not a perfect switch testing machine, every one of them felt great and consistent. András has made a couple of blind tests and he put Cherry and Kailh into the same group 3 times in a row and put Gateron and Greetech into another group. This doesn’t necessarily mean anything, but it might mean that the feeling of Kailh switches resemble Cherry more than other brands.

There are a couple of points to be noted about Kailh. They’re a major MX switch manufacturer with more than 2,000 employees. Their manufacturing process is highly automated which should translate to great and consistent quality across their products. Their supply chain is robust and they have plenty of stock, so they can serve their customers without significant delays. Their sales channel is responsive. Kailh also manufactures automotive parts which is encouraging, because automotive manufacturers have to comply very strict quality guidelines.

Kailh’s MX switch offering is unusually rich. They offer switches of different case colors (black and transparent), optimized for regular LEDs, RGB LEDS, and SMD LEDs, and are available with or without pins.

From the innovator’s point of view, an even more interesting fact is that Kailh is not just a copycat. They recycle a significant portion of their capital into R&D, resulting in new products like the following:

Most of these keyswitches are not MX compatible but they offer various advantages over standard MX switches, like lower form factor, improved backlighting, and such, allowing developers to create new keyboards that stand out in various areas. We consider this a good thing.

Making the decision

When googling for keyswitch comparisons, one can find tons of opinions and very few facts. Some people or communities pick a brand to glorify or berate for little or no reason. We always try to be as objective as possible, and make the best choice that will result in an exceptional keyboard.

Considering all the factors, we have decided to use Kailh switches for blue, brown, red, and black, and Cherries for clear and green.

It’s important to mention that our decisions are not primarily governed by the price. There’s little difference between the price of Cherry MX compatible switches, and if we really wanted to cheap out, the first thing we’d do is to replace the super high quality Omron SS-01D microswitches of the case buttons with a cheaper part. One SS-01D switch costs about as much as 10 MX switches but the alternatives of the SS-01D have inferior durability, so we’re not willing to use those.

As you can see, there are a lot of factors, such as quality, availability, and aesthetics that come into play when picking a part. We think that, given the above, Kailh is an excellent choice and we’re excited to use their keyswitches in the UHK.

Should you have any opinions, you’re always welcome to let us know.

It’s been a pleasure to talk to y’all! Let’s touch base on 2016-10-13.

Sign up to receive future updates for Ultimate Hacking Keyboard.

Subscribe to the Crowd Supply newsletter, highlighting the latest creators and projects