

Makropad
A compact, high-performance, and fully customizable macro pad (Stream Deck) built around the Seeed Studio XIAO RP2040 microcontroller.
- Size
- 89.5 × 60 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 20
- Nets
- 23
- Pads
- 84
- Tracks, vias
- 108, 0
- Routed
- Yes
- KiCad
- KiCad 10.0 (file 20260206)
- Created
- 18 Jun 2026
- Updated
- 18 Jun 2026
Overview
Makropad is an open-source printed circuit board by Scoop79, from the Scoop79/macropad- repository on GitHub. It is a 2-layer board of 89.5 × 60 mm with 20 parts on 23 nets, routed with 108 tracks and 0 vias.
Its parts include 10 switches, 9 diodes and 1 IC.
README
README.mdDIY 3x3 Custom Stream Deck with Rotary Encoder
A compact, high-performance, and fully customizable macro pad (Stream Deck) built around the Seeed Studio XIAO RP2040 microcontroller. This repository contains the complete KiCad hardware design files, including the schematic and the routed PCB layout.
🚀 Features
- 9 Mechanical Switches: Arranged in a space-saving 3x3 diode-isolated matrix (supports standard Cherry MX style switches).
- Rotary Encoder: Dedicated EC11 vertical encoder for precise volume control, including an integrated push-button functionality (e.g., for instant muting).
- Fully THT-Based Design: Engineered using Through-Hole Technology (THT) for the switches, diodes, and encoder, making it incredibly beginner-friendly and easy to hand-solder.
- Native USB-C: Driven directly by the on-board USB-C port of the XIAO RP2040, eliminating the need for extra charging or interface circuits.
🛠️ Hardware Overview & Pin Mapping
The project utilizes every single data pin on the Seeed Studio XIAO RP2040 to maximize performance without wasting space.
1. The 3x3 Keyboard Matrix
To save GPIO pins, the 9 Cherry MX switches are wired into a multiplexed grid using 1N4148 THT diodes to prevent ghosting.
- Rows: Connected to Pins
D0,D1, andD2. - Columns: Connected to Pins
D3,D4, andD5.
2. Rotary Encoder (Alps EC11 Standard)
- Rotary Signals (A & B): Connected to Pins
D7andD8for directional rotation tracking. - Common Pin (C): Connected directly to Ground (
GND). - Switch Pins (S1 & S2): Pin
S1is wired to PinD9for click-detection, whileS2is tied toGND.
📐 PCB Design Details
The hardware was designed and verified entirely within KiCad 8.0.
- Form Factor: Extremely compact, optimized grid layout.
- Layers: 2-Layer board utilizes both Top Copper (
F.Cuin red) and Bottom Copper (B.Cuin green) layers to achieve seamless, intersection-free routing without crossing signals. - DRC Clean: Passed the final Design Rules Check (DRC) with 0 unconnected pads and 0 footprint errors, ensuring a mathematically perfect circuit ready for manufacturing.
- Edge Definition: Defined custom
Edge.Cutscontour surrounding the mechanical elements with standard clearance.
📂 Repository Structure
├── Hardware/
│ ├── stream_deck.kicad_sch # KiCad Schematic file
│ ├── stream_deck.kicad_pcb # KiCad Routed PCB Layout file
│ └── stream_deck.kicad_pro # KiCad Project configuration file
└── README.md # Project documentation (this file)Parts
20| Qty | Value | Footprint | References |
|---|---|---|---|
| 9 | D | Diode_THT:D_DO-41_SOD81_P10.16mm_Horizontal | D1, D2, D3, D4, D5, D6, D7, D8, D9 |
| 9 | SW_Push | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW1, SW2, SW3, SW4, SW5, SW6, SW7, SW8, SW9 |
| 1 | MOUDLE-SEEEDUINO-XIAO | footprints:XIAO-Generic-Hybrid-14P-2.54-21X17.8MM | U1 |
| 1 | RotaryEncoder_Switch | Rotary_Encoder:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mm | SW10 |
Questions
How big is the Makropad PCB?
It measures 89.5 × 60 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Makropad use?
20 parts. 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 Makropad KiCad files?
From the Scoop79/macropad- repository on GitHub, at the commit this page was made from: the board is makropad/1.kicad_pcb and its schematic makropad/1.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Makropad design in my own project?
Its repository states no licence, so its author keeps all rights: ask Scoop79 before reusing the design.
Similar boards
- 2 layers66.9 × 74.5 mm

- 2 layers86.4 × 64.8 mm

- 2 layers36.2 × 26.8 mm

Esp32 minimal
atopile/atopile
Design circuit boards with code! ✨ Get software-like design reuse 🚀, validation, version control and collaboration in hardware; starting with electronics ⚡️
20 parts4kMIT - 2 layers108.1 × 393.8 mm

Sweep compact ble
davidphilipbarr/Sweep
Sweep - a small promicro based keyboard inspired by the Ferris.
20 parts2.1k - 2 layers26 × 15.9 mm

TPS54340 Buck Regulator
rusefi/rusefi
rusefi - GPL internal combustion engine control unit
20 parts1.2k - 2 layers67.6 × 30.5 mm

Rgb to hdmi
hoglet67/RGBtoHDMI
Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI
20 parts1kGPL-3.0 - 2 layers44.3 × 28.7 mm

Lin bus adapter esp32
hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!
20 parts915 - 2 layers89.5 × 61.6 mm

FreeDeck TH 2020-02
FreeYourStream/freedeck-hardware
all the stuff you need to build your own FreeDeck
20 parts772