This is a custom, 3d-printed keyboard made to resemble a biblically accurate angel, powered by a Raspberry Pi Pico RP2040.
see the keyboard working here!
My intial goal for this project was to just simply make something cool for the summer and to keep me occupied, but soon grew into a very complex CAD and art project that I had loads fun working on (and also served as great Fusion 360 practice for school).
I learned lots of useful techniques in Fusion 360, such as the Surface modeling tools, Create Form, and the 3D Sketch feature, which I will use extensively in my other work like future hardware projects, school work, and for my team in VEX Robotics. I also plan to show off this project to my high school's IRL Hack Club to encourage more students to join Hack Club :3
The keyboard is powered with a RP2040 running QMK, which is soldered into a PCB in the center dodecahedron, and has external rings of key switches surrounding the center, all wired to the center PCB.
To fit the biblically accurate angel theming, the keyboard has a common motif of eyes, which is often seen in interpretations and drawings of biblically accurate angels. The case is also made out of gold PLA filament, with the center, keycaps, and some decorations painted white to fit the color scheme often associated with angels.
| Item | Purpose | Price | Source |
|---|---|---|---|
| SUNLU Gold PLA Filament | Filament for the case | $19.99 | Amazon |
| Switch PCBs | Houses the switches in the rings | $5.20 | JLCPCB |
| Center PCB | Holds the RP2040 and connects to the PC | $2.00 | JLCPCB |
| Yellow 26 AWG Wire | Holds the switches and wires to the center | $3.57 | Aliexpress |
| Outemu Blue Switches | Switches to detect user input/presses | $0.99 | Aliexpress |
| RP2040 Microcontroller | Communicates to the computer, detect switch presses | $2.56 | Aliexpress |
| 3D Printer | Manufactures the keyboard case | Owned | |
| Soldering Iron | Assembles the PCBs, can weld case to seal cracks | Owned | |
| Keycaps | Makes switches more comfortable to use | Owned (printing | |
| Cable | Allows connection between RP2040 and PC | Owned | |
| Super Glue | Secures parts of the case to each other | Owned | |
| M3 Screws (6mm, 10mm) | Allows for PCBs to be attached to the case | Owned | |
| ------------- | ------------- | ------------- | ------------- |
| Subtotal: $34.31 | |||
| Amazon: $28.28 | JLCPCB: $18.81 | Aliexpress: $11.74 | Total (tax + shipping): $58.83 |
- The case is costs around 466.37 grams of filament, and my current spool of black PLA is running really low (<100 grams left)
- The case will be assembled inside-out (starting from the center, threading the wires through the appropriate connectors before permanently attaching PCBs/ring sections
- JLCPCB is used instead of PCBWay due to the $20 coupon announcement to save costs by Hack Club HQ
- The keyboard will be programmed via QMK or KMK and after the keyboard is built
special thanks
- Adedayo Adeleke on Slack for giving me some microcontroller recommendations early on
- Atrocious on Slack for giving me a rundown on how to add 3D models to the PCB previewer in KiCad
- My friends and the many people who liked my work and encouraged me to continue working on the absolute trainwreck that is Fusion
- alexren on Slack for helping me and a bunch of others on getting their JLCPCB coupon working
- Special thanks to Hack Club and the people behind Highway for making this possible :D
Inspirations
- The indie game ULTRAKILL, specifically the angelic enemies named Virtues and the upcoming FRAUD update
- The Roblox game Block Tales, specifically the final boss of Demo 4, The Ancients




