* Keyboard: revamp frosty-flake leds This commit transitions bpiphany/frosty_flake to led_update_{kb,user} and rewrites the AVR bit twiddling logic to use the standard QMK GPIO API. * Keyboard: rewrite frosty_flake's matrix reader to be a lite custom matrix This commit replaces frosty_flake's custom matrix and debounce logic with a "lite" custom matrix. In addition to being somewhat clearer, this allows a consumer of the flake board to choose their own debouncing algorithm. The one closest to the implementation originally in use is sym_g, but this opens us up to supporting eager_pk and eager_pr. The original matrix code was 18 columns for 8 rows, but using a single row read and unpacking the bits into individual columns. To simplify, I've changed the key layout to be 8C 18R instead of 18C 8R: this lets us use a single read directly into the matrix _and_ drop down to a uint8_t instead of a uint32_t for matrix_row_t. Since we're no longer implementing our own debouncing and row unpacking, we save ~400 bytes on the final firmware image. Fully tested against a CM Storm QFR hosting the flake -- this commit message was written using the new matrix code. Firmware Sizes (assuming stock configuration as of 42d6270f2) Matrix+Debounce Size (bytes) --------------- ------------ original 17740 new + sym_g 17284 new + eager_pr 18106 new + eager_pk 18204 I expect that there are some scanning speed benefits as well. * Keyboard: update frosty_flake's UNUSED_PINS * Keyboard: Remove meaningless weak redefinitions from frosty These are not necessary (and all of them already live somewhere in Quantum).
Frosty Flake Controller
This is the firmware for Rev. 20140521 of the Frosty Flake controller by Bathroom Epiphanies, a replacement controller for the Cooler Master Quick Fire Rapid.
The code was adapted from the BathroomEpiphanies TMK Firmware, but has been cleaned up to match the schematic and gone through some minor refactoring for QMK.
104 and 87 layout support
Support for both 104 key and 87 key layouts is provided. See the
keymaps default
(104) and tkl
(87) for example layouts.
Keyboard Maintainer: QMK Community
Hardware Supported: Frosty Flake
Hardware Availability: 1upkeyboards
Make example for this keyboard (after setting up your build environment):
104 key default layout:
make bpiphany/frosty_flake:default
To directly flash the frosty_flake after compiling use:
make bpiphany/frosty_flake:default:dfu
87 key tkl layout:
make bpiphany/frosty_flake:tkl:dfu
See the build environment setup and the make instructions for more information. Brand new to QMK? Start with our Complete Newbs Guide.