How I Built My Own Keyboard

Written by jesperht | Published 2017/12/24
Tech Story Tags: mechanical-keyboards | diy-projects | diy | keyboard | ortholinear-keyboard

TLDRvia the TL;DR App

The finished product

A while back I came across Let’s Split and became fascinated by the idea of building my own keyboard. I’ve been using Microsoft ergonomic keyboards for as long as I can remember, and felt that 🎄Christmas would be a great time to take a stab at it now that I have some down time.

The Microsoft ergonomic keyboard model to be replaced

One thing you may notice right away is the size of the Let’s Split keyboard. It’s roughly 40% the size of a normal keyboard, and follows a ortholinear design. Ortholinear basically means that the keys are aligned vertically in a equal grid, compared to the staggered key placement of a typical keyboard. If you’re curious to learn about how you survive with so few keys, then I suggest you check out this video about a similar keyboard called Planck. In short, you make use of layers.

Covering some of the main concepts via a similar keyboard

After doing a fair amount of research and comparing vendors, I settled on using a local supplier called MechBoardsUK. Shipping took some time as they had to laser cut the acrylic case, but their service throughout was otherwise very responsive.

Orange for scale

Eventually a box so small arrives that I wonder what it could be. Turns out it was all the components to build my keyboard!

All the parts waiting to get assembled. I knew there’d be plenty of soldering involved, so I made sure to lay down adequate protection on the table

Before we get started though, you’ll want to be prepared with some tools:

Must Have:

  • Soldering Iron, ideally with a fine tip
  • Solder, the thinner the better
  • Side Cutters for trimming pins and diodes

Nice to Have:

  • Solder vacuum/pump, it’s the IRL version of undo
  • Small screw driver for tightening the screws on the case
  • Adjustable helping hands to hold things in place
  • Needle nose pliers for bending diodes
  • Fan to blow away solder fumes 😷

Keep in mind that my instructions below are meant as a complement to the official guide, and by no means complete.

Step one is to mount the diodes. Be careful to: 1) make sure you don’t forget any diodes; and, 2) ensure the black bit of the diode is always facing the square points.

Bonus points if you can spot the mistake I made

Next, flip it over and solder them in from the back.

Spikey!

Now snip them off as close as you can to the board. I had to make two solder/snip passes as I couldn’t reach them all the first time.

Fun fact: The purpose of these diodes is to ensure that the current only flows in one direction.

Next up is the TRRS jacks. This will be the umbilical cord connection point between the two halves.

Protip: Ensure you have TRRS and not TRS jacks/cables.

Next up is preparing the future home of our Pro Micro. First step is to attach the pins.

Be careful to attach the pins on the correct side, as the two halves will be inverted.

Now you’ll want to attach the first two switches. You’ll want to do that now, as the Pro Micro will be placed above the switch solder points.

Next, you’ll want to prepare the Pro Micro by flashing in. The official guide recommends doing this prior to soldering, as these chips can sometimes be defective. Pro Micros are Arduino compatible, and I flashed the default Let’s Split Rev2 firmware from Quantum Mechanical Keyboard project. If you find the CLI a bit daunting, then you can give the GUI QMK Toolbox a shot.

One gotcha to keep in mind is that you’ll need to trigger a reset while flashing. This can be done easily enough by bending one of your diode clippings into a V shape, and shorting the spots marked GND and RST.

Once done, you’re ready to attach it to the PCB.

I certainly hope that your soldering skills are better than mine 😳

At this point we can begin testing the board. After fixing a few cold joints, things appeared to be working! 🎉

I decide to enthusiastically solder on the remaining switches and try on the case, and then I realize that I’ve made a huge mistake.

The case goes under the switches, sandwiched between the keys and the the PCB. Doh! What happens next is that I spend hours inhaling solder fumes and using the solder vacuum as best I can to try to remove the Pro Micro that I had so carefully attached.

Most of the solder removed, still some left to go…

After having removed as much solder as humanly possible, I was able to make use of the side cutters to very carefully pry loose the chip. By some miracle, the Pro Micro remains completely functional, despite many scratches and solder spots/burns.

At last. I jumped up and danced around the room at this point to celebrate.

I could now remove the switches and re-attach them between the case and the PCB.

Thereafter, I repeated the steps from before: soldering on the first two switches and then the Pro Micro on the opposite side (again).

Sandwiched, as it should be.

After soldering the remaining switches, I tested the full layout for this half. One of the keys was not working and my heart sank 😨. Was the Pro Micro actually damaged by my earlier blunder? After re-flowing a few points, I finally spotted that a diode was missing! At this point, there was no way I’d detach the Pro Micro again, so I instead decided to put the missing diode on the reverse side, as it would work just as well there.

Top left near the corner, D24. Note the gnarly Pro Micro.

Satisfied that I had a working keyboard, I attached the bottom half of the case.

Finally, we can get to the fun part, key caps!

Almost as satisfying as bubblewrap, attaching the keycaps is definitely one of the highlights of the project.

All that was left now was to follow the same steps, somewhat inverted, on the second half. While the first half took many hours, largely due to the micro controller debacle, the second half took less than an hour and I was up and running.

Cool red glow from the Pro Micro shining underneath

At this point the keyboard was fully functional and ready for use. I tightened the case screws one more time, and then attached the rubber bumpers underneath to give it a bit more stability: the reduced sliding on smooth surfaces makes a massive difference!

So what’s next?

  • Programming and customizing the QMK default keymap. There are a few community ones also available worth exploring as well.
  • Acquiring some LED strips to give a customizable under glow. It would be fun to turn it red if Jenkins starts failing, green if my company makes a sale, etc.

In hindsight I was perhaps a bit overconfident when getting blank keycaps. On a normal keyboard it’s not an issue for me, but with the ortholinear design I feel like I may be making it harder for myself than need be, as there’s quite a learning curve for getting used to the layered design. I see myself playing typeracer quite a bit in the future to get back up to my usual WPM.

Another thing I would have done differently is to start with a fine tipped soldering iron. I used an old one that was on hand before finally upgrading to a cheap one I found at a local hardware store. The difference it makes while working on the Pro Micro is night and day 🤯.

Make the investment in a small/fine tip if you can. It’s worth it.

I’d recommend this project to anyone interested in getting into DIY computer hardware. It’s not too expensive, reasonably easy to assemble, and a fair amount of software involved for extra coding and customizability opportunities. Despite the simplicity, I learned tons and had lots of fun getting away from the screen and building something in the Real World.

Now that it’s all done, I feel that my appetite for procrastination has been filled, and I can finally get back to adding the new features to Monkey Test It that I’ve been putting off!🙊

Thanks for reading and please leave a comment or send me a tweet if you found this post interesting or useful!


Published by HackerNoon on 2017/12/24