Reimplemented as a util script with std lib only. Decision to add dependencies moved elsewhere. This script should be able to stand alone. Add some docu on how to use compile.py
2.5 KiB
Officially supported microcontrollers
While most CircuitPython devices are great for hand wired keyboards, most keyboards are designed to accept a Pro Micro. The boards listed below either are, or can be adapted to that pinout to use common keyboards already on the market.
nice!nano
Features include
- Pro Micro pinout
- Both USB HID and Bluetooth support
- Can do Bluetooth split keyboards with no wires at all
- Has battery support including charging
Downsides
- $25 USD per microcontroller at most retailers
- Not enough space to run KMK without compiling
Pre-compiling KMK for nice!nano
As the nice!nano has limited flash memory you'll need to compile KMK. To do that you'll need to download and install the compatible mpy-cross for your Operating System. Don't forget to add it to your PATH, test by running mpy-cross
from a shell (Powershell, Bash, Fish, etc). Once that's set up, run either make compile
(if you have make
) or python util/compile.py
to generate the .mpy
versions of KMK files. Then copy the whole compiled kmk/
directory to your keyboard.
Common Retailers
ItsyBitsy M4 Express
Features include
- Affordable at $15 USD
- Can run most features of KMK including RGB
Downsides
- Needs adapted to work with Pro Micro pinout keyboards. Adapter can be found HERE
Common Retailers
RP2040
Features include
- Very affordable
- Very powerful for the price
Downsides
- Little support for keyboard kits
Common Retailers
Adafruit ItsyBitsy nRF52840 Express
Features include
- Both USB HID and Bluetooth support
- More affordable than the nice!nano at only $18
Downsides
- Needs adapted to work with Pro Micro pinout keyboards. Adapter can be found HERE
- No battery support without addon board found HERE
Common Retailers
Other microcontrollers
What you'll need to have at minimum
- CircuitPython
- 256KB of flash storage
- HID over USB and/or Bluetooth.