

Hc macropad
PCB for HC Macropad event
- Size
- 167.1 × 51.2 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 65
- Nets
- 79
- Pads
- 282
- Tracks, vias
- 505, 62
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 8.0 (file 20240108)
- Created
- 2 Oct 2024
- Updated
- 31 Oct 2024
Overview
Hc macropad is an open-source printed circuit board by 0xcharly, from the 0xcharly/hc-macropad repository on GitHub, published under the CERN-OHL-S-2.0 licence. It is a 2-layer board of 167.1 × 51.2 mm with 65 parts on 79 nets, routed with 505 tracks and 62 vias.
It is built around the RP2040, W25Q128JVPIQ and USBLC6-2P6, with the SK6812MINI-E among its other parts. Its parts include 12 capacitors, 8 diodes, 6 resistors, 5 connectors and 4 ICs. It belongs with the keyboards and input boards and the RP2040 boards of this library.
Main components
4RP2040
LQFN-56(7x7)12bit 133MHz 30 LQFN-56(7x7) Microcontrollers (MCU/MPU/SOC) ROHSRaspberry PiMicrocontrollers (MCU/MPU/SOC)W25Q128JVPIQ
WSON-8-EP(5x6)-40℃~+85℃ 100,000 cycles 10uA 120ms@(32KB) 128Mbit 133MHz 2.7V~3.6V 20 Years Power-on reset、Hardware write protection、Software write protection、Write enable latch、Absolute write protection、Power lock protection SPI WSON-8-EP(5x6) NOR FLASH ROHSWinbond ElecNOR FLASHUSBLC6-2P6
SOT-666-6-40℃~+125℃ 150nA 17V 2 3.5pF 5.25V 5A@8/20us 6V ESD IEC 61000-4-2 Unidirectional SOT-666-6 ESD and Surge Protection (TVS/ESD) ROHSSTMicroelectronicsESD And Surge Protection (TVS/ESD)SK6812MINI-E
SMD-40℃~+85℃ 0.6mA 1.78mm 120mcd~240mcd 120° 160mcd~320mcd 1kHz 2.8mm 2000V 3.2mm 3.7V~5.5V 460nm~470nm 515nm~525nm 620nm~625nm 800Kbit/s 815mcd~1275mcd Semi-transparent lens SMD RGB LEDs(Built-in IC) ROHSOPSCO OptoelectronicsRGB LEDs(Built-In IC)
README
README.mdHC Macropad
PCB for HC Macropad event.
BOM

- 1× EC11 rotary encoder
- 6× MX switches
- 6× SOD123 diodes
- (optional) 12× SK6812 Mini-E LEDs
3D Model

The 3D model was designed with OnShape and is available publicly.
Firmware
The firmware is powered by QMK and can be found in
0xcharly/qmk_firmware
on the hc-macropad branch.
The keyboard and keymap are defined under keyboards/hc_macropad and can be
built using the QMK CLI:
qmk compile -kb hc_macropad -km defaultSee the README.md for more information.
First prototypes
The encoder case footprint needs some work…

