qmk-userspace
External QMK userspace for a hand-built Corne (crkbd rev1). Custom OLED font, mirrored American flag RGB Matrix effect, and a firmware workaround for three dead underglow LEDs.
Last login: Tue May 26 09:42:18 on ttys003 # me @ lintuxt.ai in ~/dev/qmk-userspace [09:42:24] $ qmk userspace-compile Ψ Compiling keymap with rules.mk [OK] Size after: text data bss dec hex filename 28644 24 389 29057 7181 .build/crkbd_rev1_lintuxt.elf Copying crkbd_rev1_lintuxt.hex to qmk_firmware folder [OK] # me @ lintuxt.ai in ~/dev/qmk-userspace [09:42:31] $
What's in this firmware
Custom font + renderer
Both halves show vertically-stacked lowercase letters in a hand-drawn 32×128 font. Master shows the active layer name, slave shows alexi. Variable-width glyphs with proportional spacing — not a fixed grid.
LINTUXT_AMERICAN matrix effect
Two mirrored American flags — one per half — with a 2D wind-ripple wave so the fabric appears to move. Anti-aliased stripe transitions, EEPROM-tunable underglow hue, split-synced between halves.
Dead-LED chain shift
Three RHS underglow LEDs are physically dead and hardware-bypassed with a jumper. The firmware applies a +4 chain shift on the right half so logical color positions match the physical chain.
Install in one line
Requires the qmk CLI and an upstream QMK checkout (kept at ../qmk, pinned to QMK 0.32.14).
qmk config user.qmk_home="$(cd ../qmk && pwd)"
qmk config user.overlay_dir="$(pwd)"
qmk userspace-compile
The build emits crkbd_rev1_lintuxt.hex at the repo root.
Quickstart
Put the Corne into the caterina bootloader (reset button on the half you're flashing) and run:
qmk flash crkbd_rev1_lintuxt.hex
Or drop the hex into QMK Toolbox. Flash both halves — they share the same firmware image.
Why it exists
I built my Corne in 2020. For six years I ran essentially stock firmware on it — the default QMK splash on the OLEDs, a generic rainbow on the underglow, and three dead LEDs on the right half that I'd hardware-bypassed with a jumper but never worked around in firmware.
Every customization I wanted was its own multi-day project. I had a list. I never shipped it.
The whole list closed in one afternoon with Claude Code: a bespoke OLED font drawn pixel-by-pixel, a custom RGB Matrix effect (LINTUXT_AMERICAN — mirrored American flag with a wind-ripple wave, per half), and a chain-shift workaround for the dead RHS LEDs. The full story: Six years of "someday", shipped in an afternoon.
This repo is the firmware that came out of that afternoon.
Documentation · License
Documentation
The keymap, font, and RGB effect live under keyboards/crkbd/keymaps/lintuxt/:
keymap.c— layers, custom font, OLED renderingrgb_matrix_user.inc—LINTUXT_AMERICANeffectconfig.h,rules.mk— build config
To bump QMK: cd ../qmk && git fetch --tags && git checkout <newer-tag> && qmk git-submodule, then rebuild and resolve any keymap drift.
License
ISC — see the header on keymap.c.