aboutsummaryrefslogtreecommitdiff
path: root/quantum
diff options
context:
space:
mode:
Diffstat (limited to 'quantum')
-rw-r--r--quantum/encoder.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/quantum/encoder.c b/quantum/encoder.c
index 8fb87281c..ecbc0c161 100644
--- a/quantum/encoder.c
+++ b/quantum/encoder.c
@@ -59,6 +59,8 @@ static uint8_t thisHand, thatHand;
59static uint8_t encoder_value[NUMBER_OF_ENCODERS] = {0}; 59static uint8_t encoder_value[NUMBER_OF_ENCODERS] = {0};
60#endif 60#endif
61 61
62__attribute__((weak)) void encoder_wait_pullup_charge(void) { wait_us(100); }
63
62__attribute__((weak)) bool encoder_update_user(uint8_t index, bool clockwise) { return true; } 64__attribute__((weak)) bool encoder_update_user(uint8_t index, bool clockwise) { return true; }
63 65
64__attribute__((weak)) bool encoder_update_kb(uint8_t index, bool clockwise) { return encoder_update_user(index, clockwise); } 66__attribute__((weak)) bool encoder_update_kb(uint8_t index, bool clockwise) { return encoder_update_user(index, clockwise); }
@@ -84,7 +86,9 @@ void encoder_init(void) {
84 for (int i = 0; i < NUMBER_OF_ENCODERS; i++) { 86 for (int i = 0; i < NUMBER_OF_ENCODERS; i++) {
85 setPinInputHigh(encoders_pad_a[i]); 87 setPinInputHigh(encoders_pad_a[i]);
86 setPinInputHigh(encoders_pad_b[i]); 88 setPinInputHigh(encoders_pad_b[i]);
87 89 }
90 encoder_wait_pullup_charge();
91 for (int i = 0; i < NUMBER_OF_ENCODERS; i++) {
88 encoder_state[i] = (readPin(encoders_pad_a[i]) << 0) | (readPin(encoders_pad_b[i]) << 1); 92 encoder_state[i] = (readPin(encoders_pad_a[i]) << 0) | (readPin(encoders_pad_b[i]) << 1);
89 } 93 }
90 94