
MacroController
alex1klimovich/nrf52840-macro-controller
Custom nRF52840 productivity controller for digital artists — PCB, BLE/USB firmware, OLED, haptics, RGB, and enclosure CAD.

A simple 68 key based layout!
Tap65 is an open-source printed circuit board by sudo-apt-install-tap, from the sudo-apt-install-tap/Tap65 repository on GitHub. It is a 2-layer board of 340.8 × 100 mm with 224 parts on 171 nets, routed with 2,912 tracks and 596 vias.
It is built around the 1N4148WT and SK6812MINI-E. Its parts include 136 diodes, 68 switches and 1 resistor. It belongs with the RP2040 boards of this library.
A fully custom 68-key mechanical keyboard designed from the ground up, including the PCB, case, firmware, and assembly. This project was built to learn the complete keyboard design process while creating a functional keyboard tailored to my own preferences.
Funded With The Help Of JLCPCB and HackClub's YSWS Keeb
I've always been interested in mechanical keyboards and wanted to understand how they work beyond simply assembling pre-made kits. Instead of buying an existing keyboard, I decided to design every major component myself.
This project gave me the opportunity to learn PCB design, CAD modelling, firmware configuration, manufacturing, soldering, and the overall engineering process behind modern custom keyboards.
The project began by selecting a 68-key layout that balances compactness with everyday usability. I then designed the PCB in KiCad, routed all the traces, and added support for hot-swap sockets and USB-C connectivity. After the electronics were complete I designed a simple tray mount in Onshape. The case is made out of two PLA printed pieces and includes a 7° typing angle for a more comfortable typing experience. Because of small bed size I will have to print them in pieces.
Finally, the keyboard is programmed using kmk firmware.
Some of the biggest challenges included:
Through this project I learned:
PCB production ready files availabe in Production. CAD files availabe on OnShape Tap65
https://github.com/user-attachments/assets/bb973c62-ae0b-457b-894d-c5b485d0465b
https://github.com/user-attachments/assets/a8adbe74-d3f2-401a-ac2d-03d99a9797de
| SI No. | Name | Notes | Quantity | Price Per Unit (₹) | Total (₹) | Running Total (₹) | Price/Unit (USD) | Total (USD) | Running Total (USD) | Link |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Keygeek x MZ Y1 Keyboard Switch (Pack of 10) | MX compatible switches | 7 | 300 | 2100 | 2100 | 3.16 | 22.11 | 22.11 | stackskb.com/store/keygeek-y1-keyboard-switch/ |
| 2 | PCB (JLC Sponsored) | Sponsored PCB from JLCPCB | 1 | 200 | 200 | 2300 | 2.11 | 2.11 | 24.21 | jlcpcb.com |
| 3 | Durock Clear Screw-In Stabilizers V2 | Screw-in stabs | 1 | 1600 | 1600 | 3900 | 16.84 | 16.84 | 41.05 | stackskb.com/store/durock-clear-screw-in-stabilizers-v2/ |
| 4 | Gateron Hotswap Sockets | Hotswap sockets | 70 | 10 | 700 | 4600 | 0.11 | 7.37 | 48.42 | stackskb.com/store/gateron-hotswap-sockets/ |
| 5 | 1N4148 SOD-123 SMD Diode (Pack of 10) | N-key rollover | 7 | 20 | 140 | 4740 | 0.21 | 1.47 | 49.89 | stackskb.com/store/1n4148-sod-123-smd-diode/ |
| 6 | Ykyio Keycap Set | Keycaps | 1 | 1,599 | 1599 | 6339 | 16.83 | 16.83 | 66.73 | meckeys.com/shop/accessories/keyboard-accessories/keycaps/ykyio-keycap-set/ |
| 7 | Pico | MCU | 1 | 450 | 450 | 6789 | 4.74 | 4.74 | 71.46 | makerbazar.in/products/luatos-usb-c-raspberry-pi-pico-development-board-based-on-rp2040-microcontroller |
| 8 | Heat Set Insert | M3 | 7 | 15 | 105 | 6894 | 0.16 | 1.11 | 72.57 | makerbazar.in/products/brass-heat-set-threaded-round-female-insert-nut |
| 9 | Screw Philips | Pack of 10 | 1 | 25 | 25 | 6919 | 0.26 | 0.26 | 72.83 | makerbazar.in/products/philips-head-nuts-bolts-set-silver-plated-pack-of-10 |
| 10 | Neopixels (SK6812 Mini-E) | LCSC | 100 | 19 | 1900 | 8819 | 0.20 | 20.00 | 92.83 | lcsc.com/product-detail/Light-Emitting-Diodes-LED_OPSCO-Optoelectronics-SK6812MINI-E_C5149201.html |
This project was made possible through open-source hardware and firmware resources, along with support from the mechanical keyboard community. Special thanks to Hack Club and JLCPCB for helping make the project possible.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 68 | 1N4148WT | Diode_SMD:D_SOD-123 | D1, D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 +52 |
| 68 | SK6812MINI | KEYS:MX_SK6812MINI-E | D100, D101, D102, D103, D104, D105, D106, D107, D108, D109, D110, D111, D112, D113, D114, D115 +52 |
| 57 | SW_Push_45deg | KEYS:SW_Hotswap_Kailh_MX_1.00u | SW1, SW2, SW10, SW11, SW12, SW13, SW15, SW17, SW18, SW19, SW20, SW21, SW22, SW23, SW24, SW25 +41 |
| 8 | MountingHole | MountingHole:MountingHole_3.2mm_M3 | H1, H2, H3, H4, H5, H5, H5, H6 |
| 6 | LOGO | LOGO | *, G***, G***, G***, G***, G*** |
| 3 | SW_Push_45deg | KEYS:SW_Hotswap_Kailh_MX_1.25u | SW59, SW60, SW61 |
| 2 | SW_Push_45deg | KEYS:SW_Hotswap_Kailh_MX_1.50u | SW16, SW29 |
| 2 | SW_Push_45deg | KEYS:SW_Hotswap_Kailh_MX_1.75u | SW31, SW56 |
| 2 | SW_Push_45deg | KEYS:SW_Hotswap_Kailh_MX_2.25u | SW43, SW45 |
| 1 | 470 | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal | R1 |
| 1 | RaspberryPi_Pico_W | Module:RaspberryPi_Pico_Common_THT | A1 |
| 1 | SW_Push_45deg | KEYS:SW_Hotswap_Kailh_MX_2.00u | SW14 |
| 1 | SW_Push_45deg | KEYS:SW_Hotswap_Kailh_MX_6.25u | SW62 |
The 220 most common of 224 parts.
It measures 340.8 × 100 mm and has 2 copper layers, 1.6 mm thick.
224 parts, built around the 1N4148WT and SK6812MINI-E. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the sudo-apt-install-tap/Tap65 repository on GitHub, at the commit this page was made from: the board is pcb/pcb.kicad_pcb and its schematic pcb/pcb.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask sudo-apt-install-tap before reusing the design.

alex1klimovich/nrf52840-macro-controller
Custom nRF52840 productivity controller for digital artists — PCB, BLE/USB firmware, OLED, haptics, RGB, and enclosure CAD.



Shuri-101/MacroPad
Macro Pad for use in CAD and general productivity + convenience, mainly for use in CAD...

Abluebowobble/macropad-hackclub
The heatset inserts would be placed in all the holds to keep the case together and keep the pcb board in place! I have items poking out both the front side and the backside, so I'll need to be careful about that when…

anshxlm/hackpad
This is my hackpad! It has 8 backlit keys, a dial, an OLED, and a status LED.

Anycircle11139s/12-key-hackpad
This is my PCB design, after creating the schematic, I imported it into the pcb editor and arranged the parts, which was pretty easy.
