qmk/docs/compatible_microcontrollers.md
Stefan Kerkmann d717396708
[Core] Add Raspberry Pi RP2040 support (#14877)
* 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>
2022-06-30 13:19:27 +02:00

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:

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)

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.