From c244565e355483e403cce7f3a4ca203b9b23d905 Mon Sep 17 00:00:00 2001 From: Jonathan Bennett Date: Mon, 4 Aug 2025 12:46:16 -0500 Subject: [PATCH] Turn backlight off when screen sleeps --- src/graphics/Screen.cpp | 9 +++++++++ src/main.cpp | 2 -- src/main.h | 5 +++++ 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/graphics/Screen.cpp b/src/graphics/Screen.cpp index f22a0d8a8..f04d20c27 100644 --- a/src/graphics/Screen.cpp +++ b/src/graphics/Screen.cpp @@ -391,6 +391,10 @@ void Screen::handleSetOn(bool on, FrameCallback einkScreensaver) dispdev->displayOn(); #endif +#ifdef ELECROW_ThinkNode_M5 + io.digitalWrite(PCA_PIN_EINK_EN, HIGH); +#endif + #if defined(ST7789_CS) && \ !defined(M5STACK) // set display brightness when turning on screens. Just moved function from TFTDisplay to here. static_cast(dispdev)->setDisplayBrightness(brightness); @@ -425,6 +429,11 @@ void Screen::handleSetOn(bool on, FrameCallback einkScreensaver) digitalWrite(PIN_EINK_EN, LOW); } #endif + +#ifdef ELECROW_ThinkNode_M5 + io.digitalWrite(PCA_PIN_EINK_EN, LOW); +#endif + dispdev->displayOff(); #ifdef USE_ST7789 SPI1.end(); diff --git a/src/main.cpp b/src/main.cpp index 7c0fdc3b3..6a37a3b2b 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -39,8 +39,6 @@ #include #ifdef ELECROW_ThinkNode_M5 -#include -#include PCA9557 io(0x18, &Wire); #endif diff --git a/src/main.h b/src/main.h index 7105bd62b..3568daad2 100644 --- a/src/main.h +++ b/src/main.h @@ -51,6 +51,11 @@ extern Adafruit_DRV2605 drv; extern AudioThread *audioThread; #endif +#ifdef ELECROW_ThinkNode_M5 +#include +extern PCA9557 io; +#endif + #ifdef HAS_UDP_MULTICAST #include "mesh/udp/UdpMulticastHandler.h" extern UdpMulticastHandler *udpHandler;