

HECK
Hacked Electro-Capacitive Keyboard
- Size
- 288 × 97.5 mm
- Copper layers
- 4
- Thickness
- 1.6 mm
- Parts
- 122
- Nets
- 68
- Pads
- 560
- Tracks, vias
- 92, 0
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 10.0 (file 20260206)
- Created
- 10 Sep 2026
- Updated
- 10 Sep 2026
Overview
HECK is an open-source printed circuit board by Cikuozzo, from the Cikuozzo/HECK repository on GitHub, published under the CERN-OHL-S-2.0 licence. It is a 4-layer board of 288 × 97.5 mm with 122 parts on 68 nets, routed with 92 tracks and 0 vias.
It is built around the OPA340NA and CD74HC4067SM96. Its parts include 26 resistors, 10 capacitors, 3 ICs, 1 connector and 1 switch. It belongs with the STM32 boards of this library.
Main components
2README
README.mdHECK
Hacked Electro Capacitive Keyboard
🙋 Disclaimer — I'm not an expert in PCB design, case engineering, or firmware development. There will likely be mistakes, oversights, and things that could be done better. If you spot any issues or have suggestions, I'd genuinely love to hear from you — every bit of feedback is an opportunity for me to learn and improve the project.
⚠️ Work in Progress — This project is under active development. Expect incomplete documentation, breaking changes, and rough edges.
What is HECK?
HECK is an open-source electro-capacitive keyboard project built around the ANSI HHKB layout.
The name says it all: a hacked take on the electro-capacitive switch technology — bringing the legendary EC-style feel to a community-driven, open hardware design.
HECK takes that experience and puts it in your hands — schematics, PCB files, and all.
Layout
HECK follows the ANSI HHKB layout:
- 60% form factor
- 60 keys
- 6u spacebar
- Iconic HHKB modifier placement
Reprogrammable
HECK will be fully reprogrammable via QMK — every key, layer, and macro will be customizable to fit your workflow, with no proprietary software or locked-down firmware.
Project Status
| Component | Status |
|---|---|
| PCB | 🔄 In Progress |
| Case | 🔄 In Progress |
| Firmware | 🔄 In Progress |
| Documentation | 🔄 In Progress |
Repository Structure
HECK/
├── PCB/ # KiCad PCB and schematic files
├── Firmware/ # QMK firmware
├── Case/ # Case design files
└── Docs/ # Additional documentationSourcing Components
Some components must be sourced externally, either from OEM suppliers or the aftermarket community.
This is a deliberate choice: keeping these parts out of scope helps maintain the project simple, while at the same time giving you full freedom to tune the feel of your board.
The parts needed are:
-
Rubber Domes — The silicone dome sheets responsible for tactile feedback and actuation force. OEM domes (harvested from EC boards) are a solid baseline; aftermarket options let you personalize the feel.
-
Housings — The individual switch housings that mount onto the plate and hold the sliders and domes in place. HECK uses a separate plate and housing design, which keeps the project simpler to iterate on and gives you the option to swap housings independently.
-
Sliders — The plastic stems that sit on top the domes and interface with the keycaps. OEM sliders work out of the box; aftermarket variants allows you to use virtually any standard MX-compatible keycap set, massively expanding your options compared to the limited EC-specific keycap market.
-
Stabilizers — Unlike the HHKB, which uses an integrated plate and housing design, HECK opts for a separate plate and housing approach. This opens the option to use housings with built-in stabilizers, simplifying the build and eliminating the need to source the wire and clip separately.
-
Conical springs & spacebar springs — Conical springs sit beneath the rubber domes and are what actually allows the keyboard to detect when a key has been pressed. Manufacturing them from scratch would be redundant and costly, given that aftermarket solutions already exist. The spacebar spring is a separate component, located above the housing — in this case, above the plate/top case — and its purpose is to provide additional resistance on top of what the conical spring and rubber dome already offer. Without it, you may experience accidental spacebar activations.
Contributing
HECK is fully open-source and contributions are very welcome! Whether you're fixing a bug, improving documentation, refining the PCB/Case, or adding firmware features — all help is appreciated.
How to contribute
- Fork the repository
- Create a feature branch (
git checkout -b feature/your-feature) - Commit your changes (
git commit -m 'Add some feature') - Push to the branch (
git push origin feature/your-feature) - Open a Pull Request
Please open an Issue first for major changes so we can discuss the direction before you invest time building it.
License
This project is open-source. See the LICENSE file for details.
Acknowledgements
- PCB assets and resources for this project are based on the excellent open-source work by Cipulot. A huge thanks for making these resources publicly available and enabling projects like this one.
- The custom keyboard community for the continuous inspiration
Parts
122| Qty | Value | Footprint | References |
|---|---|---|---|
| 51 | Topre | EC_Pads:EC_Pad_1U | SW_EC1, SW_EC11, SW_EC12, SW_EC13, SW_EC14, SW_EC15, SW_EC16, SW_EC17, SW_EC18, SW_EC19, SW_EC20, SW_EC21, SW_EC22, SW_EC23, SW_EC24, SW_EC25 +35 |
| 18 | 100k | Resistor_SMD:R_0402_1005Metric | R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21, R22, R23, R24, R25 +2 |
| 17 | MountingHole | MountingHole:MountingHole_2.2mm_M2 | H1, H2, H3, H4, H5, H6, H7, H8, H10, H11, H12, H13, H14, H15, H16, H17 +1 |
| 7 | 100n | Capacitor_SMD:C_0402_1005Metric | C1, C2, C3, C4, C6, C8, C10 |
| 5 | 100 | Resistor_SMD:R_0402_1005Metric | R4, R5, R6, R8, R9 |
| 4 | Topre | EC_Pads:EC_Pad_1_5U | SW_EC2, SW_EC10, SW_EC44, SW_EC57 |
| 3 | 10k | Resistor_SMD:R_0402_1005Metric | R1, R2, R3 |
| 2 | Topre | EC_Pads:EC_Pad_2_25U | SW_EC4, SW_EC58 |
| 2 | Topre | EC_Pads:EC_Pad_1_75U | SW_EC3, SW_EC55 |
| 1 | 1u | Capacitor_SMD:C_0402_1005Metric | C5 |
| 1 | 220p | Capacitor_SMD:C_0402_1005Metric | C9 |
| 1 | 4.7u | Capacitor_SMD:C_0402_1005Metric | C7 |
| 1 | 500mA | Fuse:Fuse_1206_3216Metric | F1 |
| 1 | 8 MHz | Crystal:Resonator_SMD_Murata_CSTxExxV-3Pin_3.0x1.1mm | Y1 |
| 1 | BOOT0 | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | SW1 |
| 1 | CD74HC4067SM | Package_SO:SSOP-24_5.3x8.2mm_P0.65mm | U2 |
| 1 | Ext_Res | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | JP1 |
| 1 | FerriteBead | Inductor_SMD:L_0402_1005Metric_Pad0.77x0.64mm_HandSolder | FB1 |
| 1 | JST | Connector_JST:JST_SH_SM04B-SRSS-TB_1x04-1MP_P1.00mm_Horizontal | J1 |
| 1 | OPA340NA | Package_TO_SOT_SMD:SOT-23-5 | U3 |
| 1 | STM32F411CEUx | Package_DFN_QFN:QFN-48-1EP_7x7mm_P0.5mm_EP5.6x5.6mm | U1 |
| 1 | Topre | EC_Pads:EC_Pad_6U | SW_EC27 |
Questions
How big is the HECK PCB?
It measures 288 × 97.5 mm and has 4 copper layers, 1.6 mm thick.
What parts does the HECK use?
122 parts, built around the OPA340NA and CD74HC4067SM96. 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.
Where can I download the HECK KiCad files?
From the Cikuozzo/HECK repository on GitHub, at the commit this page was made from: the board is PCB/HECK.kicad_pcb and its schematic PCB/HECK.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the HECK design in my own project?
Its repository publishes it under the CERN-OHL-S-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
Similar boards
- 2 layers28 × 30 mm

- 4 layers150 × 50 mm

- 4 layers214 × 142.6 mm

Unmechanical sweepish
ebastler/UnMechanical
Capacitive touch keyboard running QMK firmware
168 parts13CERN-OHL-P-2.0 - 4 layers46 × 55.8 mm

- 4 layers74.4 × 50.2 mm

- 4 layers80 × 30 mm

Logic board
jbush001/HeadphoneGuitarPracticeAmp
Portable headphone amplifier/effects processor for electric guitar practice.
55 parts4Apache-2.0 - 2 layers49 × 34 mm

- 4 layers20.3 × 68.6 mm
