Turn backlight off when screen sleeps

This commit is contained in:
Jonathan Bennett 2025-08-04 12:46:16 -05:00
parent 3931c0741f
commit c244565e35
3 changed files with 14 additions and 2 deletions

View File

@ -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<TFTDisplay *>(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();

View File

@ -39,8 +39,6 @@
#include <utility>
#ifdef ELECROW_ThinkNode_M5
#include <PCA9557.h>
#include <Wire.h>
PCA9557 io(0x18, &Wire);
#endif

View File

@ -51,6 +51,11 @@ extern Adafruit_DRV2605 drv;
extern AudioThread *audioThread;
#endif
#ifdef ELECROW_ThinkNode_M5
#include <PCA9557.h>
extern PCA9557 io;
#endif
#ifdef HAS_UDP_MULTICAST
#include "mesh/udp/UdpMulticastHandler.h"
extern UdpMulticastHandler *udpHandler;