3 #if defined (split_space)
4 const is31_led g_is31_leds[DRIVER_LED_TOTAL] = {
5 /* Refer to IS31 manual for these locations
11 {0, K_12, J_12, L_12},
12 {0, K_11, J_11, L_11},
13 {0, K_10, J_10, L_10},
24 {0, K_13, J_13, L_13},
25 {0, K_14, J_14, L_14},
27 {0, H_12, G_12, I_12},
28 {0, H_11, G_11, I_11},
29 {0, H_10, G_10, I_10},
40 {0, H_13, G_13, I_13},
41 {0, H_14, G_14, I_14},
43 {0, E_12, D_12, F_12},
44 {0, E_11, D_11, F_11},
45 {0, E_10, D_10, F_10},
56 {0, E_13, D_13, F_13},
57 {0, E_14, D_14, F_14},
59 {0, B_12, A_12, C_12},
60 {0, B_11, A_11, C_11},
61 {0, B_10, A_10, C_10},
74 rgb_led g_rgb_leds[DRIVER_LED_TOTAL] = {
76 {{0|(11<<4)}, {20.36*11, 0}, 1},
77 {{0|(10<<4)}, {20.36*10, 0}, 1},
78 {{0|(9<<4)}, {20.36*9, 0}, 1},
79 {{0|(8<<4)}, {20.36*8, 0}, 1},
80 {{0|(7<<4)}, {20.36*7, 0}, 1},
81 {{0|(6<<4)}, { 20.36*6, 0}, 1},
82 {{0|(5<<4)}, { 20.36*5, 0}, 1},
83 {{0|(4<<4)}, { 20.36*4, 0}, 1},
84 {{0|(3<<4)}, { 20.36*3, 0}, 1},
85 {{0|(2<<4)}, { 20.36*2, 0}, 1},
86 {{0|(1<<4)}, { 20.36*1, 0}, 1},
87 {{0|(0<<4)}, { 20.36*0, 0}, 1},
89 {{0|(12<<4)}, {20.36*11, 21.33*0.5}, 1},
90 {{0|(13<<4)}, {20.36*0,21.33*0.5}, 1},
92 {{1|(11<<4)}, {20.36*11, 21.33}, 1},
93 {{1|(10<<4)}, {20.36*10, 21.33}, 4},
94 {{1|(9<<4)}, {20.36*9, 21.33}, 4},
95 {{1|(8<<4)}, {20.36*8, 21.33}, 4},
96 {{1|(7<<4)}, {20.36*7, 21.33}, 4},
97 {{1|(6<<4)}, { 20.36*6, 21.33}, 4},
98 {{1|(5<<4)}, { 20.36*5, 21.33}, 4},
99 {{1|(4<<4)}, { 20.36*4, 21.33}, 4},
100 {{1|(3<<4)}, { 20.36*3, 21.33}, 4},
101 {{1|(2<<4)}, { 20.36*2, 21.33}, 4},
102 {{1|(1<<4)}, { 20.36*1, 21.33}, 4},
103 {{1|(0<<4)}, { 20.36*0, 21.33}, 1},
105 {{1|(12<<4)}, {20.36*11, 21.33*1.5}, 1},
106 {{1|(13<<4)}, {20.36*0,21.33*1.5}, 1},
108 {{2|(11<<4)}, {20.36*11, 21.33*2}, 1},
109 {{2|(10<<4)}, {20.36*10, 21.33*2}, 4},
110 {{2|(9<<4)}, {20.36*9, 21.33*2}, 4},
111 {{2|(8<<4)}, {20.36*8, 21.33*2}, 4},
112 {{2|(7<<4)}, {20.36*7, 21.33*2}, 4},
113 {{2|(6<<4)}, { 20.36*6, 21.33*2}, 4},
114 {{2|(5<<4)}, { 20.36*5, 21.33*2}, 4},
115 {{2|(4<<4)}, { 20.36*4, 21.33*2}, 4},
116 {{2|(3<<4)}, { 20.36*3, 21.33*2}, 4},
117 {{2|(2<<4)}, { 20.36*2, 21.33*2}, 4},
118 {{2|(1<<4)}, { 20.36*1, 21.33*2}, 4},
119 {{2|(0<<4)}, { 20.36*0, 21.33*2}, 1},
121 {{2|(12<<4)}, {20.36*11, 21.33*2.5}, 1},
122 {{2|(13<<4)}, {20.36*0,21.33*2.5}, 1},
124 {{3|(11<<4)}, {20.36*11, 21.33*3}, 1},
125 {{3|(10<<4)}, {20.36*10, 21.33*3}, 1},
126 {{3|(9<<4)}, {20.36*9, 21.33*3}, 1},
127 {{3|(8<<4)}, {20.36*8, 21.33*3}, 1},
128 {{3|(7<<4)}, {20.36*7, 21.33*3}, 1},
129 {{3|(6<<4)}, { 20.36*6, 21.33*3}, 1},
130 {{3|(5<<4)}, { 20.36*5, 21.33*3}, 1},
131 {{3|(4<<4)}, { 20.36*4, 21.33*3}, 1},
132 {{3|(3<<4)}, { 20.36*3, 21.33*3}, 1},
133 {{3|(2<<4)}, { 20.36*2, 21.33*3}, 1},
134 {{3|(1<<4)}, { 20.36*1, 21.33*3}, 1},
135 {{3|(0<<4)}, { 20.36*0, 21.33*3}, 1}
139 const is31_led g_is31_leds[DRIVER_LED_TOTAL] = {
140 /* Refer to IS31 manual for these locations
146 {0, K_12, J_12, L_12},
147 {0, K_11, J_11, L_11},
148 {0, K_10, J_10, L_10},
159 {0, K_13, J_13, L_13},
160 {0, K_14, J_14, L_14},
162 {0, H_12, G_12, I_12},
163 {0, H_11, G_11, I_11},
164 {0, H_10, G_10, I_10},
175 {0, H_13, G_13, I_13},
176 {0, H_14, G_14, I_14},
178 {0, E_12, D_12, F_12},
179 {0, E_11, D_11, F_11},
180 {0, E_10, D_10, F_10},
191 {0, E_13, D_13, F_13},
192 {0, E_14, D_14, F_14},
194 {0, B_12, A_12, C_12},
195 {0, B_11, A_11, C_11},
196 {0, B_10, A_10, C_10},
199 {0, B_13, A_13, C_13},
208 rgb_led g_rgb_leds[DRIVER_LED_TOTAL] = {
210 {{0|(11<<4)}, {20.36*11, 0}, 1},
211 {{0|(10<<4)}, {20.36*10, 0}, 1},
212 {{0|(9<<4)}, {20.36*9, 0}, 1},
213 {{0|(8<<4)}, {20.36*8, 0}, 1},
214 {{0|(7<<4)}, {20.36*7, 0}, 1},
215 {{0|(6<<4)}, { 20.36*6, 0}, 1},
216 {{0|(5<<4)}, { 20.36*5, 0}, 1},
217 {{0|(4<<4)}, { 20.36*4, 0}, 1},
218 {{0|(3<<4)}, { 20.36*3, 0}, 1},
219 {{0|(2<<4)}, { 20.36*2, 0}, 1},
220 {{0|(1<<4)}, { 20.36*1, 0}, 1},
221 {{0|(0<<4)}, { 20.36*0, 0}, 1},
223 {{0|(12<<4)}, {20.36*11, 21.33*0.5}, 1},
224 {{0|(13<<4)}, {20.36*0,21.33*0.5}, 1},
226 {{1|(11<<4)}, {20.36*11, 21.33}, 1},
227 {{1|(10<<4)}, {20.36*10, 21.33}, 4},
228 {{1|(9<<4)}, {20.36*9, 21.33}, 4},
229 {{1|(8<<4)}, {20.36*8, 21.33}, 4},
230 {{1|(7<<4)}, {20.36*7, 21.33}, 4},
231 {{1|(6<<4)}, { 20.36*6, 21.33}, 4},
232 {{1|(5<<4)}, { 20.36*5, 21.33}, 4},
233 {{1|(4<<4)}, { 20.36*4, 21.33}, 4},
234 {{1|(3<<4)}, { 20.36*3, 21.33}, 4},
235 {{1|(2<<4)}, { 20.36*2, 21.33}, 4},
236 {{1|(1<<4)}, { 20.36*1, 21.33}, 4},
237 {{1|(0<<4)}, { 20.36*0, 21.33}, 1},
239 {{1|(12<<4)}, {20.36*11, 21.33*1.5}, 1},
240 {{1|(13<<4)}, {20.36*0,21.33*1.5}, 1},
242 {{2|(11<<4)}, {20.36*11, 21.33*2}, 1},
243 {{2|(10<<4)}, {20.36*10, 21.33*2}, 4},
244 {{2|(9<<4)}, {20.36*9, 21.33*2}, 4},
245 {{2|(8<<4)}, {20.36*8, 21.33*2}, 4},
246 {{2|(7<<4)}, {20.36*7, 21.33*2}, 4},
247 {{2|(6<<4)}, { 20.36*6, 21.33*2}, 4},
248 {{2|(5<<4)}, { 20.36*5, 21.33*2}, 4},
249 {{2|(4<<4)}, { 20.36*4, 21.33*2}, 4},
250 {{2|(3<<4)}, { 20.36*3, 21.33*2}, 4},
251 {{2|(2<<4)}, { 20.36*2, 21.33*2}, 4},
252 {{2|(1<<4)}, { 20.36*1, 21.33*2}, 4},
253 {{2|(0<<4)}, { 20.36*0, 21.33*2}, 1},
255 {{2|(12<<4)}, {20.36*11, 21.33*2.5}, 1},
256 {{2|(13<<4)}, {20.36*0,21.33*2.5}, 1},
258 {{3|(11<<4)}, {20.36*11, 21.33*3}, 1},
259 {{3|(10<<4)}, {20.36*10, 21.33*3}, 1},
260 {{3|(9<<4)}, {20.36*9, 21.33*3}, 1},
261 {{3|(8<<4)}, {20.36*8, 21.33*3}, 1},
262 {{3|(7<<4)}, {20.36*7, 21.33*3}, 1},
263 {{3|(6<<4)}, { 20.36*5.5, 21.33*3}, 1},
264 {{3|(4<<4)}, { 20.36*4, 21.33*3}, 1},
265 {{3|(3<<4)}, { 20.36*3, 21.33*3}, 1},
266 {{3|(2<<4)}, { 20.36*2, 21.33*3}, 1},
267 {{3|(1<<4)}, { 20.36*1, 21.33*3}, 1},
268 {{3|(0<<4)}, { 20.36*0, 21.33*3}, 1}
274 void matrix_init_kb(void) {
279 void matrix_scan_kb(void) {
284 bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
285 return process_record_user(keycode, record);
289 void suspend_power_down_kb(void)
291 rgb_matrix_set_suspend_state(true);
294 void suspend_wakeup_init_kb(void)
296 rgb_matrix_set_suspend_state(false);