From 212839bdd34f505a8a10329757302ca2cfadd0bb Mon Sep 17 00:00:00 2001 From: mverch67 Date: Sun, 1 Jun 2025 09:45:43 +0200 Subject: [PATCH] fix touchscreen --- src/graphics/Screen.cpp | 2 +- src/platform/extra_variants/t_deck_pro/variant.cpp | 9 ++++----- variants/t-deck-pro/variant.h | 1 + 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/graphics/Screen.cpp b/src/graphics/Screen.cpp index 61999ee79..2390649e8 100644 --- a/src/graphics/Screen.cpp +++ b/src/graphics/Screen.cpp @@ -1795,7 +1795,7 @@ void Screen::setup() new TouchScreenImpl1(dispdev->getWidth(), dispdev->getHeight(), static_cast(dispdev)->getTouch); touchScreenImpl1->init(); } -#elif HAS_TOUCHSCREEN +#elif HAS_TOUCHSCREEN && !defined(USE_EINK) touchScreenImpl1 = new TouchScreenImpl1(dispdev->getWidth(), dispdev->getHeight(), static_cast(dispdev)->getTouch); touchScreenImpl1->init(); diff --git a/src/platform/extra_variants/t_deck_pro/variant.cpp b/src/platform/extra_variants/t_deck_pro/variant.cpp index abf9a6e40..026e703af 100644 --- a/src/platform/extra_variants/t_deck_pro/variant.cpp +++ b/src/platform/extra_variants/t_deck_pro/variant.cpp @@ -19,14 +19,13 @@ void touchISR() bool readTouch(int16_t *x, int16_t *y) { - if (1 /* intReceived */) { + if (intReceived) { intReceived = false; // Reattach the interrupt for the next touch - // attachInterrupt (digitalPinToInterrupt(CST328_PIN_INT), touchISR, FALLING); + attachInterrupt(digitalPinToInterrupt(CST328_PIN_INT), touchISR, FALLING); // Read the touch point - // if (tsPanel.isTouched(0)) { - if (tsPanel.getTouches()) { + if (tsPanel.isTouched(0)) { *x = tsPanel.getPoint(0).x; *y = tsPanel.getPoint(0).y; return true; @@ -39,7 +38,7 @@ bool readTouch(int16_t *x, int16_t *y) void lateInitVariant() { tsPanel.begin(); - // attachInterrupt (digitalPinToInterrupt(CST328_PIN_INT), touchISR, FALLING); + attachInterrupt(digitalPinToInterrupt(CST328_PIN_INT), touchISR, FALLING); touchScreenImpl1 = new TouchScreenImpl1(EINK_WIDTH, EINK_HEIGHT, readTouch); touchScreenImpl1->init(); } diff --git a/variants/t-deck-pro/variant.h b/variants/t-deck-pro/variant.h index 730c0533b..48d37e022 100644 --- a/variants/t-deck-pro/variant.h +++ b/variants/t-deck-pro/variant.h @@ -10,6 +10,7 @@ #define I2C_SCL SCL // CST328 touch screen (implementation in src/platform/extra_variants/t_deck_pro/variant.cpp) +#define HAS_TOUCHSCREEN 1 #define CST328_PIN_INT 12 #define CST328_PIN_RST 45