While on lockdown for COVID-19 I decided it was the perfect time to build my first hand-wired mechanical keyboard and that starting small was the right way to begin. After much searching and thinking I chose a 2×5 case that I found on ThingiVerse by Jacob Jaeggli (jakebot) and with Kailh BOX Heavy Burnt Orange Switches and a quick trip to Microcenter for a Teensy 2.0 Arduino board and diodes I got started.
What I am going to document here is not the process I went through, as I got a lot of things wrong, made a lot of mistakes, and had to start over a couple of times. Here is what I think is the correct way to put your hand wired keyboard together.
There are a lot of hand wiring a keyboard guides out there now, but my favorite, and the one I aspire to is Kentlam0203’s Handwired Preonic Build Log, it is so clean. For the brains of the operation I chose the Teensy 2.0 which is a common choice for a hand wired keyboard, it is small, has plenty of inputs, and a sturdy USB-mini plug.
I started on the Keyboard Layout Editor website where I laid out the buttons, added legends, and copied the “Raw Data” for use in the Keyboard Firmware Builder. On the Keyboard Firmware Builder website I got the wiring diagram, pins on the Teensy to use, created a keymap, and compiled the firmware. It is hard to believe how easy this was.
It took a couple of hours for the case to print, then the switches go into the plate and tested with a multimeter to ensure they are all working correctly and get hot-glued into place, then the diodes get soldered to the switches, then the row wires (yellow) with more testing, followed by the columns (green) and a final round of testing.
I then use the Teesnsyduino software to make sure the Teensy is working correctly by uploading the Blink test script to it and changing values in the code to verify. With that done I use the Teesnsyduino to flash the firmware downloaded from Keyboard Firmware Builder. Then I solder the rows and columns to the pins and hot glue the board down to the case so plugging and unplugging the USB cable will be solid.
Then I plugged it in and used the MacOS Keyboard Viewer app to verify that it all works. I don’t have a lot of use for this macro pad as my mouse has more buttons and is already in my hand, but as a learning experience, this has been great.
Next up is building a Planck 40% keyboard.