31-08-2025, 11:00 PM
si ca peut aider certains, voilà 3 fichiers Solar_Router_V15_07 avec fichier Ecran.h et sans utiliser LGFX_AUTODETECT
- ESP32-2432S028R avec ILI9341 + XPT2046
https://drive.google.com/file/d/11q-kjhX...sp=sharing
- ESP32-2432S028 avec ST7789 + XPT2046
https://drive.google.com/file/d/1rt4g-hb...sp=sharing
- ESP32-2432S024 avec ST7789 + XPT2046
https://drive.google.com/file/d/1r2rtg9f...sp=sharing
infos sur les modifications de ces fichiers:
1) ajouter le fichier Ecran.h qui correspond à votre carte :
3 fichiers de configuration Ecran.h sont prévus
- ESP32-2432S028R avec ILI9341 + XPT2046
- ESP32-2432S028 avec ST7789 + XPT2046
- ESP32-2432S024 avec ST7789 + XPT2046
2) modifier le fichier EcranLCD.ino pour supprimer la détection automatique de la carte
(ajout Ecran.h et suppression de LGFX_AUTODETECT
#include <vector>
#include <SPI.h>
#include <cstdint>
#include <LovyanGFX.hpp>
#include <Ecran.h>
#define LIGHT_ADC 34
//#define LGFX_AUTODETECT // Autodetect board
#define LGFX_USE_V1
3) ajouter la gestion du blacklight dans EcranLCD.ino après la ligne 62
if ((millis() - runtime_On) > DurEcran) {
lcd.clear(TFT_BLACK);
lcd.setBrightness(0); // mise BL = 0 --->ligne ajoutée
ReDraw = true;
ScreenOn = false;
runtime_On = millis();
}
if (digitalRead(35) == 1) {
ScreenOn = true;
lcd.setBrightness(255); // ---> ligne ajoutée
if (ReDraw) GoPage(NumPage);
ReDraw = false;
runtime_On = millis();
}
if (millis() - runtime_click > 200) { //Anti-glitch
runtime_click = millis();
if (lcd.getTouch(&ClickX, &ClickY)) {
lcd.setBrightness(255); // ---> ligne ajoutée
runtime_On = millis();
if (!ScreenOn) {
ScreenOn = true;
GoPage(NumPage);
} else {
4) ensuite, dans Solar_Router_V14_23.024.ino après de la ligne 1474, dévalider une ligne :
//Entree Analogique UxI
// <******> if (Source == "UxI" && pUxI == 0) pUxI = 1; ---> ligne à dévalider pour éviter un conflit avec le bus SPI
AnalogIn0 = Analog0[pUxI];
AnalogIn1 = Analog1[pUxI];
AnalogIn2 = Analog2[pUxI];
**** Fin des modifs ****
5) compilation avec ESP32 DEV Module et Partition Sheme = Custom
6) chargement avec esp32 flash_download_tool ou par OTA
7) après chargement du code dans le esp32, l'écran ne marchera pas avant configuration :
- le wifi doit etre configuré et connecté et la mise à l'heure de la carte doit etre faite
- ensuite, configurer la carte :
esp32 Ecran 320x240
Ecran paysage 270°
Pas de port serie 2
Pas d'entrée Analogique
Pas de triac
Pas de Led/Oled
Source UxI
=> on sauve et reset et normalement l'écran marche dès que la date est affichée en bas à gauche.
pins dispo sur carte ESP32-2432S028 : 5, 18, 19, 22, 23, 27, 35 (input only)
pins dispo sur carte ESP32-2432S024 : 5, 18, 19, 21, 22, 23, 35 (input only)
pour info, avec le soft pour ILI9341 et si vous avez un ST7789, l'écran est décallé de 90° mais visible et le touchscreen marche.
- ESP32-2432S028R avec ILI9341 + XPT2046
https://drive.google.com/file/d/11q-kjhX...sp=sharing
- ESP32-2432S028 avec ST7789 + XPT2046
https://drive.google.com/file/d/1rt4g-hb...sp=sharing
- ESP32-2432S024 avec ST7789 + XPT2046
https://drive.google.com/file/d/1r2rtg9f...sp=sharing
infos sur les modifications de ces fichiers:
1) ajouter le fichier Ecran.h qui correspond à votre carte :
3 fichiers de configuration Ecran.h sont prévus
- ESP32-2432S028R avec ILI9341 + XPT2046
- ESP32-2432S028 avec ST7789 + XPT2046
- ESP32-2432S024 avec ST7789 + XPT2046
2) modifier le fichier EcranLCD.ino pour supprimer la détection automatique de la carte
(ajout Ecran.h et suppression de LGFX_AUTODETECT
#include <vector>
#include <SPI.h>
#include <cstdint>
#include <LovyanGFX.hpp>
#include <Ecran.h>
#define LIGHT_ADC 34
//#define LGFX_AUTODETECT // Autodetect board
#define LGFX_USE_V1
3) ajouter la gestion du blacklight dans EcranLCD.ino après la ligne 62
if ((millis() - runtime_On) > DurEcran) {
lcd.clear(TFT_BLACK);
lcd.setBrightness(0); // mise BL = 0 --->ligne ajoutée
ReDraw = true;
ScreenOn = false;
runtime_On = millis();
}
if (digitalRead(35) == 1) {
ScreenOn = true;
lcd.setBrightness(255); // ---> ligne ajoutée
if (ReDraw) GoPage(NumPage);
ReDraw = false;
runtime_On = millis();
}
if (millis() - runtime_click > 200) { //Anti-glitch
runtime_click = millis();
if (lcd.getTouch(&ClickX, &ClickY)) {
lcd.setBrightness(255); // ---> ligne ajoutée
runtime_On = millis();
if (!ScreenOn) {
ScreenOn = true;
GoPage(NumPage);
} else {
4) ensuite, dans Solar_Router_V14_23.024.ino après de la ligne 1474, dévalider une ligne :
//Entree Analogique UxI
// <******> if (Source == "UxI" && pUxI == 0) pUxI = 1; ---> ligne à dévalider pour éviter un conflit avec le bus SPI
AnalogIn0 = Analog0[pUxI];
AnalogIn1 = Analog1[pUxI];
AnalogIn2 = Analog2[pUxI];
**** Fin des modifs ****
5) compilation avec ESP32 DEV Module et Partition Sheme = Custom
6) chargement avec esp32 flash_download_tool ou par OTA
7) après chargement du code dans le esp32, l'écran ne marchera pas avant configuration :
- le wifi doit etre configuré et connecté et la mise à l'heure de la carte doit etre faite
- ensuite, configurer la carte :
esp32 Ecran 320x240
Ecran paysage 270°
Pas de port serie 2
Pas d'entrée Analogique
Pas de triac
Pas de Led/Oled
Source UxI
=> on sauve et reset et normalement l'écran marche dès que la date est affichée en bas à gauche.
pins dispo sur carte ESP32-2432S028 : 5, 18, 19, 22, 23, 27, 35 (input only)
pins dispo sur carte ESP32-2432S024 : 5, 18, 19, 21, 22, 23, 35 (input only)
pour info, avec le soft pour ILI9341 et si vous avez un ST7789, l'écran est décallé de 90° mais visible et le touchscreen marche.