Aliceboard
- author: Jeffrey Qi
- description: A custom alice-style keyboard that includes a rotary encoder
- created_at: 2025-07-5
Total Time Spent: 36 hours
July 5th: Researching about custom keyboards - Time: 2 hours - Today was spent mostly investigating potential projects to work on. After looking at previous submissions, a keyboard seemed like something very intriguing. I watched a couple YouTube videos on what creating a custom keyboard would entail.
July 6th: created keyboard layout in Keyboard layout editor
- Time: 1 hour
- Based on suggestions from friends and tutorials, I created a sketch of what I wanted the board to look like through Keyboard Layout Editor and worked from there. Using presets available on the website, I moved the keyswitches around into the overall Alice-style that I wanted. Once I finished with the design, I continued over to Kicad where I started tinkering around and familiarizing with the software.
July 7th: Schematic - Time: 2 hours - Today was about building the schematic. I imported and created some footprints for important components like the STM32 and the keyswitches. Once I had a general understanding of the software, I started wiring columns and rows of switches and diodes together.
July 8th: Added rotarey encoder & USB-C - Time: 1 hour - Today I added a rotary encoder: ec11 and learned about all the components on the Stm32 and what each pin does. I also added a usb-c port as well as other components like ESD protection.
July 9th: Global Labels
- Time: 4 hours
- Today I added global labels to everything that needed to connect together. This was a royal pain. Doing this, I had no clue if what I was doing was correct at all. Hoping all the reddit threads I read are correct.
July 11th: I wanna die - Time: 7 hours - This was absolutlely the most frustrating day so far. I imported the schematics in to the pcb editor and put them into the layout I made on keyboard layout editor. Only after rearraging the switches did I realize that I didn't place them in the correct order and the ratsnest was a complete mess. There was probably a much better way of handling this but I just simply renamed each switch and diode to the one it was supposed to correlate with. After that, I realized that I didn't place the mcu in the correct position before and now had wires crossing over each other everywhere. I had to rewire the whole thing multiple times and realized why custom keyboards are so damn expensive.
July 13th: DRC SHOWS NO ERRORS!
- Time: 2 hours
- Today was a lot nicer of a day. Just double checked each pin to make sure that everything was connected to what it was supposed to connect to by running the DRC and fixing problems.
July 14th: PCB finished - Time: 1 hour - Today I finished up the pcb design. I added a copper fill zone, edge cuts and realigned everything to match perfectly. Figuring out how to do copper fill zones for ground on the 2 internal pcb layers was actually a lot easier than I had thought. I had been pushing this to the end because I had no clue what the hell the tutorials were talking about so I just avoided it until today. Turns out its like 5 buttons to do. Oh well.
July 17th: created pcb plate - Time 3 hours - Today was spent mostly on learning the basics of Fusion. I watched many different tutorials on YouTube and using the sketch tool created a plate that I will use for my keyboard. This process was a bit annoying as I had learned that the pcb I had made had the keyswitch holes placed too close together so I had to go back and edit that.
July 20th: Complete rough shape of keyboard - Time 4 hours - Today, using the tools that I had learned on the 17th, I created the housing for the keyboard. The bottom plate and side housing was quite simple to do. All I did was offset from the pcb and extrude upwards. However, for the top housing, I had to do a quite detailed sketch by measuing precisely the distance from the keyswitch cutouts in every direction. There was probably a much easier and cleaner way to do it but I am more than satisfied with the result that I've created.
July 21th: Worked on 3d model - Time: 2 Hours - Today, I added cutouts for the usb-c port, as well as the rotary encoder. I also added threads for the screws to mount the plate and the case together. Most of the time was spent figuring out how to create the holes and how to line them up so that the threads were all oriented properly.
July 23rd: Completion
- Time: 2 hours
- Today I finished compiling a firmware for the keyboard and added some finishing touches to the cad design like an indentation of my name on the underside of the keyboard for style. This concludes the designing portion of this journey and I am overall happy to have done this project up to now.
July 24: Cleaning up
- Time: 5 hours
- Today was a complete mess. I thought I had completed everything I needed to yesterday until I got to the submitting part. Thats when I realized that my BOM was nowhere to be found and I hadn't yet looked at places to 3d print my files. A lot of the time spent was just looking for cheaper alternatives but my pcb just seems to want to be expensive.