Skip to the content
PCBKitNew board
2 layers71.5 × 61 mmMacropad, the printed circuit board in 3D

My simple 4-button macro pad design with an OLED screen.

Size
71.5 × 61 mm
Copper layers
2
Thickness
1.6 mm
Parts
8
Nets
14
Pads
40
Tracks, vias
45, 0
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
25 Mar 2026
Updated
30 Mar 2026

Overview

Macropad is an open-source printed circuit board by Dudek-wi, from the Dudek-wi/macropad repository on GitHub. It is a 2-layer board of 71.5 × 61 mm with 8 parts on 14 nets, routed with 45 tracks and 0 vias.

Its parts include 4 switches, 1 IC and 1 connector. It belongs with the keyboards and input and lEDs and displays boards of this library.

README

README.md

XIAO 4-key macropad (hackpad) with 128 by 32 OLED

Anyone looking for an easy-to-use macro panel will find what they’re looking for here. Built on the Seeeduino XIAO, it lives inside KMK Firmware using CircuitPython - so all actions speak without any need to compile. Four mechanical buttons connect straight into place while an OLED screen shows what matters.

I am fresh at this, my code stays simple for now. As my knowledge grows, I will make changes - step by step.

Features:

  • Python powers KMK Firmware: connect it and start using it.
  • OLED screen: A 128x32 SSD1306 display shows your device status.
  • Direct pin layout: A simple wiring configuration.

Keyboard shortcuts:

  • SW1- CTRL + C (copy)
  • SW2- CTRL + V (paste)
  • SW3- CTRL + Z (undo)
  • SW4- CTRL + SHIFT + ESC (Task Manager)

OLED screen displays two lines of text: "XIAO MACROPAD" and "Ready!".

BOM

  • 1x Seeed XIAO RP2040
  • 4x MX-Style switches
  • 1x 0.91 inch OLED display
  • 4x white blank DSA keycaps
  • 2x M3x16mm screws
  • 2x M3x5mmx4mm heats inserts
  • 1x custom PCB

Hardware Specification

Pin mapping:

  • SW1 - D10 - Key Switch 1
  • SW2 - D9 - Key Switch 2
  • SW3 - D8 - Key Switch 3
  • SW4 - D7 - Key Switch 4
  • OLED SDA - D4 - I2C Data
  • OLED SCL - D5 - I2C Clock

Oled pin

  1. Ground
  2. 3.3v
  3. SCL
  4. SDA

Software

  • kb.py: Handle hardware stuff
  • code.py: Controls the logic

Getting Started

  1. Flash CircuitPython onto the Seeeduino XIAO
  2. Start by placing the KMK folder along with the Adafruit libraries inside the lib/ directory of the device.
  3. Place kb.py together with code.py into the main folder named CIRCUITPY.
  4. A fresh signal kicks it back online, ready to act like keys. After that reset, typing begins without extra steps.
  • Folder lib/ kmk/ adafruit_bus_device/ "adafruit_ssd1306.py" "adafruit_framebuf.py"

Fine, just plug it in. Then off you go.

I make this project under the MIT License. You are free to use it.

Zrzut ekranu 2026-03-26 175812 Zrzut ekranu 2026-03-26 175825 Zrzut ekranu 2026-03-26 175856 Zrzut ekranu 2026-03-26 212112 *(This is a screenshot from Fusion360 render)

Parts

8
QtyValueFootprintReferences
4SW_PushButton_Switch_Keyboard:SW_Cherry_MX_1.00u_PCBSW1, SW2, SW3, SW4
1Conn_01x04_PinOLED_0.91inch_I2C-main:0.91_OLED_128x32_I2CJ1
1MOUDLE-SEEEDUINO-XIAOfootprints:XIAO-Generic-Hybrid-14P-2.54-21X17.8MMU1

The 6 most common of 8 parts.

Questions

How big is the Macropad PCB?

It measures 71.5 × 61 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Macropad use?

8 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 Macropad KiCad files?

From the Dudek-wi/macropad repository on GitHub, at the commit this page was made from: the board is PCB/test.kicad_pcb and its schematic PCB/test.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Macropad design in my own project?

Its repository states no licence, so its author keeps all rights: ask Dudek-wi before reusing the design.

Similar boards

  • 2 layers20.5 × 24.8 mmPi interface, the printed circuit board in 3D

    Pi interface

    opulo-inc/lumenpnp

    The LumenPnP is an open source pick and place machine.

    8 parts3.7k
  • 2 layers59.9 × 25.7 mmBuffer, the printed circuit board in 3D

    Buffer

    hoglet67/RGBtoHDMI

    Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI

    8 parts1kGPL-3.0
  • 2 layers52 × 12.6 mmUSB, the printed circuit board in 3D

    USB

    shanteacontrols/OpenDeck

    A platform for building interactive control and sensing devices using MIDI and OSC built with Zephyr RTOS.

    8 parts960Apache-2.0
  • 2 layers87.5 × 48.5 mm7 input macropad, the printed circuit board in 3D

    7 input macropad

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    8 parts915
  • 2 layers36.2 × 63.1 mmPicoMemcard pico, the printed circuit board in 3D

    PicoMemcard pico

    dangiu/PicoMemcard

    Emulating PSX Memory Card (or controller) using a Raspberry Pi Pico

    8 parts694GPL-3.0
  • 2 layers36 × 10 mmPCB4-PWR BTN Rev.A, the printed circuit board in 3D

    PCB4-PWR BTN Rev.A

    OLIMEX/DIY-LAPTOP

    Do It Yourself Open Source Hardware and Software Modular Hacker's Friendly Laptop

    8 parts578Apache-2.0