-
Notifications
You must be signed in to change notification settings - Fork 0
RP2040 controllers
The "BKB standard" is a standard pinout that was defined by a committee of designers on the BastardKB Discord server when the first RP2040 were created in 2022.
These boards are designed to be a drop-in replacement for keyboards wanting an upgrade from ATmega32u4 based pro micros (eg. Elite-C).
They are using the RP2040 microcontroller chip designed by Raspberry Pi, which features dual M0+ processors at up to 133MHz
Controller | Pin-compatible | Flash size | Vbus detection | Notes |
---|---|---|---|---|
0xB2 Splinky | Yes | varies (up to 16MB) | Yes | Included in Bastard Keyboards kits |
Elite-Pi | Yes | 2MB | Yes | |
Sea-picro | Yes | 16MB | Yes | One-button Reset / Bootloader circuit |
Frood | Unconfirmed (not tested yet) | 2MB | Yes | |
0xCB Helios | Unconfirmed (not tested yet) | 16MB | Yes | Also with a One-button Reset / Bootloader circuit. Available at Keeb Supply |
Liatris | Unconfirmed (not tested yet) | 16MB | Yes | Also with a One-button Reset / Bootloader circuit. Not available yet. |
SparkFun Pro Micro - RP2040 | No* (correct pinout, but no bottom row) | 16MB | No | The QWIIC connector causes tolerance issues with the BKB adapter, and the reset buttons collide with the pin headers |
Adafruit KB2040 - RP2040 Kee Boar Driver | No (different pinout) | 8MB | No | |
Blok | No (different pinout, namely i2c pins) | 16MB | Unspecified |
All controllers above marked as pin-compatible, and using the same second-stage bootloader as the Splinky) should be compatible out-of-the-box with the Bastard Keyboard firmwares targeting the Splinky v3, ie. splinky_3
firmwares.
See QMK's RP2040 second stage bootloader selection documentation.
For the USB-C port to align perfectly in the Bastard Keyboard cases, the controller needs to use a USB-C connector of specific dimensions, otherwise it might be slightly offset on the Z axis.
The Splinky controller sold as part of the Bastard Keyboard kits are using a compatible port. If you are sourcing your own controller, make sure that the USB-C port dimensions are correct.