Table of contents
BKB standard
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
Pinout compatibility
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 | Optionally, 2 extra GPIO pins can be exposed by setting jumpers on the Elite-Pi for a total of 25 GPIO. |
Sea-Picro EXT | Yes | 8MB | Yes | One-button Reset / Bootloader circuit. Has an extra 5V level-shifted pin (GPIO 25) broken out. |
Frood | Yes | 2MB | Yes | |
0xCB Helios | Yes | 16MB | Yes | Has a One-button Reset / Bootloader circuit, and ESD protection. Available at Keeb Supply. Has an extra 5V level-shifted pin (GPIO 25) broken out. |
Liatris | Yes | 16MB | Yes | Available at splitkb.com. |
SparkFun Pro Micro - RP2040 | No* | 16MB | No | Pinout matches, but no bottom row. The reset buttons collide with pin headers when installed face-down. USB-C receptacle is top-mounted. |
Adafruit KB2040 - RP2040 Kee Boar Driver | No | 8MB | No | Different pinout, no bottom row. USB-C receptacle is top-mounted. |
Blok | No | 16MB | Unspecified | Different i2c pins, no bottom row. |
Firmware compatibility
All controllers above marked as pin-compatible, and using the QMK default W25Q080
second-stage bootloader, should be compatible out-of-the-box with the Bastard Keyboard firmwares.
Bootloader
See QMK’s RP2040 second stage bootloader selection documentation.
USB-C port compatibility
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.