Adafruit MACROPAD RP2040 - image 1
1 / 4
Adafruit·macropad

Adafruit MACROPAD RP2040

RP2040-powered 3×4 mechanical macropad with 12 NeoPixels, a 128×64 OLED display, rotary encoder, speaker, and STEMMA QT — fully programmable via CircuitPython or Arduino.

Starting from

$34.95

Use Cases

Specifications

ArchitectureARM Cortex-M0+
CPU Cores2
Clock Speed130 MHz
Flash8MB SiP
GPIO Level3.3V
Power Input5V
Storagenone
Dimensions104 × 59.5 × 29 mm
Weight34 g

Components

MCUMCUDatasheet

Raspberry Pi RP2040 dual-core ARM Cortex-M0+ at ~130 MHz with 264 KB SRAM, PIO state machines, and native USB.

OLED Display DriverDisplay DriverDatasheet

Sino Wealth SH1106 SPI/I2C controller driving the 128×64 monochrome OLED panel.

12 individual WS2812B addressable RGB LEDs, one under each key switch for per-key backlighting.

Bus Interfaces

I2C
SCL: GPIO17SDA: GPIO16
USB
SPI

GPIO Map

GPIO0
KEY1 — key matrix
digital-inputdigital-output
GPIO1
KEY2 — key matrix
digital-inputdigital-output
GPIO2
KEY3 — key matrix
digital-inputdigital-output
GPIO3
KEY4 — key matrix
digital-inputdigital-output
GPIO4
KEY5 — key matrix
digital-inputdigital-output
GPIO5
KEY6 — key matrix
digital-inputdigital-output
GPIO6
KEY7 — key matrix
digital-inputdigital-output
GPIO7
KEY8 — key matrix
digital-inputdigital-output
GPIO8
KEY9 — key matrix
digital-inputdigital-output
GPIO9
KEY10 — key matrix
digital-inputdigital-output
GPIO10
KEY11 — key matrix
digital-inputdigital-output
GPIO11
KEY12 — key matrix
digital-inputdigital-output
GPIO16
SDA — I2C (STEMMA QT/OLED)
digital-inputdigital-output
I2C
GPIO17
SCL — I2C (STEMMA QT/OLED)
digital-inputdigital-output
I2C
GPIO17
NeoPixel data
digital-output
GPIO20
Encoder A
digital-inputpwm
GPIO24
Encoder B
digital-inputpwm
GPIO26
A0 — ADC/Speaker
analog-inputdigital-inputdigital-outputpwm
ADC
GPIO28
A2 — ADC
analog-inputdigital-inputdigital-output
ADC

Overview

The Adafruit MACROPAD RP2040 is a compact programmable keyboard controller built around the RP2040 dual-core microcontroller. The bare-bones kit ships with a 3×4 matrix of Cherry MX-compatible hot-swap sockets, 12 individually addressable NeoPixel RGB LEDs (one per key), and a 128×64 SH1106 monochrome OLED display — all you need to add are 12 key switches and keycaps of your choice.

A rotary encoder with 20 detents and push-button click sits at the top of the board, giving an additional control axis for volume, scrolling, or menu navigation. A small Class D amplifier drives the built-in 8 mm speaker for click feedback, notifications, or simple audio effects. Four M3 mounting bosses allow the MACROPAD to be secured inside an enclosure or desktop stand.

The RP2040 offers 264 KB of SRAM and 8 MB of SPI Flash — enough to run full CircuitPython with display and audio libraries simultaneously. QMK firmware is a common community choice for those who want traditional keyboard firmware. The USB-C connector handles HID keyboard/consumer-control reports so the MACROPAD is recognised by every OS without drivers.

A STEMMA QT port enables expansion with I2C sensors or secondary displays. The board is designed for both macro-key shortcuts and as an educational platform for learning embedded programming through a tangible, interactive device.

Use Cases

1

Resources

Where to Buy

Available Software

3

Explore more of the directory — popular use cases, firmware, and specs to browse next.