KB75

Created by [Aahil] • Started on June 12, 2025

A 75% mechanical hotswap keyboard with cool stuff

Total Time Spent On Entire Project: 53hrs


June 12th: The beginning of a new project......

Today I took the first steps of this project, I made the layout in KLE (Haven't tried Ergogen yet) and started with the schematic, most of the time was spent in making the layout so I didn't do much in the schematic, like I was only able to make a few sheets and add in a Pi Pico. I also decided the features and hardware to use. I decided: - Hardware: - Raspberry Pi Pico or Orpheus Pico. - MX-Style Hotswap Sockets. - SK6812MINI-E RGB LEDs and all the stuff for that like decoupling capacitors and logic level shifter. - EC11 Rotary Encoder with switch. - If GPIO isn't enough, I'll need to add in an MCP23017. - Maybe Type-C PD will be added so all the ICs and port for that. - The rest will be decided as we go on - Features: - Hotswappable MX Switches - A rotary encoder - Per-key RGB - Customizable firmware - Compact board (hopefully)

And that's all that I did today; KLE, Planning, A little bit of the schematic.

keyboard-layout image image

Total time spent: 3hrs

June 15th: The Matrix

This is my 2nd Day of working on this project. I made the matrix and decided to mae everything in one sheet with boxes and not seperate sheets, this is bc like I will need to go through different sheets just to see what nets go to what and it'll be a little more time taking. Anyways, I worked on the schematic and added all the keys, I still need to wire it all up but I decided to log rn so I dont forget, I will still work rn tho, btw I started at 1AM lol so yeah I haven't slept :(. image image

Total time spent: 4.5ish hours

June 15th - Log 2: Next Step - The PCB

I was finally able to finish my entire schematic, I added the RGB LEDs, Capacitors, and I thought of adding Type-C but the Pi Pico dosen't have any USB pins proken out, not that I know of. So I finished the wiring of the matrix, capacitors, and LEDs. So now I'll start the PCB and update then. Oh and I also added a rotary encoder w/ switch. image image image image

Total time spent: 2.5hrs

June 15th - Log 3: The PCB Layout

Now that I was done with my schematic, I finally decided to make the PCB, so I used kbplacer - a KiCad plugin that converts ur KLE JSON or Ergogen layout and places all the diodes, switches, and LEDs automatically according to ur layout. Once I did that, I decided where the Pi Pico should go, there was no space in the middle or anywhere so I added it on the right side, but this forced me to make the board larger, leaving some extra space on the bottom. So I added in a 0.91" OLED vertically, this minimized the empty sapce. I still haven't routed the board yet but it took me a long time to come up with multiple itterations, deciding where the Pico should go, doing multiple attempts on the board outline, and other stuff. I also rearranged the schematic a bit, I also made use of the ADC pins for i2c of the OLED and for the rotary encoders switch pin 1.

image image image image image image

Total time spent: 2-3hrs

June 15th - Log 4: The end of the PCB

Another update: I'm finally done with my PCB!!! I dont even know how long it took me to route everything, but its finally done!!!!!! Now I need to make the plate and bottom which I'm thinking of doing using another 2 PCBs, bc like moddeling will take too long. But, if I have time and all then I might just make a 3D Printed case for it too so if anyone wants to make it they won't need to pay for 3 PCBs, I don't have a printer which is another reason why im thinking of making a PCB and I can maybe do some silkscreen art on the PCB too. Next update will hopefully be for when I'm done with the other 2 PCBs. PS: I dont know how muc time I worked for but I think it's well over 5-5.5hrs in total from since the last updates so 5.25hrs is the avg ig.

image image image

Also I didn't run DRC yet so I gotta do that too.

Total time spent: 5.25hrs

June 16th: Completion of the plate!

Hi! I'm finally done with my PCB-Plate, I was thinking of making a 3D Printable one but I'm too burned out from making this pcb based plate. Anyways, I'm finally done with it but I still need to make cutouts for the stabs and need to add stabilizers in the PCB too, otherwise Im done. Took me a long time to make this.

image

I'm gonna add some silkscreen later, like imma add in multi color silkscreen so for that I'll have to take this to EasyEDA once I'm done. The next update will be me done with the stabs and stuff hopefully.

Total time spent: 4-5hrs

June 16th - Log 2: Square one

AGHHHHHHH. I had to make my entire PCB again, because I had too many errors in that one, and I had to addin stabs but the wires were underneath the holes bc I added them AFTER routing everything, so I deleted the PCB and used this tool to make a new PCB, I then took my previous designed plate and placed it over the new PCB so I can make the same board outline again, I also added my OLED, Pi Pico, and encoder from the plate alignment. I also added in my LEDs one by one, now I need to add in the decoupling capacitors one by one aghhhhhh. This is gonna be hard........

image image

Total time spent: 4.5hrs

June 17th (Midnight of June 16th): Routing, again

New update! I was finally able to precisely align all the decoupling caps, now I need to route all of this sadly. I def deserve at least 8 points for all my work lol.

image image image

PS: I'm not using blue switches, and uhhh I'm running out of ways to start a log, so I think there are gonna be bad intros bc this is getting awkward.

Total time spent: 3hrs

June 17th - Log 2: Rows

Hi! I have finally routed all the rows and the rotary encoder on my PCB, and most of the diodes are routed to the switch too. Now I need to route the columns, capacitors, and LEDs. Should't be hard right.......... right?

image image image

Total time spent: 1.75hrs

June 17th - Log 3: Colums

Hi, I finally routed all the columns and got them all connected to the Pi Pico, now I need to route the capacitors, LEDs and the OLED, which is........ 423 unrouted traces :((

image image

Total time spent: 2hrs

June 18th: Recovery

New log! So as the title suggests my KiCad PCB corrupted :((, luckily KiCad makes backups, but...... the last 2 of those backups were also corrupted. But the 3rd one worked!! Some things weren't there so I added those again and routed all the +5V and GND connections, like I added a copper fill but some sections had to get connected with lots of vias and traces, but I got through it and now there are only 81 unrouted connections, considering that I have 82 Switches which means 82 LEDs, and I connected DIN of LED1, leaving us with 81 unrouted which means all thats left is DIN and DOUT connections. I also forgot connecting the RGB Data Pin and adding a logic level shifter so I added the BSS138 MOSFET and noticed I was out of pins on my pi, so I took my Encoders SW1 and SW2 and connected tjose to my matrix with a diode. Then I connected my RGB Pin to ADC0 with SDA and SCL on ADC1 and 2. So I used up all the Pi Pico's pins, luckily we didn't need to add a I/O Expander.

image image image image image image image

Total time spent: 5.5hrs

June 18th - Log 2: PCB Completon!!

FINALLYYYYYY!!!!!! I'm done with the PCB!! I decided to make a proper enclosure and plate in F360 and not a PCB (FR4) Based one, this is bc if I made one using a PCB it would only give me the plate and back but nothing for the sides, so I'm now gonna be making one in fusion. Rlly excited for this to be done and for making it irl! I rlly need a keyboard bc I'm designing everything on a HP Elitebook 840 G4 w/o a keyboard or mouse.

image image

EDIT: I forgot to refill the zone, so once I did that there were 2 small GND-GND traces that I had to route, just did that and will be adding gerber and kicad project files.

image

Total time spent: 4hrs

June 19th: Almost done!

I'm backk! I worked all night in Fusion 360 and I'm almost done with the entire case, the bottom is done, the top is done, just making some finishing touches. And I need to add some cutouts for the stabilizer's bar to go under the plate, but idk how to do that.

image image

Total time spent: 6.5-7hrs

June 19th - Log 2: The End............ or is it?

So now I am FINALLY DONE!!!!!!!! I added cutouts for the stabilizer's wire (the metal rod that connects the two) to go under the plate, I engraved the keyboards name, and O added some fillets in the inner edges, I'm pretty happy with what I've done and I luv this design, I'll add all the files rn and I'll submit this! I'll log my assembly but it's gonna take a long time for the PCBs to arrive unless if I use faster shipping. Bye!

image image image image image image image

Update: Ahh I forgot I need to write the firmware b4 submitting, ig I'll do that and log.

Update 2: In my first log I said i might use a orpheus pico, but I just remembered that isn't allowed so I'll just use a raspberry pi pico or a clone with type-c

Total Time Spent: 1 - 1.5hrs

June 19th - Log 3: Done with the firmware!

Finally! I'm done with the firmware!!!!!!! I used QMK bc once I get my keyboard I'll setup KMK via POG, a open-source app made for easy setup for KMK based keyboards, especially RP2040 based ones, it automatically installs KMK, makes the keymaps, allows you to config layers, and more! So I'm done with everything I just need to format the README and add in a BOM. Btw it's my first time using QMK and the docs were too long and over my understanding so I took a little help from copilot, and this time I dont mean help, I mean just help bc it only wrote the template code and I modified it all like my keymaps, rules.mk, config, etc.

(I don't know what to upload in images so no images this time sry)

Total time spent: 2hrs