diff options
Diffstat (limited to 'keyboards/ergodox_ez/ergodox_ez.c')
-rw-r--r-- | keyboards/ergodox_ez/ergodox_ez.c | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/keyboards/ergodox_ez/ergodox_ez.c b/keyboards/ergodox_ez/ergodox_ez.c index 49f690fa7..8d3790088 100644 --- a/keyboards/ergodox_ez/ergodox_ez.c +++ b/keyboards/ergodox_ez/ergodox_ez.c | |||
@@ -398,3 +398,54 @@ void eeconfig_init_kb(void) { // EEPROM is getting reset! | |||
398 | eeconfig_update_kb(keyboard_config.raw); | 398 | eeconfig_update_kb(keyboard_config.raw); |
399 | eeconfig_init_user(); | 399 | eeconfig_init_user(); |
400 | } | 400 | } |
401 | |||
402 | #ifdef ORYX_ENABLE | ||
403 | static uint16_t loops = 0; | ||
404 | static bool is_on = false; | ||
405 | #endif | ||
406 | |||
407 | #ifdef DYNAMIC_MACRO_ENABLE | ||
408 | static bool is_dynamic_recording = false; | ||
409 | static uint16_t dynamic_loop_timer; | ||
410 | |||
411 | void dynamic_macro_record_start_user(void) { | ||
412 | is_dynamic_recording = true; | ||
413 | dynamic_loop_timer = timer_read(); | ||
414 | ergodox_right_led_1_on(); | ||
415 | } | ||
416 | |||
417 | void dynamic_macro_record_end_user(int8_t direction) { | ||
418 | is_dynamic_recording = false; | ||
419 | layer_state_set_user(layer_state); | ||
420 | } | ||
421 | #endif | ||
422 | |||
423 | void matrix_scan_kb(void) { | ||
424 | #ifdef DYNAMIC_MACRO_ENABLE | ||
425 | if (is_dynamic_recording) { | ||
426 | ergodox_right_led_1_off(); | ||
427 | // if (timer_elapsed(dynamic_loop_timer) > 5) | ||
428 | { | ||
429 | static uint8_t counter; | ||
430 | counter++; | ||
431 | if (counter > 100) ergodox_right_led_1_on(); | ||
432 | dynamic_loop_timer = timer_read(); | ||
433 | } | ||
434 | } | ||
435 | #endif | ||
436 | |||
437 | #ifdef CAPS_LOCK_STATUS | ||
438 | led_t led_state = host_keyboard_led_state(); | ||
439 | if(led_state.caps_lock) { | ||
440 | ergodox_right_led_3_on(); | ||
441 | } | ||
442 | else { | ||
443 | uint8_t layer = get_highest_layer(layer_state); | ||
444 | if(layer != 1) { | ||
445 | ergodox_right_led_3_off(); | ||
446 | } | ||
447 | } | ||
448 | #endif | ||
449 | |||
450 | matrix_scan_user(); | ||
451 | } | ||