diff options
Diffstat (limited to 'keyboards/moonlander/moonlander.c')
-rw-r--r-- | keyboards/moonlander/moonlander.c | 111 |
1 files changed, 41 insertions, 70 deletions
diff --git a/keyboards/moonlander/moonlander.c b/keyboards/moonlander/moonlander.c index d5105c26c..ea50226f0 100644 --- a/keyboards/moonlander/moonlander.c +++ b/keyboards/moonlander/moonlander.c | |||
@@ -19,9 +19,6 @@ | |||
19 | 19 | ||
20 | 20 | ||
21 | #include "moonlander.h" | 21 | #include "moonlander.h" |
22 | #ifdef WEBUSB_ENABLE | ||
23 | # include "webusb.h" | ||
24 | #endif | ||
25 | 22 | ||
26 | keyboard_config_t keyboard_config; | 23 | keyboard_config_t keyboard_config; |
27 | 24 | ||
@@ -83,50 +80,9 @@ void moonlander_led_task(void) { | |||
83 | wait_ms(155); | 80 | wait_ms(155); |
84 | } | 81 | } |
85 | #endif | 82 | #endif |
86 | #ifdef WEBUSB_ENABLE | 83 | #if !defined(MOONLANDER_USER_LEDS) |
87 | else if (webusb_state.pairing == true) { | 84 | else { |
88 | static uint8_t led_mask; | 85 | layer_state_set_kb(layer_state); |
89 | |||
90 | ML_LED_1(false); | ||
91 | ML_LED_2(false); | ||
92 | ML_LED_3(false); | ||
93 | ML_LED_4(false); | ||
94 | ML_LED_5(false); | ||
95 | ML_LED_6(false); | ||
96 | |||
97 | if (!led_mask) { | ||
98 | led_mask = 1; | ||
99 | } else { | ||
100 | led_mask++; | ||
101 | if (led_mask > 12) led_mask = 1; | ||
102 | } | ||
103 | switch (led_mask) { | ||
104 | case 1: | ||
105 | case 12: | ||
106 | ML_LED_1(true); | ||
107 | break; | ||
108 | case 2: | ||
109 | case 11: | ||
110 | ML_LED_2(true); | ||
111 | break; | ||
112 | case 3: | ||
113 | case 10: | ||
114 | ML_LED_3(true); | ||
115 | break; | ||
116 | case 4: | ||
117 | case 9: | ||
118 | ML_LED_4(true); | ||
119 | break; | ||
120 | case 5: | ||
121 | case 8: | ||
122 | ML_LED_5(true); | ||
123 | break; | ||
124 | case 6: | ||
125 | case 7: | ||
126 | ML_LED_6(true); | ||
127 | break; | ||
128 | } | ||
129 | wait_ms(150); | ||
130 | } | 86 | } |
131 | #endif | 87 | #endif |
132 | } | 88 | } |
@@ -163,40 +119,53 @@ void keyboard_pre_init_kb(void) { | |||
163 | layer_state_t layer_state_set_kb(layer_state_t state) { | 119 | layer_state_t layer_state_set_kb(layer_state_t state) { |
164 | state = layer_state_set_user(state); | 120 | state = layer_state_set_user(state); |
165 | if (is_launching || !keyboard_config.led_level) return state; | 121 | if (is_launching || !keyboard_config.led_level) return state; |
166 | 122 | bool LED_1 = false; | |
167 | ML_LED_1(false); | 123 | bool LED_2 = false; |
168 | ML_LED_2(false); | 124 | bool LED_3 = false; |
169 | ML_LED_3(false); | 125 | bool LED_4 = false; |
170 | ML_LED_4(false); | 126 | bool LED_5 = false; |
171 | ML_LED_5(false); | 127 | bool LED_6 = false; |
172 | ML_LED_6(false); | ||
173 | 128 | ||
174 | uint8_t layer = get_highest_layer(state); | 129 | uint8_t layer = get_highest_layer(state); |
175 | switch (layer) { | 130 | switch (layer) { |
176 | case 1: | 131 | case 1: |
177 | ML_LED_1(1); | 132 | LED_1 = true; |
178 | ML_LED_4(1); | 133 | LED_4 = true; |
179 | break; | 134 | break; |
180 | case 2: | 135 | case 2: |
181 | ML_LED_2(1); | 136 | LED_2 = true; |
182 | ML_LED_5(1); | 137 | LED_5 = true; |
183 | break; | 138 | break; |
184 | case 3: | 139 | case 3: |
185 | ML_LED_3(1); | 140 | LED_3 = true; |
141 | #if !defined(CAPS_LOCK_STATUS) | ||
142 | LED_6 = true; | ||
143 | #endif | ||
186 | break; | 144 | break; |
187 | case 4: | 145 | case 4: |
188 | ML_LED_4(1); | 146 | LED_4 = true; |
189 | break; | 147 | break; |
190 | case 5: | 148 | case 5: |
191 | ML_LED_5(1); | 149 | LED_5 = true; |
192 | break; | 150 | break; |
193 | case 6: | 151 | case 6: |
194 | ML_LED_6(1); | 152 | #if !defined(CAPS_LOCK_STATUS) |
153 | LED_6 = true; | ||
154 | #endif | ||
195 | break; | 155 | break; |
196 | default: | 156 | default: |
197 | break; | 157 | break; |
198 | } | 158 | } |
199 | 159 | ||
160 | ML_LED_1(LED_1); | ||
161 | ML_LED_2(LED_2); | ||
162 | ML_LED_3(LED_3); | ||
163 | ML_LED_4(LED_4); | ||
164 | ML_LED_5(LED_5); | ||
165 | #if !defined(CAPS_LOCK_STATUS) | ||
166 | ML_LED_6(LED_6); | ||
167 | #endif | ||
168 | |||
200 | return state; | 169 | return state; |
201 | } | 170 | } |
202 | #endif | 171 | #endif |
@@ -398,15 +367,19 @@ const uint8_t music_map[MATRIX_ROWS][MATRIX_COLS] = LAYOUT_moonlander( | |||
398 | // clang-format on | 367 | // clang-format on |
399 | #endif | 368 | #endif |
400 | 369 | ||
401 | #ifdef ORYX_CONFIGURATOR | 370 | #ifdef CAPS_LOCK_STATUS |
371 | bool led_update_kb(led_t led_state) { | ||
372 | bool res = led_update_user(led_state); | ||
373 | if(res) { | ||
374 | ML_LED_6(led_state.caps_lock); | ||
375 | } | ||
376 | return res; | ||
377 | } | ||
378 | #endif | ||
379 | |||
402 | bool process_record_kb(uint16_t keycode, keyrecord_t *record) { | 380 | bool process_record_kb(uint16_t keycode, keyrecord_t *record) { |
403 | if (!process_record_user(keycode, record)) { return false; } | 381 | if (!process_record_user(keycode, record)) { return false; } |
404 | switch (keycode) { | 382 | switch (keycode) { |
405 | #ifdef WEBUSB_ENABLE | ||
406 | case WEBUSB_PAIR: | ||
407 | if (!record->event.pressed && !webusb_state.pairing) layer_state_set_kb(layer_state); | ||
408 | break; | ||
409 | #endif | ||
410 | #if !defined(MOONLANDER_USER_LEDS) | 383 | #if !defined(MOONLANDER_USER_LEDS) |
411 | case LED_LEVEL: | 384 | case LED_LEVEL: |
412 | if (record->event.pressed) { | 385 | if (record->event.pressed) { |
@@ -454,8 +427,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { | |||
454 | return true; | 427 | return true; |
455 | } | 428 | } |
456 | 429 | ||
457 | #endif | ||
458 | |||
459 | void matrix_init_kb(void) { | 430 | void matrix_init_kb(void) { |
460 | keyboard_config.raw = eeconfig_read_kb(); | 431 | keyboard_config.raw = eeconfig_read_kb(); |
461 | 432 | ||