From cd2c7e388442c8333b21c064f2c2b325cc21a15d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Celles?= Date: Fri, 11 Feb 2022 15:47:22 +0100 Subject: [PATCH 1/2] Update ezAnalogKeypad.h --- src/ezAnalogKeypad.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ezAnalogKeypad.h b/src/ezAnalogKeypad.h index 318e604..46240ca 100644 --- a/src/ezAnalogKeypad.h +++ b/src/ezAnalogKeypad.h @@ -43,6 +43,7 @@ class ezAnalogKeypad private: int keypadPin; unsigned long debounceTime; + int tolerance; unsigned long lastDebounceTime; int keyNum; int lastKeyId; From fc89caeda61016d4d2782ecc7cf7cc7e9dce69f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Celles?= Date: Fri, 11 Feb 2022 15:49:34 +0100 Subject: [PATCH 2/2] Update ezAnalogKeypad.cpp --- src/ezAnalogKeypad.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/ezAnalogKeypad.cpp b/src/ezAnalogKeypad.cpp index ff3f925..1c40ea5 100644 --- a/src/ezAnalogKeypad.cpp +++ b/src/ezAnalogKeypad.cpp @@ -31,8 +31,9 @@ #include -ezAnalogKeypad::ezAnalogKeypad(int pin) { +ezAnalogKeypad::ezAnalogKeypad(int pin, int _tolerance=100) { keypadPin = pin; + tolerance = _tolerance; debounceTime = 50; // default is 50ms lastDebounceTime = 0; @@ -87,12 +88,12 @@ unsigned char ezAnalogKeypad::getKey() { int upper_bound; for(int i = 0; i < keyNum; i++) { if(i == 0) - lower_bound = values[i] - 100; // 100 is tolerance + lower_bound = values[i] - tolerance; // default tolerance value is 100 else lower_bound = (values[i] + values[i-1]) / 2; if(i == (keyNum - 1)) - upper_bound = values[i] + 100; // 100 is tolerance + upper_bound = values[i] + tolerance; // default tolerance is 100 else upper_bound = (values[i] + values[i+1]) / 2;