* Disable RESET keycode because of naming conflicts * Add Pico SDK as submodule * Add RP2040 build support to QMK * Adjust USB endpoint structs for RP2040 * Add RP2040 bootloader and double-tap reset routine * Add generic and pro micro RP2040 boards * Add RP2040 onekey keyboard * Add WS2812 PIO DMA enabled driver and documentation Supports regular and open-drain output configuration. RP2040 GPIOs are sadly not 5V tolerant, so this is a bit use-less or needs extra hardware or you take the risk to fry your hardware. * Adjust SIO Driver for RP2040 * Adjust I2C Driver for RP2040 * Adjust SPI Driver for RP2040 * Add PIO serial driver and documentation * Add general RP2040 documentation * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> Co-authored-by: Nick Brassel <nick@tzarc.org>
5.2 KiB
Compatible Microcontrollers
QMK runs on any USB-capable AVR or ARM microcontroller with enough flash space - generally 32kB+ for AVR, and 64kB+ for ARM. With significant disabling of features, QMK may just squeeze into 16kB AVR MCUs.
Features within QMK may or may not be compatible with every microcontroller.
Atmel AVR
The following use LUFA as the USB stack:
- ATmega16U2 / ATmega32U2
- ATmega16U4 / ATmega32U4
- SparkFun Pro Micro (and clones)
- PJRC Teensy 2.0
- Adafruit Feather 32U4
- AT90USB64 / AT90USB128
- PJRC Teensy++ 2.0
- AT90USB162
Certain MCUs which do not have native USB will use V-USB instead:
ARM
You can also use any ARM chip with USB that ChibiOS supports. Most have plenty of flash. Known to work are:
STMicroelectronics (STM32)
- STM32F0x2
- STM32F103
- Bluepill (with STM32duino bootloader)
- STM32F303
- QMK Proton-C
- STM32F401
- WeAct Blackpill
- STM32F405
- STM32F407
- STM32F411
- WeAct Blackpill
- STM32F446
- STM32G431
- STM32G474
- STM32L412
- STM32L422
- STM32L432
- STM32L433
- STM32L442
- STM32L443
WestBerryTech (WB32)
NXP (Kinetis)
Raspberry Pi
For a detailed overview about the RP2040 support by QMK see the dedicated RP2040 page.
Atmel ATSAM
There is limited support for one of Atmel's ATSAM microcontrollers, that being the ATSAMD51J18A used by the Massdrop keyboards. However, it is not recommended to design a board with this microcontroller as the support is quite specialized to Massdrop hardware.
RISC-V
GigaDevice
ChibiOS-Contrib has support for the GigaDevice GD32VF103 series microcontrollers and provides configurations for the SiPeed Longan Nano development board that uses this microcontroller. It is largely pin and feature compatible with STM32F103 and STM32F303 microcontrollers.