Skip to the content
PCBKitNew board
2 layers81.4 × 81.4 mmMacropad, the printed circuit board in 3D

A macropad.

Size
81.4 × 81.4 mm
Copper layers
2
Thickness
1.6 mm
Parts
36
Nets
28
Pads
280
Tracks, vias
329, 24
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
30 Dec 2025
Updated
26 Feb 2026

Overview

Macropad is an open-source printed circuit board by skorokithakis, from the skorokithakis/macropad repository on GitHub. It is a 2-layer board of 81.4 × 81.4 mm with 36 parts on 28 nets, routed with 329 tracks and 24 vias.

Its parts include 18 switches, 16 diodes, 1 IC and 1 connector. It belongs with the keyboards and input boards and the AVR (ATmega, ATtiny) boards of this library.

README

README.md

Stavropad

A 4x4 macro pad running ZMK firmware on a Nice!Nano v2.

Features

  • 15 normal layers with 15 usable keys each
  • Layer switching via dedicated layer-switching key
  • All hotkey layers send RCtrl+Shift+Cmd + a character (for use as global hotkeys)
  • Idle deep sleep enabled; wakes on any key press after inactivity
  • 15 Bluetooth profiles via dedicated Bluetooth control screen

Layer access

Hold the layer-switching key (bottom-right, key 15) to activate the layer switcher. While holding it:

Normal layers (tap):

  • Tap keys 0-11 to switch to normal layers 0-11.
  • Tap keys 12-14 to switch to normal layers 12-14.

Special layers (hold for 1 second, ordered by increasing danger):

  • Key 0: Type battery voltage (for example: "Battery: 3.98V").
  • Key 1: Open Bluetooth control.
  • Key 2: Enter bootloader mode.

Layers

See KEYMAPS.md for visual layer references.

text
Key positions:
 0   1   2   3
 4   5   6   7
 8   9  10  11
12  13  14  15

Normal layers

  • Layer 0: Hotkeys (numbers and symbols)
  • Layer 1: Hotkeys (letters A-P)
  • Layer 2: Hotkeys (letters Q-Z and punctuation)
  • Layer 3: Hotkeys (function keys and modifiers)
  • Layer 4: Text macros
  • Layer 5: Media controls
  • Layer 6: Mouse control
  • Layer 7: Gaming
  • Layer 8: Numpad
  • Layer 9: Cluster
  • Layer 10: OnShape Sketch Tools
  • Layers 11-14: Placeholder layers

Special layers

  • Bluetooth control: Select Bluetooth profiles 0-14 and clear bonds.
  • Battery voltage: Types a voltage readout.
  • Bootloader: Enters bootloader mode.

OnShape sub layers (accessed from Layer 10)

  • Layer 18: OnShape Constraints (hold key 10). Shortcuts: D, H, V, I, T, E, B, Shift + L, Shift + O, Shift + M, Shift + Q, Shift + J, Shift + K, Shift + U, Shift + G.
  • Layer 19: OnShape Features (hold Escape). Shortcuts: Shift + E (Extrude), Shift + W (Revolve), Shift + F (Fillet). Remaining keys are empty.
  • Layer 20: OnShape Numbers (hold key 11). Numpad layout (7-8-9, 4-5-6, 1-2-3, 0) with *, mm macro, +, decimal point, and backspace.

Customize

Edit config/stavropad.keymap.

Building

Run the build script:

bash
./build.sh        # PCB version (default)
./build.sh -v 1   # Hand-wired version
./build.sh -v 2   # PCB version

This uses Docker to build the firmware. Output is build/zephyr/zmk.uf2. The custom shield and keymap live under config/boards/shields/stavropad.

Pin mappings for each version are in pins_v1.overlay and pins_v2.overlay.

Flashing

  1. Put the board in bootloader mode (hold the layer-switching key + hold key 2 for 1 second).
  2. Copy build/zephyr/zmk.uf2 to the USB mass storage device that appears.

Parts

36
QtyValueFootprintReferences
16DDiode_SMD:D_SOD-323D1, D2, D3, D4, D5, D6, D7, D8, D9, D10, D11, D12, D13, D14, D15, D16
16SW_Pushkey-switches:SW_MX_Kailh_Choc_V1V2_HotSwap_HybridSW1, SW2, SW3, SW4, SW5, SW6, SW7, SW8, SW9, SW10, SW11, SW12, SW13, SW14, SW15, SW16
1Conn_01x02_PinConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ1
1ProMicroTheOneProMicro:TheOneProMacroU2
1SW_DIP_x01Button_Switch_SMD:SW_SPDT_Shouhan_MSK12C02SW17
1SW_PushButton_Switch_SMD:SW_SPST_TS-1088-xR020SW18

Questions

How big is the Macropad PCB?

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

What parts does the Macropad use?

36 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 skorokithakis/macropad repository on GitHub, at the commit this page was made from: the board is pcb/macropad.kicad_pcb and its schematic pcb/macropad.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 skorokithakis before reusing the design.

Similar boards

  • 2 layers65 × 30 mmRgb to hdmi, the printed circuit board in 3D

    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

    36 parts1kGPL-3.0
  • 2 layers55 × 70 mmArduino v1, the printed circuit board in 3D

    Arduino v1

    hackclub/OnBoard

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

    36 parts915
  • 2 layers50.4 × 24.8 mmLEDboardRev3, the printed circuit board in 3D

    LEDboardRev3

    Architeuthis-Flux/Jumperless

    A jumperless breadboard

    36 parts914
  • 2 layers45.7 × 31.8 mmLEDx16 board, the printed circuit board in 3D

    LEDx16 board

    tardate/LittleArduinoProjects

    a collection of "Little Electronic & Arduino Projects", most involving electronics or an Arduino in one way or another!

    36 parts803MIT
  • 2 layers32 × 24 mmEsp onelayer3, the printed circuit board in 3D

    Esp onelayer3

    cnlohr/colorchord

    Chromatic Sound to Light Conversion System

    36 parts712
  • 2 layers69 × 53.8 mmTUSS4470 shield, the printed circuit board in 3D

    TUSS4470 shield

    Neumi/open_echo

    Open Source echo sounder / depth sounder / SONAR for bathymetry and research. Arduino based and compatible.

    36 parts530
  • 2 layers99.1 × 53.3 mmABSIS Mega, the printed circuit board in 3D

    ABSIS Mega

    jrsteensen/OpenHornet

    OpenHornet 1:1 F/A-18C Simulator Repository

    36 parts431
  • 2 layers16.1 × 119 mmConnectorL, the printed circuit board in 3D

    ConnectorL

    thpoll83/PolyKybd

    PolyKybd

    36 parts411CERN-OHL-W-2.0