diff options
author | Vino Rodrigues <366673+vinorodrigues@users.noreply.github.com> | 2022-02-09 16:42:01 +1100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-08 21:42:01 -0800 |
commit | bf4ce4169617140b31d781aa556c84477efea635 (patch) | |
tree | 43c418321f87f96013ad6e5ed032a6ec961cdccc | |
parent | 11e50f5ff1041abf36d17042bc282589c4a73bbf (diff) | |
download | qmk_firmware-bf4ce4169617140b31d781aa556c84477efea635.tar.gz qmk_firmware-bf4ce4169617140b31d781aa556c84477efea635.zip |
[Keyboard] refine LED Matrix LED positions on KBD67 Lite (#15769)
-rwxr-xr-x | keyboards/kbdfans/kbd67/mkiirgb/v3/v3.c | 56 |
1 files changed, 42 insertions, 14 deletions
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v3/v3.c b/keyboards/kbdfans/kbd67/mkiirgb/v3/v3.c index 85806aff5..306c22615 100755 --- a/keyboards/kbdfans/kbd67/mkiirgb/v3/v3.c +++ b/keyboards/kbdfans/kbd67/mkiirgb/v3/v3.c | |||
@@ -93,35 +93,63 @@ const is31_led PROGMEM g_is31_leds[DRIVER_LED_TOTAL] = { | |||
93 | {0, CS39_SW7, CS38_SW7, CS37_SW7} | 93 | {0, CS39_SW7, CS38_SW7, CS37_SW7} |
94 | 94 | ||
95 | }; | 95 | }; |
96 | |||
97 | #define __ NO_LED | ||
98 | #define CAPS_LOCK_LED_INDEX 30 | ||
99 | |||
96 | led_config_t g_led_config = { { | 100 | led_config_t g_led_config = { { |
97 | // Key Matrix to LED Index | 101 | // Key Matrix to LED Index |
98 | { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }, | 102 | { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }, |
99 | { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 }, | 103 | { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 }, |
100 | { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, NO_LED, 42, 43 }, | 104 | { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, __, 42, 43 }, |
101 | { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, NO_LED, 56, 57 }, | 105 | { 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, __, 56, 57 }, |
102 | { 58, 59, 60, NO_LED, NO_LED, 61, NO_LED, NO_LED, 62, NO_LED, 63, 64, NO_LED, 65, 66 } | 106 | { 58, 59, 60, __, __, 61, __, __, 62, __, 63, 64, __, 65, 66 } |
103 | }, { | 107 | }, { |
104 | // LED Index to Physical Position | 108 | // LED Index to Physical Position |
105 | {6,10},{20,10},{34,10},{48,10},{62,10},{76,10},{90,10},{104,10},{118,10},{132,10},{146,10},{160,10},{174,10}, {196,10},{217,10}, | 109 | // based on: https://gist.github.com/vinorodrigues/07fd735683856b2a06c7c52b9b3878cb |
106 | {9,23}, {27,23},{41,23},{55,23},{69,23},{83,23},{97,23},{111,23},{125,23},{139,23},{153,23},{167,23},{181,23}, {199,23},{217,23}, | 110 | {0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, {90, 0}, {105, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {202, 0}, {224, 0}, |
107 | {11,36},{30,36},{44,36},{58,36},{72,36},{86,36},{101,36},{115,36},{129,36},{143,36},{157,36},{171,36}, {194,36},{217,36}, | 111 | {4, 16}, {22, 16}, {37, 16}, {52, 16}, {67, 16}, {82, 16}, {97, 16}, {112, 16}, {127, 16}, {142, 16}, {157, 16}, {172, 16}, {187, 16}, {205, 16}, {224, 16}, |
108 | {15,49}, {38,49},{52,49},{66,49},{80,49},{94,49},{108,49},{122,49},{136,49},{150,49},{164,49}, {184,49},{203,49},{217,49}, | 112 | {6, 32}, {26, 32}, {41, 32}, {56, 32}, {71, 32}, {86, 32}, {101, 32}, {116, 32}, {131, 32}, {146, 32}, {161, 32}, {175, 32}, {200, 32}, {224, 32}, |
109 | {8,62},{25,62},{43,62}, {95,62}, {149,62},{166,62}, {189,62},{203,62},{217,62} | 113 | {9, 48}, {34, 48}, {49, 48}, {63, 48}, {78, 48}, {93, 48}, {108, 48}, {123, 48}, {138, 48}, {153, 48}, {168, 48}, {189, 48}, {209, 48}, {224, 48}, |
110 | 114 | {2, 64}, {21, 64}, {39, 64}, {95, 64}, {151, 64}, {170, 64}, {194, 64}, {209, 64}, {224, 64} | |
111 | }, { | 115 | }, { |
112 | // LED Index to Flag | 116 | // LED Index to Flag |
113 | 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, | 117 | 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, |
114 | 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, | 118 | 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, |
115 | 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, | 119 | 9, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, // caps lock is also an indicator so mask is `0x01 | 0x08` |
116 | 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, | 120 | 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, |
117 | 1, 1, 1, 4, 1, 1, 1, 1, 1 | 121 | 1, 1, 1, 4, 1, 1, 1, 1, 1 |
118 | } }; | 122 | } }; |
119 | 123 | ||
124 | #endif | ||
125 | |||
126 | #if defined(RGB_MATRIX_ENABLE) && defined(CAPS_LOCK_LED_INDEX) | ||
127 | |||
128 | #ifdef RGB_MATRIX_MAXIMUM_BRIGHTNESS | ||
129 | #define CAPS_LOCK_MAX_BRIGHTNESS RGB_MATRIX_MAXIMUM_BRIGHTNESS | ||
130 | #else | ||
131 | #define CAPS_LOCK_MAX_BRIGHTNESS 0xFF | ||
132 | #endif | ||
133 | |||
134 | #ifdef RGB_MATRIX_VAL_STEP | ||
135 | #define CAPS_LOCK_VAL_STEP RGB_MATRIX_VAL_STEP | ||
136 | #else | ||
137 | #define CAPS_LOCK_VAL_STEP 8 | ||
138 | #endif | ||
120 | 139 | ||
121 | __attribute__ ((weak)) | 140 | __attribute__ ((weak)) |
122 | void rgb_matrix_indicators_user(void) { | 141 | void rgb_matrix_indicators_user(void) { |
123 | if (host_keyboard_led_state().caps_lock) { | 142 | if (host_keyboard_led_state().caps_lock) { |
124 | rgb_matrix_set_color(30, 0xFF, 0xFF, 0xFF); | 143 | uint8_t b = rgb_matrix_get_val(); |
144 | if (b < CAPS_LOCK_VAL_STEP) { | ||
145 | b = CAPS_LOCK_VAL_STEP; | ||
146 | } else if (b < (CAPS_LOCK_MAX_BRIGHTNESS - CAPS_LOCK_VAL_STEP)) { | ||
147 | b += CAPS_LOCK_VAL_STEP; // one step more than current brightness | ||
148 | } else { | ||
149 | b = CAPS_LOCK_MAX_BRIGHTNESS; | ||
150 | } | ||
151 | rgb_matrix_set_color(CAPS_LOCK_LED_INDEX, b, b, b); // white, with the adjusted brightness | ||
125 | } | 152 | } |
126 | } | 153 | } |
154 | |||
127 | #endif | 155 | #endif |