thinknode_m5: manage baclight

This commit is contained in:
Florent
2025-11-28 10:33:19 +01:00
parent dfec6d3483
commit ee4e87c3ee
5 changed files with 18 additions and 5 deletions

View File

@@ -716,10 +716,14 @@ void UITask::loop() {
_analogue_pin_read_millis = millis(); _analogue_pin_read_millis = millis();
} }
#endif #endif
#if defined(DISP_BACKLIGHT) && defined(BACKLIGHT_BTN) #if defined(BACKLIGHT_BTN)
if (millis() > next_backlight_btn_check) { if (millis() > next_backlight_btn_check) {
bool touch_state = digitalRead(PIN_BUTTON2); bool touch_state = digitalRead(PIN_BUTTON2);
#if defined(DISP_BACKLIGHT)
digitalWrite(DISP_BACKLIGHT, !touch_state); digitalWrite(DISP_BACKLIGHT, !touch_state);
#elif defined(EXP_PIN_BACKLIGHT)
expander.digitalWrite(EXP_PIN_BACKLIGHT, !touch_state);
#endif
next_backlight_btn_check = millis() + 300; next_backlight_btn_check = millis() + 300;
} }
#endif #endif

View File

@@ -1,6 +1,11 @@
#include "GxEPDDisplay.h" #include "GxEPDDisplay.h"
#ifdef EXP_PIN_BACKLIGHT
#include <PCA9557.h>
extern PCA9557 expander;
#endif
#ifndef DISPLAY_ROTATION #ifndef DISPLAY_ROTATION
#define DISPLAY_ROTATION 3 #define DISPLAY_ROTATION 3
#endif #endif
@@ -35,6 +40,8 @@ void GxEPDDisplay::turnOn() {
if (!_init) begin(); if (!_init) begin();
#if defined(DISP_BACKLIGHT) && !defined(BACKLIGHT_BTN) #if defined(DISP_BACKLIGHT) && !defined(BACKLIGHT_BTN)
digitalWrite(DISP_BACKLIGHT, HIGH); digitalWrite(DISP_BACKLIGHT, HIGH);
#elif defined(EXP_PIN_BACKLIGHT) && !defined(BACKLIGHT_BTN)
expander.digitalWrite(EXP_PIN_BACKLIGHT, HIGH);
#endif #endif
_isOn = true; _isOn = true;
} }
@@ -42,6 +49,8 @@ void GxEPDDisplay::turnOn() {
void GxEPDDisplay::turnOff() { void GxEPDDisplay::turnOff() {
#if defined(DISP_BACKLIGHT) && !defined(BACKLIGHT_BTN) #if defined(DISP_BACKLIGHT) && !defined(BACKLIGHT_BTN)
digitalWrite(DISP_BACKLIGHT, LOW); digitalWrite(DISP_BACKLIGHT, LOW);
#elif defined(EXP_PIN_BACKLIGHT) && !defined(BACKLIGHT_BTN)
expander.digitalWrite(EXP_PIN_BACKLIGHT, LOW);
#endif #endif
_isOn = false; _isOn = false;
} }

View File

@@ -3,7 +3,7 @@
PCA9557 expander (0x18, &Wire1); PCA9557 expander (0x18, &Wire1);
void ThinknodeM5Board::begin() { void ThinknodeM5Board::begin() {
// Start expander // Start expander and configure pins
Wire1.begin(48, 47); Wire1.begin(48, 47);
expander.pinMode(EXP_PIN_POWER, OUTPUT); // eink expander.pinMode(EXP_PIN_POWER, OUTPUT); // eink
expander.pinMode(EXP_PIN_BACKLIGHT, OUTPUT); // peripherals expander.pinMode(EXP_PIN_BACKLIGHT, OUTPUT); // peripherals
@@ -11,7 +11,6 @@ void ThinknodeM5Board::begin() {
expander.digitalWrite(EXP_PIN_POWER, HIGH); expander.digitalWrite(EXP_PIN_POWER, HIGH);
expander.digitalWrite(EXP_PIN_BACKLIGHT, LOW); expander.digitalWrite(EXP_PIN_BACKLIGHT, LOW);
expander.digitalWrite(EXP_PIN_LED, LOW); expander.digitalWrite(EXP_PIN_LED, LOW);
ESP32Board::begin(); ESP32Board::begin();
} }

View File

@@ -18,6 +18,7 @@ build_flags = ${esp32_base.build_flags}
-D P_LORA_MISO=7 -D P_LORA_MISO=7
-D P_LORA_MOSI=15 -D P_LORA_MOSI=15
-D PIN_USER_BTN=21 -D PIN_USER_BTN=21
-D PIN_BUTTON2=14
-D EXP_PIN_LED=1 -D EXP_PIN_LED=1
# -D PIN_STATUS_LED=1 ; leds are on PCA !!! # -D PIN_STATUS_LED=1 ; leds are on PCA !!!
# -D LED_STATE_ON=HIGH # -D LED_STATE_ON=HIGH
@@ -29,6 +30,8 @@ build_flags = ${esp32_base.build_flags}
-D EINK_SCALE_Y=1.5625f -D EINK_SCALE_Y=1.5625f
-D EINK_X_OFFSET=0 -D EINK_X_OFFSET=0
-D EINK_Y_OFFSET=10 -D EINK_Y_OFFSET=10
-D BACKLIGHT_BTN=PIN_BUTTON2
-D AUTO_OFF_MILLIS=0
-D SX126X_DIO2_AS_RF_SWITCH=true -D SX126X_DIO2_AS_RF_SWITCH=true
-D SX126X_DIO3_TCXO_VOLTAGE=3.3 -D SX126X_DIO3_TCXO_VOLTAGE=3.3
-D SX126X_CURRENT_LIMIT=140 -D SX126X_CURRENT_LIMIT=140

View File

@@ -24,8 +24,6 @@ SensorManager sensors;
bool radio_init() { bool radio_init() {
fallback_clock.begin(); fallback_clock.begin();
rtc_clock.begin(Wire); rtc_clock.begin(Wire);
// pinMode(21, INPUT);
// pinMode(48, OUTPUT);
pinMode(P_LORA_EN, OUTPUT); pinMode(P_LORA_EN, OUTPUT);
digitalWrite(P_LORA_EN, HIGH); digitalWrite(P_LORA_EN, HIGH);
#if defined(P_LORA_SCLK) #if defined(P_LORA_SCLK)