diff options
Diffstat (limited to 'keyboards/keychron/bluetooth')
-rw-r--r-- | keyboards/keychron/bluetooth/factory_test.c | 54 |
1 files changed, 33 insertions, 21 deletions
diff --git a/keyboards/keychron/bluetooth/factory_test.c b/keyboards/keychron/bluetooth/factory_test.c index 9de130a26b..b8183040cf 100644 --- a/keyboards/keychron/bluetooth/factory_test.c +++ b/keyboards/keychron/bluetooth/factory_test.c @@ -16,15 +16,19 @@ #include "quantum.h" #include "raw_hid.h" -#include "via.h" -#include "indicator.h" #ifdef KC_BLUETOOTH_ENABLE #include "transport.h" -#include "battery.h" -#include "lpm.h" #include "ckbt51.h" #endif +#ifndef BL_TEST_KEY1 +# define BL_TEST_KEY1 KC_RIGHT +#endif + +#ifndef BL_TEST_KEY2 +# define BL_TEST_KEY2 KC_HOME +#endif + extern bool bt_factory_reset; enum { @@ -40,10 +44,10 @@ enum { KEY_PRESS_FN = 0x01 << 0, KEY_PRESS_J = 0x01 << 1, KEY_PRESS_Z = 0x01 << 2, - KEY_PRESS_RIGHT = 0x01 << 3, - KEY_PRESS_HOME = 0x01 << 4, + KEY_PRESS_BL_KEY1 = 0x01 << 3, + KEY_PRESS_BL_KEY2 = 0x01 << 4, KEY_PRESS_FACTORY_RESET = KEY_PRESS_FN | KEY_PRESS_J | KEY_PRESS_Z, - KEY_PRESS_BACKLIGTH_TEST = KEY_PRESS_FN | KEY_PRESS_RIGHT | KEY_PRESS_HOME, + KEY_PRESS_BACKLIGTH_TEST = KEY_PRESS_FN | KEY_PRESS_BL_KEY1 | KEY_PRESS_BL_KEY2, }; enum { @@ -69,7 +73,7 @@ static uint8_t factory_reset_ind_state = 0; static bool report_os_sw_state = false; void factory_timer_start(void) { - factory_reset_timer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); + factory_reset_timer = timer_read32() == 0 ? 1 : timer_read32(); } static inline void factory_timer_check(void) { @@ -77,7 +81,7 @@ static inline void factory_timer_check(void) { factory_reset_timer = 0; if (factory_reset_state == KEY_PRESS_FACTORY_RESET) { - factory_reset_ind_timer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); + factory_reset_ind_timer = timer_read32() == 0 ? 1 : timer_read32(); factory_reset_ind_state++; layer_state_t default_layer_tmp = default_layer_state; @@ -110,21 +114,24 @@ static inline void factory_timer_check(void) { } static inline void factory_reset_ind_timer_check(void) { - if (factory_reset_ind_timer && sync_timer_elapsed32(factory_reset_ind_timer) > 250) { + if (factory_reset_ind_timer && timer_elapsed32(factory_reset_ind_timer) > 250) { if (factory_reset_ind_state++ > 6) { factory_reset_ind_timer = factory_reset_ind_state = 0; } else { - factory_reset_ind_timer = sync_timer_read32() == 0 ? 1 : sync_timer_read32(); + factory_reset_ind_timer = timer_read32() == 0 ? 1 : timer_read32(); } } } void process_record_factory_reset(uint16_t keycode, keyrecord_t *record) { switch (keycode) { - case MO(1): /* fall through */ - case MO(2): - case MO(3): - case MO(4): +#if defined(FN_KEY1) || defined(FN_KEY2) +# ifdef FN_KEY1 + case FN_KEY1: /* fall through */ +# endif +# ifdef FN_KEY2 + case FN_KEY2: +# endif if (record->event.pressed) { factory_reset_state |= KEY_PRESS_FN; } else { @@ -132,6 +139,7 @@ void process_record_factory_reset(uint16_t keycode, keyrecord_t *record) { factory_reset_timer = 0; } break; +#endif case KC_J: if (record->event.pressed) { factory_reset_state |= KEY_PRESS_J; @@ -150,34 +158,38 @@ void process_record_factory_reset(uint16_t keycode, keyrecord_t *record) { factory_reset_timer = 0; } break; - case KC_RIGHT: +#ifdef BL_TEST_KEY1 + case BL_TEST_KEY1: if (record->event.pressed) { if (backlight_test_mode) { if (++backlight_test_mode >= BACKLIGHT_TEST_MAX) { backlight_test_mode = BACKLIGHT_TEST_WHITE; } } else { - factory_reset_state |= KEY_PRESS_RIGHT; + factory_reset_state |= KEY_PRESS_BL_KEY1; if (factory_reset_state == 0x19) factory_timer_start(); } } else { - factory_reset_state &= ~KEY_PRESS_RIGHT; + factory_reset_state &= ~KEY_PRESS_BL_KEY1; factory_reset_timer = 0; } break; - case KC_HOME: +#endif +#ifdef BL_TEST_KEY2 + case BL_TEST_KEY2: if (record->event.pressed) { if (backlight_test_mode) { backlight_test_mode = BACKLIGHT_TEST_OFF; } else { - factory_reset_state |= KEY_PRESS_HOME; + factory_reset_state |= KEY_PRESS_BL_KEY2; if (factory_reset_state == 0x19) factory_timer_start(); } } else { - factory_reset_state &= ~KEY_PRESS_HOME; + factory_reset_state &= ~KEY_PRESS_BL_KEY2; factory_reset_timer = 0; } break; +#endif } } |