{:toc}
Before I started on my journey, I had to do some research on just what type of keyboard I would like to build. I had three main criteria:
- size: I had grown fond of the compact sizes on r/mechanicalkeyboards and would like to keep the board as smal as would still be practical
- cost: I did not want my first foray into mechanical keyboards to cost me a fortune as I would just be trying it out.
- cool factor: I didn't want it to just be any old keyboard.
I ended up settling on a split 75% ortho handwired (similar to let's split only with a number row.) with an acrylic mounting and base plate separated by pcb standoffs.
[{a:7},"~","1","2","3","4","5",{x:1},"6","7","8","9","0","Num Lock"],
["Tab","Q","W","E","R","T",{x:1},"Y","U","I","O","P","Back Space"],
["Esc","A","S","D","F","G",{x:1},"H","J","K","L",";","'"],
["Shift","Z","X","C","V","B",{x:1},"N","M",",",".","/","Return"],
["Fn","Ctrl","Alt","Super","⇓","Shift",{x:1},"Space","⇑","←","↓","↑","→"]
The case and plate where generated using swillkb builder I had the case and plate laser cut in 3mm acrylic by my uncle. who graciously didn't charge me.
- 4 x (134.301mm x 96.201mm x 3mm) acrylic sheets (2 will be lazer cut for mounting plates)
- 48 x gateron yellow switches bangood is probably a safer bet even if its more expensive
- 48 1N4001 or 1N4148 silicon diodes check this link
- 48 x DSA blank keycaps Aliexpress is the cheapest
- 2 x arduino pro micro banggood delivers quickest
- 1 x trrs cable (salvaged from an aux cable my brother gave me)
- 2 x trrs breakout boards (bought off banggood)
- wire (cat5 cable that I salvaged wire from)
- pcb standoffs (banggood)
Store | Cost |
---|---|
Bangood cart | R1450 |
Aliexpress (just caps) | R223 |
Total | R1673 |
Keyboard Firmware Builder proved extremely helpful in working out the layout for this build.
After Installing the switches and soldering everything in place I realized the switches do not clip in properly to a 3mm plate (1.6mm is the required thickness from the switches datasheet) but a thinner acrylic plate would have way too much flex. The issue this cause was that removingkeycaps would rip out the switch and undo all the hard work that went into soldering. The only solution I could come up with was to hot glue everything in place from unmderneath. I tried my best to be neat and keep the hotglue where the keycaps would cover it.
I opted for I2C over a TRRS cable. This required me to solder 2 pull up 4k7 ohm resistors on the sda and scl lines (pin 2 and pin 3). You can see a schematic below.
this is how I wired my rows and columns to the Pro-Micro
rows:
0=b5
1=b4
2=e6
3=d7
4=c6
cols:
0=b6
1=b2
2=b3
3=b1
4=f7
5=f6
For the firmware I initially tried using the Nyquist firmware but ran into issues, I ended up using the Let's Split firmware in the handwire folder and adding a row and adjusting the layout.
These articles helped me to build/flash the pro micros.
NOTE: In order to flash the promicro you should begin flashing on the computer then bridge the GND and RST (ground and reset) pins on the pro micro (or press the reset swiitch if your board has one.)
You also have to flash both pro micros.
After a while I discovered the amazing VIA software and decided to try add support for my build. I followed along with this stream by mechmerlin
although following the documentation on caniusevia.com also proved helpful
I ended up completely rewriting the qmk firmware and removed the rev1/
and rev2/
folders so the firmware is overall much simpler.
After flashing both promicros with this new firmware you should be able to import the via.json
file into VIA and the board should be detected.
I have also included a much nicer via layout in the via folder on the github repo for this project
The soldering went quite smoothly apart from the fact that my iron has a really short cable and I ended up using my left hand to solder which resulted in a few burns. I also may have melted the switch housings on a few of the switches when my iron was set too hot (I think I saw it suggested to use 325C and mine was set to 400C)
The firmware was more of a problem since my row and column pins were different than what would be on the nyquist PCB. This meant that I could not use the online configurator and I had to figure out how qmk works. I also didn't bother trying to get it all working on windows and just used my linux laptop to do all the programming and flashing.
All things considered It was quite smooth sailing and the keyboard was up and running in 2 days (4 hours assembly and the rest debugging).
My keycaps also got delayed in post so the keyboard sat on my desk for a few more weeks before I could fully test drive it.
for future builds I may opt for a pcb not because handwiring is difficult but because having the switches be pcb mounted would add to stability without the use of hot glue. the handwirted board looks kinda messy
I have seen cool stuff done using fr4 plates and bottoms this would allow the entire board to be made with the pcb. If I have the plates made using JLCPCB or something similar this could bring the cost down a bit compared to purchasing a pcb and having it shipped.
If I do not adapt to the split I may try my hand at building a plank as they are also a little more portable. If I do not adapt the ortholinear layout I may try a columnar stagger or regular stagger board again (this compact "full" size board has caught my attention).
- KLE for making layouts
- builder.swillkb for making svgs of mounting plates
- Kailh box heavy pale blues on Banggood
- Gateron yellows on Banggood
- 60% case on Banggood
- qmk handwire build
- firmware builder, this will also make a wiring diagram
- another build guide