diff --git a/right/src/key_debouncer.c b/right/src/key_debouncer.c index 8a85eb3..fceebcb 100644 --- a/right/src/key_debouncer.c +++ b/right/src/key_debouncer.c @@ -11,8 +11,8 @@ void PIT_KEY_DEBOUNCER_HANDLER(void) for (uint8_t slotId=0; slotIddebounceCounter < KEY_DEBOUNCER_TIMEOUT_MSEC) { + if (keyState->debounceCounter) { keyState->current = keyState->previous; - } else if (!keyState->previous && keyState->current) { - keyState->debounceCounter = 0; + } else if (keyState->previous != keyState->current) { + keyState->debounceCounter = KEY_DEBOUNCER_TIMEOUT_MSEC + 1; } if (keyState->current) {