Yeah, this keyboard is still every bit as amazing and impressive now as I originally thought.
I did make some optimizations to the RGB Matrix though. I need to document it down here so I don’t forget.
First of all, review the QMK RGB Matrix docs.
Second, I set layer 0 (case 0) in the keymap.c to not have a color. This way, I can modify the config.h file with my default defines.
Third, I modified the config.h with my default defines thusly:
- #define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_SOLID_COLOR
- #define RGB_MATRIX_STARTUP_HUE 169
- #define RGB_MATRIX_STARTUP_SAT 255
- #define RGB_MATRIX_STARTUP_SPD 127
- #define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS
What these defines do precisely is simple. First, it establishes the default matrix pattern that I want when it first boots up—the single color. Second, it sets the hue value to blue (169). Third, it sets the saturation to full (255). Fourth, it sets the speed to 127. Last, it sets the brightness to maximum. In this way, I get whatever pattern I want to set to be my default layer color/pattern. Then, when I press my layer keys, they set the colors I wanted per the matrix index. It’s perfect!
Also, there are a bunch of additional defines for disabling unwanted, unnecessary RGB Matrix patterns. Remember, there are something like 32 patterns, and they take up value space. I had to disable several just before I could compile successfully due to file size limitations! In the end, I only kept a few: alpha mods; raindrops; and jellybean raindrops. I used the disable defines for the rest to reduce the size of the firmware.
How about you? What QMK RGB Matrix patterns are you using? And how are you doing layer indication?