1st Prototype - Built Sept 2022
The idea of making a custom split mechanical keyboard is not new. There are a LOT of designs available on the internet you can build (awesome-split-keyboards). But I wanted to design one specific to my needs and opinions, with the physical placements of the keys being according to my hands and the key layout being in line with how I use my computer.
Another perk of having a keyboard like this is that you don’t have to worry when using other people’s keyboard, you can carry your layout with you (as long as its portable).
The building process
After deciding the key layout (which is inspired from my old PinkyProtector layout), I started building a firmware using qmk and programming in the keymap. A few more modifications to ensure proper operation on the microcontroller I used and only defining the pins was remaining, which had to wait until I actually built and wired everything up.
I started by tracing my natural finger movements onto a piece of paper, clicking a picture and importing the imgae into Fusion360 and scaling it to match its real size using reference measurements. The sockets for the mechanical keys were then added according to the traced image. After keeping space for the microcontroller screw sockets, wires and so, multiple designs were made before I finalized this round design with a appealing sharp chamfer.
Now the printing… I had to print several iterations to get the dimensions just right for the switches to fit snugly, even had to sand down some sockets since they were not all the same due to my slightly distorted printing bed.
Next was soldering, slightly challenging but really fun! there’s something meditative about soldering.
Defining the pins, compiling and uploading the firmware was next and then the first prototype was done! it worked just as expected (this half anyway).
About the other half…
A significant step while designing split keyboards is deciding how the two halves will communicate. All the wires from the switches can be extended directly to the other half but there are a lot of wires and it would be pretty easy to mess the wiring up pulling on those wires. So generally, another microcontroller is used to manage the other side and i2c or some other form of communication is used between the halves.
The only problem with this is that you have to use two microcontrollers, though this is a very popular method and it’ll be pretty easy to set up. I didn’t have another pico at the time (and maybe even communication between 2 picos wasn’t supported in qmk yet) so I wanted to use some io expanders (or use a cheaper, smaller microcontroller as one) but I ended up taking a break from this project after making one half.
I hope I will get back to this project sometime (or start building an entirely new split keyboard! I have some ideas)
*No AI was used in the making of this blog.