Introduction

RMK is a high-performance and feature-rich keyboard firmware framework, designed for flexibility and ease of customization. RMK leverages the power of Rust and it's great async ecosystem, provides comprehensive and modern functionality across a wide range of microcontrollers.

Features

  • Broad Microcontroller Support: ESP32, nRF52, STM32, RP2040/2350, CYW43(Raspberry Pi Pico W), etc.
  • Wired and Wireless Connectivity​​: Offers both wired (USB) and wireless (BLE) connections, with optimized low-power performance and multi-profile support.
  • Simple Configuration: Configure your keyboard easily through a single TOML file.
  • Advanced Feature Set: Packed with modern features, including on-the-fly keymap customization, advanced layer management, powerful macros and multi-role key support (e.g., Tap-Hold, TapDance, Morse Key)
  • Split Keyboard Support: Natively supports both wired and wireless split keyboard.

Next Steps

TutorialA step-by-step tutorial for creating your first RMK keyboard
FeaturesAll keyboard features that RMK supports
ConfigurationExplore how to configure your RMK keyboard
ExamplesCheck the built-in examples for various microcontroller
ON THIS PAGE