A 100% mechanical keyboard with the Raspberry Pi Pico as its brains! It features 104 Akko V3 Matcha Green keyswitches with 3D printed keycaps and Durock Clear Screw-In stabilizers. The PCB itself is housed inside a 3D printed case which is held down by M4 screws.
I recently started learning Fusion and my laptop couldn't run it AT ALL so I borrowed my dad's pc. That's when I first encoutered the worst keyboard of my life. I got so used to the laptop keyboard that normal detached ones feel extremely off to me. So to combat that I decided to make a mechanical keyboard! Plus I've never dealt with firmware and KMK is supposed to be really really easy and beginner friendly. And the other side reason is that I'm really bad at soldering, so this should help me improve that too. (104 switches is a lot of pins to solder T-T)
I'm used to the numpad in my laptop so I decided to choose a 100% layout. I'd say its pretty rare to find a 100% these days!
This includes all the hardware stuff that went into the making of this project.
The schematic for this project was made in KiCAD. The 26 GPIO pins were barely enough for the switch matrix but it did the job.
The PCB for this project was made in KiCAD again! Most of the footprints used are from the internet but some are slightly edited to fit my project.
I made the case in Fusion 360! It is also split into parts which can be printed with a build volume of less than 180mm.
The full BOM is in the repo files as a csv. The shortened version without links and cost is as follows.
Or read it here! https://docs.google.com/spreadsheets/d/1H-eOUtyDmBi-_5e-qRuBTTzMEN6aQgQbRGRCWlnd5h8/edit?usp=sharing
Total cost ~ 85-100 USD depending on location and cost of PCB fab..
| Component | Description | Units |
|---|---|---|
| Akko V3 Matcha Green | Keyswitches | 104 |
| Durock Clear Screw-In Stabilizers | Stabilizers | 7 |
| Raspberry Pi Pico | Microcontroller | 1 |
| M4 Screws 45mm | Screws for mounting | 10 |
| Keeb PCB | PCB | 1 |
| 1N414 | Diodes | 104 |
(Before we start, you must have all the components to build it, including the PCB which you can order using the gerbers in the assets, and all the 3D printed parts!)
Solder all the diodes, keyswitches and the pico into the PCB carefully taking into account the polarity of the diode..
Screw the stabilizers into their respective drill holes..
Assemble the base of the keyboard case. Place the PCB inside. (Use a thin layer of felt ot cotton if you feel the keyswitches are scratching against the case))
Screw on the top plate in pieces using M4 Screws (Use heatset inserts if you want!))
Push in the printed keyswitches to all the keys. (You can modify the print files to add text on each key too!))
Then follow the firmware guide to get your working keyboard!!
Hold down the BOOTSELECT button on the Raspberry Pi Pico and connected to the computer via USB.
Then download the Circuit Python.uf2 file from the assets and drag it into the new drive which appears. (Named RP1-RP2))
The file now has Circuit Python flashed!!
Download the KMK folder from assets and drag it into the drive..
Then drag in the KMK.py file into the folder..
And thats it!!
I learnt way too much through this project. I got to know what a diode was and also switch matrices. I learnt to make my own keycaps and also how to use the Raspberry Pi Pico. But at the same time I faced a lot of trouble along the way. The most notable would be making the case for this. I spent a long time export svg files from KiCAD and using the Keyboard Layout Editor to get a sketch that I could just extrude and mae a case. But in the end I had to just manually draw the sketch for the best fit. I also had some problems with stabilizers and their mounting holes. This was one of the first things I made for this project!