Skip to main content

Supported Hardware

With the solid technical foundation of Zephyr™ RTOS, ZMK can support a wide diversity of hardware targets. That being said, there are currently only a few specific boards/shields that have been implemented and tested by the ZMK contributors.

Keyboards

Onboard Controller Keyboards

Keyboards with onboard controllers are single PCBs that contain all the components of a keyboard, including the controller chip, switch footprints, etc.

Composite Keyboards

Composite keyboards are composed of two main PCBs: a small controller board with exposed pads, and a larger keyboard PCB (a shield, in ZMK lingo) with switch footprints and a location where the controller is added. This location is called an interconnect. Multiple interconnects can be found below.

Pro Micro Interconnect

The SparkFun Pro Micro grew popular as a low cost ATmega32U4 board with sufficient GPIO and peripherals to work for many keyboard needs. Since the original Pro Micro, many pin compatible boards have appeared, with various changes or improvements, such as the Elite-C w/ USB-C, nice!nano with nRF52840 wireless. Note: ZMK doesn't support boards with AVR 8-bit processors, such as the ATmega32U4, because Zephyr™ only supports 32-bit and 64-bit platforms. As a result, controllers like the SparkFun Pro Micro and the Elite-C are *not* supported by ZMK.

Boards
Shields

MakerDiary nRF52840 M.2 Interconnect

The MakerDiary nRF52840 M.2 module is a module using the M.2/NGFF form factor to expose a large number of GPIO pins, allowing use of a variety of peripherals such using I2C, SPI, etc.

Boards
Shields

Seeed XIAO Interconnect

The Seeed(uino) XIAO is a popular smaller format micro-controller, that has gained popularity as an alterative to the SparkFun Pro Micro. Since its creation, several pin compatible controllers, such as the Seeeduino XIAO BLE, Adafruit QT Py and Adafruit QT Py RP2040, have become available.

Boards
Shields

    Other Hardware#

    In addition to the basic keyboard functionality, there is some initial support for additional keyboard hardware:

    • Encoders
    • Displays
    • RGB Underglow
    • Backlight

    Until detailed documentation is available, feel free to ask questions about how these are supported in the Discord server.

    Contributing#

    If you'd like to add support for a new keyboard shield, head over to the New Keyboard Shield documentation.