Credits
The PCB design, and specifically the RP2040-based controller is based off the work of Bastard Keyboards, adapted from their Dilemma design.
Parts
65| Qty | Value | Footprint | References |
|---|---|---|---|
| 8 | 100n | Capacitor_SMD:C_0402_1005Metric | C7, C8, C9, C10, C11, C12, C13, C14 |
| 6 | D | Diode_SMD:D_SOD-123 | D_R0C0, D_R0C1, D_R0C2, D_R1C0, D_R1C1, D_R1C2 |
| 6 | MX_SK6812MINI-E | PCM_marbastlib-mx:LED_MX_6028R | PK_RGB0, PK_RGB1, PK_RGB2, PK_RGB3, PK_RGB4, PK_RGB5 |
| 6 | SK6812MINI-E | PCM_marbastlib-various:LED_6028R | LED0, LED1, LED2, LED3, LED4, LED5 |
| 6 | SW_Push | PCM_marbastlib-mx:SW_MX_1u | SW_R0C0, SW_R0C1, SW_R0C2, SW_R1C0, SW_R1C1, SW_R1C2 |
| 4 | 1k | Resistor_SMD:R_0402_1005Metric | R_RGB1, R1, R3, R8 |
| 3 | 1µ | Capacitor_SMD:C_0402_1005Metric | C_RGB1, C5, C6 |
| 3 | Conn_01x04_Socket | Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_Vertical | J3, J4, J5 |
| 2 | 10k | Resistor_SMD:R_0402_1005Metric | R2, R9 |
| 2 | 1µ | Capacitor_SMD:C_0603_1608Metric | C1, C2 |
| 2 | 27 | Resistor_SMD:R_0402_1005Metric | R6, R7 |
| 2 | 5.1k | Resistor_SMD:R_0402_1005Metric | R4, R5 |
| 2 | C | Capacitor_SMD:C_0402_1005Metric | C3, C4 |
| 1 | AP2127K-3.3 | Package_TO_SOT_SMD:SOT-23-5 | U3 |
| 1 | Conn_01x02_Socket | Connector_PinHeader_1.27mm:PinHeader_1x02_P1.27mm_Vertical | J2 |
| 1 | Crystal_GND24 | Crystal:Crystal_SMD_2520-4Pin_2.5x2.0mm | Y1 |
| 1 | D_Schottky | Diode_SMD:D_SOD-323 | D2 |
| 1 | FerriteBead | Inductor_SMD:L_0603_1608Metric | FB1 |
| 1 | LED | LED_SMD:LED_0402_1005Metric | D1 |
| 1 | Polyfuse | Fuse:Fuse_0603_1608Metric | F1 |
| 1 | RP2040 | Package_DFN_QFN:QFN-56-1EP_7x7mm_P0.4mm_EP3.2x3.2mm | U1 |
| 1 | RotaryEncoder_Switch | Rotary_Encoder:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mm | R_SW0 |
| 1 | SW_Push | Button_Switch_SMD:SW_SPST_CK_KXT3 | SW1 |
| 1 | USBLC6-2P6 | Package_TO_SOT_SMD:SOT-666 | U4 |
| 1 | USB_C_Receptacle_USB2.0_16P | PCM_marbastlib-various:USB_C_Receptacle_HRO_TYPE-C-31-M-12 | J1 |
| 1 | W25Q128JVPIQ | Package_SON:WSON-8-1EP_6x5mm_P1.27mm_EP3.4x4.3mm | U2 |
Similar boards
- 4 layers114 × 87.7 mm

- 4 layers100 × 80 mm

Mouse joystick pcb
peterpolidoro/mouse-joystick-pcb
KiCad design, fabrication package and documentation for a single-axis mouse joystick controller board: RP2040, TMC5130A stepper driver, brake and torque front ends, a pyControl UART peripheral for the Janelia Dudman lab…
364 parts1 - 2 layers275.5 × 80.3 mm

- 4 layers180.8 × 300.3 mm

Dilemma
Bastardkb/Dilemma
The Dilemma is a vertical stagger low-profile keyboard with mods.
383 parts590 - 4 layers137 × 141 mm

- 2 layers303.3 × 119 mm

- 6 layers50 × 75 mm

Sandflat
apfaudio/sandflat
Lower-cost DSP experimentation host for the SoldierCrab ECP5 SoM
113 parts4CERN-OHL-S-2.0 - 4 layers35.5 × 52.5 mm

Ledify
notaroomba/ledify
A super small addressable LED controller with USB-C PD up to 100W, a switchable 5V/12V output and Bluetooth!
80 parts1
Questions
How big is the Hc macropad PCB?
It measures 167.1 × 51.2 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Hc macropad use?
65 parts, built around the RP2040, W25Q128JVPIQ, USBLC6-2P6 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.
Where can I download the Hc macropad KiCad files?
From the 0xcharly/hc-macropad repository on GitHub, at the commit this page was made from: the board is HC Macropad.kicad_pcb and its schematic HC Macropad MCU.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Hc macropad 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).