ILI9488 con ESP32-S3 schermo bianco

Salve a tutti, sto provando a far funzionare come da titolo un ILI9488 con un ESP32-S3 il problema è che rimane sullo schermo bianco.

Il mio User_Setup.h è questo qui:

#define ILI9488_DRIVER // WARNING: Do not connect ILI9488 display SDO to MISO if other devices share the SPI bus (TFT SDO does NOT tristate when CS is high)
#define SPI_FREQUENCY 70000000

#define TFT_CS   10 //     10 or 34 (FSPI CS0) 
#define TFT_MOSI 11 //     11 or 35 (FSPI D)
#define TFT_SCLK 12 //     12 or 36 (FSPI CLK)
#define TFT_MISO 13 //     13 or 37 (FSPI Q)
// Use pins in range 0-31
#define TFT_DC    7
#define TFT_RST   6
#define TOUCH_CS 16 // Optional for touch screen

Mentre il mio sketch è semplice:


#include <TFT_eSPI.h>
#include <SPI.h>
TFT_eSPI tft = TFT_eSPI();
 void setup()
 {
   Serial.begin(115200);
   Serial.println("Hello World!");
    tft.init();
    Serial.println("tft init");
    tft.setRotation(1);
    tft.fillScreen(TFT_WHITE);
    tft.setTextColor(TFT_BLACK);
    tft.setTextSize(1);
    tft.setCursor(0, 0);
    tft.println("Hello World!");

 }
 void loop(){

 }

Resta tutto però con lo schermo bianco e non riesco in nessun modo a farlo funzionare! Qualcuno ha avuto esperienze a riguardo?
Grazie

Se dai un'occhiata nella sezione display vedrai che ci sono parecchi problemi con TFT_eSPI e gli ESP32, vedi es:

Che versione del core ESP32 stai usando? Qualcuno ha rimediato installando la ormai 'vetusta' versione 2.0.14, l'ultima che sembra funzionare con TFT_eSPI.

Ciao, Ale.

Grazie per la risposta. Ho visto diversi post a riguardo ma nessuno è stato risolutivo. Perdona la mia ignoranza ma non so che versione ho, come cambiarla e sopratuttto come controllarla...

Supponendo che tu stia usando l'IDE 2.X devi selezionare il pulsante sulla SX relativo la board manager, vai su ESP32 e vedi che versione hai installato, e dal menu con il numero di versione ne puoi scegliere altre:

Ciao, Ale.

Grazie per la pazienza. Allora ho la 3.2.0

Quindi la 2.0.14 è nota essere meno problematica?
Proverò a rifare tutto dopo questo cambiamento, grazie mille

Fai una prova, giusto per capire se risolve o meno, tanto in ogni caso puoi sempre tornare all'ultima versione.
Tieni conto che della versione del core 2.x è difficile anche reperire la documentazione, e molte cose sono cambiate radicalmente, non so quali siano le tue esigenze ma corri il rischio di ritrovarti il display funzionante senza che funzioni tutto il resto... :roll_eyes:

Ciao, Ale.

Non ho grandi esigenze, il display mi serve solo per visualizzare alcune immagini/informazioni. Ho optato questo al posto dell'ILI9341 per via della sua grandezza di cui avevo bisogno, ma non pensavo che poi avrei avuto problemi su documentazione e quant'altro... spero di risolvere in qualche modo.

Ho provato ma non è cambiato nulla sfortunatamente...

Mi spiace, ma non saprei aiutarti oltre, è da tanto che non l'ESP32 quindi non ne so molto.
Attualmente sto usando un ILI9488 con TFT_eSPI ma con un raspberry Pico, e funziona senza problemi.

Ciao, Ale.

Non so se ci pensa già la libreria ad impostare i pin della SPI.

Con ESP32 i pin associati alla SPI si possono rimappare quasi su ogni gpio, ma quelli di default di sicuro non sono quelli che stai usando adesso.

Quindi la cosa più semplice è inizializzare la SPI passando come argomento anche quali PIN stai usando.

#include <SPI.h>

void setup() {
  // Inizializza SPI con i pin personalizzati
  SPI.begin(TFT_SCLK, TFT_MISO, TFT_MOSI, TFT_CS);
  .....
  .....
  

Mi autocorreggo... sono andato a vedere il sorgente della libreria per curiosità ed il bus SPI viene inizializzato già all'interno del metodo init()

L'istruzione in questione dovrebbe essere alla riga 647 di TFT_eSPI.cpp

Qui aveva un problema e l'ha risolto, prova a vedere (in inglese)
"TFT_eSPI and ILI9488 - nothing happens - #8 by rogiknaupi"

Diciamo che non mi sono posto il problema dei pin di default che non conosco, perché mi è comodo tenerli tutti vicini e raggruppati da un lato. Però posso provare a usare quelli di default per fare debug e capire se almeno è una cosa in più da escludere.
Ti ringrazio e controllo

Comunque sembra essere proprio un problema di tutti, mi sento meno solo (e stupido).
Cerco di capire, grazie per la fonte