AI agents & screen readers: for a machine-readable, text-only catalogue, start at /llms.txt. Products are available as Markdown (/products.md, /products/{handle}.md) and JSON (/products.json, /products/{handle}.json).
Store

Adafruit

$19.45 |
In stock
No reviews yet

The Adafruit KB2040 is an RP2040-powered board designed specifically for mechanical keyboard builds, in the Arduino Pro Micro form factor. With castellated p...

Stock availability

In our warehouse
7 in stock
Available with leadtime
100 available
Estimated Delivery
Arrives
Disclaimer
View Markdown
Secure checkout

The Adafruit KB2040 is an RP2040-powered board designed specifically for mechanical keyboard builds, in the Arduino Pro Micro form factor. With castellated pads, USB-C, 8 MB of Flash, and a STEMMA QT / Qwiic connector, it's a drop-in replacement for Pro Micro boards with significantly more power and storage.

Featuring 20 GPIO pins (18 on castellated pads plus 2 on the STEMMA QT port), the KB2040 easily supports up to 100-key matrices or common 65% 5×15 keyboard layouts. It runs CircuitPython, MicroPython, or C/C++ via the Pico SDK, with a built-in UF2 bootloader for drag-and-drop firmware flashing.

Key Features

  • Pro Micro Form Factor – 1.3" × 0.7" with near-identical pinout; castellated pads for direct soldering
  • RP2040 Dual-Core Cortex M0+ – 125 MHz, 264 KB RAM
  • 8 MB SPI Flash – Generous storage for CircuitPython, KMK, or custom firmware
  • USB-C Connector – Modern connection with built-in ROM UF2 bootloader
  • 20 GPIO Pins – 18 on pads + 2 via STEMMA QT; 4× ADC, 16× PWM, 2× I2C, 2× SPI, 2× UART
  • STEMMA QT / Qwiic Connector – End-mounted I2C port for plug-and-play accessories or extra GPIO
  • D+ and D− Breakouts – Extra USB data pins for alternative connection options
  • RAW Power Output – 5V output for NeoPixels; jumper to bypass 500 mA fuse for up to 2A
  • RGB NeoPixel – Onboard addressable LED for status indication
  • Reset & Boot Buttons – Boot button doubles as user input GPIO

Ideal For

  • Custom mechanical keyboard builds (up to 100-key matrices)
  • Drop-in Pro Micro replacement with RP2040 power
  • CircuitPython and KMK keyboard firmware projects
  • Compact RP2040 projects needing castellated pads and USB-C

Package Contents

  • 1× Adafruit KB2040 (RP2040 Kee Boar Driver)

Resources

Jargon buster

Plain-language definitions for the technical terms used above.

ADC
An analogue-to-digital converter reads a changing voltage and turns it into a number the microcontroller can use. It matters when connecting analogue sensors such as light, sound, or variable-resistor sensors.
Bootloader
Small starter software on a microcontroller that lets new code be uploaded before the main program runs. Knowing how to enter bootloader mode matters when you need to program the board or recover it after a faulty sketch.
CircuitPython
A beginner-friendly version of Python designed to run directly on microcontroller boards. If a product supports CircuitPython, you can often program it by copying code files onto the board rather than setting up a more complex toolchain.
GPIO
General-purpose input/output pins are microcontroller pins you can set in software to read signals, switch devices on and off, or connect to peripherals. The number of GPIO pins matters because it limits how many buttons, LEDs, sensors, and other parts you can wire directly to the board.
I2C
I2C is a two-wire communication bus used by many sensors and small modules. It matters because several I2C devices can share the same two wires, but each device needs a compatible address and your controller must support I2C.
LED
A light-emitting diode (LED) is a small electronic component that emits light when current flows through it in the correct direction. Because it only conducts one way, its polarity matters, and a through-hole LED must be soldered the correct way around to light up.
MicroPython
A version of the Python programming language made to run on microcontrollers. It matters because it lets beginners write readable code to control LEDs, sensors, motors and displays without needing to start with lower-level languages.
NeoPixel
A type of addressable LED system where colour data is sent along a single digital data line from one LED or controller to the next. Compatibility matters because the timing and signal format must match for the lights or driver board to respond correctly.
PWM
Pulse Width Modulation is a way for a digital pin to simulate variable output power by switching on and off very quickly. It matters for controlling things like LED brightness, motor speed, or servo-style signals from a microcontroller pin.
Qwiic
Qwiic is a plug-in connector system for I2C devices that uses small 4-pin cables, so you can connect compatible sensors without soldering. It matters because your controller or adapter also needs Qwiic, or you will need a cable or breakout to wire it up.
RAM
RAM (random-access memory) is fast, temporary memory a device uses for working data while it is running; in its common volatile form, its contents are lost when power is removed. Some devices offer a mode that applies settings to RAM only, which is handy for testing changes temporarily because they are not stored permanently and disappear at power-off.
RGB
Short for red, green and blue, the three primary colours of light that are mixed in varying amounts to make a wide range of colours. In electronics RGB can refer to an LED or pixel that blends these three colours, or to a colour signal or interface that carries separate red, green and blue channels.
RP2040
The RP2040 is a dual-core Arm Cortex-M0+ microcontroller chip from Raspberry Pi, used on many maker boards and offering programmable I/O, multiple GPIO pins and reasonable processing speed. Code and accessories built for that chip should work where RP2040 compatibility is listed, though demanding tasks such as reading a camera can require careful pin allocation and timing.
SPI
A fast serial communication bus often used for displays, memory cards, and sensors. It matters because SPI devices need specific pins for clock and data, plus a separate chip-select line for each device.
STEMMA
A plug-and-cable connection system used on some maker electronics boards to make wiring simpler. If a product uses STEMMA, you need the matching cable or connector type to plug it in without soldering.
STEMMA QT
A small plug-in connector system for I2C boards that lets you connect compatible sensors and controllers without soldering. It matters because it can make wiring faster and less error-prone, especially when adding several small modules to a project.
UART
UART is a simple asynchronous serial interface that sends data over separate transmit and receive wires, usually labelled TX and RX, with both ends set to the same baud rate. It is a common way for microcontrollers and other serial devices to exchange data.
USB-C
USB-C is a small, reversible USB connector that can carry power, data and, on some devices, video over a single cable. The same connector can range from charging only to high-speed data, so the functions a given port actually supports vary.

adafruit kb2040

Document · 15.4 MB · Click any page to view full size

Download PDF

Resources & Downloads

Guides, code examples, and more

Related Tutorials

Free guides on learn.littlebird.com.au

Stella
Stella Expert

Ask me anything about this product

Maddy, co-founder of Little Bird

Need help? We're here for you!

Hi, I'm Maddy. My team and I are ready to help with your order or any questions.