[Keyboard] Add Keyboardio Model 100 - #26397
Open
shieldsd wants to merge 1 commit into
Open
Conversation
shieldsd
force-pushed
the
keyboardio-model100-pr
branch
from
August 11, 2026 11:26
55389c5 to
f841ebe
Compare
drashna
reviewed
Aug 13, 2026
zvecr
reviewed
Aug 13, 2026
shieldsd
force-pushed
the
keyboardio-model100-pr
branch
2 times, most recently
from
August 14, 2026 10:51
7a4025e to
132fc8b
Compare
shieldsd
pushed a commit
to shieldsd/qmk_firmware
that referenced
this pull request
Aug 14, 2026
Bring the personal branch's shared port files in line with the upstream PR (qmk#26397) after review round 1: - matrix.c: convert to lite custom matrix (matrix_init_custom / matrix_scan_custom); core owns the matrix array, debounce and print. - default keymap: drop the numpad-colour indicator to keep it minimal. - keyboard.json / rules.mk: stop selecting `bootloader: stm32duino` by name (which lets platforms/chibios/bootloader.mk hard-override DFU_ARGS back to the Maple 1EAF:0003 default, clobbering ours). Declare the board and set the bootloader flags manually so our 3496:0005 DAPBoot DFU identifiers survive. The dshields personal keymap is unchanged and still builds/links.
shieldsd
force-pushed
the
keyboardio-model100-pr
branch
5 times, most recently
from
August 15, 2026 12:05
5010408 to
59df44d
Compare
The Model 100 shares the Model 01's split hardware design: both halves are ATtiny key scanners the main MCU talks to over I2C, using the same wire protocol, scanner addresses, and 64-LED layout. The custom matrix and LED drivers are therefore adapted from the Model 01. The main MCU differs: the Model 01's ATmega32U4 (AVR) is replaced by a GD32F303CG (ARM Cortex-M4). This is built as an STM32F103 with the high-density board variant, following the mlego/m65/rev2 precedent, so no dedicated GD32 ChibiOS port is required. Scanner power moves to B9 (open-drain), power-sense to B14/B15, and the scanners hang off I2C1 (B6/B7). Pin assignments and the 8 MHz HXTAL / 48 MHz USB clock were cross-checked against the Kaleidoscope Model 100 hardware plugin and the ArduinoCore-GD32-Keyboardio keyboardio_model_100 variant.
shieldsd
force-pushed
the
keyboardio-model100-pr
branch
from
August 15, 2026 12:35
59df44d to
2c74538
Compare
drashna
approved these changes
Aug 16, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The Model 100 shares the Model 01's split hardware design: both halves are ATtiny key scanners the main MCU talks to over I2C, using the same wire protocol, scanner addresses, and 64-LED layout. The custom matrix and LED drivers are therefore adapted from the Model 01.
The main MCU differs: the Model 01's ATmega32U4 (AVR) is replaced by a GD32F303CG (ARM Cortex-M4). This is built as an STM32F103 with the high-density board variant, following the mlego/m65/rev2 precedent, so no dedicated GD32 ChibiOS port is required. Scanner power moves to B9 (open-drain), power-sense to B14/B15, and the scanners hang off I2C1 (B6/B7).
Pin assignments and the 8 MHz HXTAL / 48 MHz USB clock were cross-checked against the Kaleidoscope Model 100 hardware plugin and the ArduinoCore-GD32-Keyboardio keyboardio_model_100 variant.
Description
Types of Changes
Issues Fixed or Closed by This PR
Checklist