TFT_eSPI icon indicating copy to clipboard operation
TFT_eSPI copied to clipboard

Blank screen with ESP32-S3 and 7789VI

Open TG2025 opened this issue 1 year ago • 6 comments

Hey I'm failing to get any activity on my screen. I have tried with a few of the libraries examples like Arc_Fill or Colour_Test but the screen remains blank. My Setup -Board: ESP32-S3-MINI-1-N8 -Screen: 7789VI 2.4' SPI Connected with ribbon cable.

  • Using Arduino ide with esp32 bsp version: 2.0.14 (with newer versions there is the Guru Mediation Error on tft.begin() which I was able to resolve by switching to the older version, now it compiles and runs, but still with no response from the screen)
  • Read_User_Setup output:
TFT_eSPI ver = 2.5.34 // also tried the newest
Processor    = ESP32
Frequency    = 240MHz
Transactions = Yes
Interface    = SPI
Display driver = 7789
Display width  = 240
Display height = 320

MOSI    = GPIO 11
MISO    = GPIO 13
SCK     = GPIO 12
TFT_CS   = GPIO 10
TFT_DC   = GPIO 14
TFT_RST  = GPIO 15

Font GLCD   loaded
Font 2      loaded
Font 4      loaded
Font 6      loaded
Font 7      loaded
Font 8      loaded
Smooth font enabled

Display SPI frequency = 27.00
[/code]

Circuit:

Image (pin numbers in the schematic are referring to the footprint not Gpio)

I have verified the screen works with another library, namely the Adafruit_ST7789.h +SPI.h, with witch I'm able to display things using the same pin definitions so the connections should be fine.

I have tried toggling additional setting in the User_Setup:

//#define USE_HSPI_PORT
//#define TFT_SDA_READ
//different SPI_FREQUENCY speeds

With no result

I will appreciate any insight in to what else can be tried or what's the possible issue.

TG2025 avatar Mar 21 '25 11:03 TG2025

Can you try using #define ST7789_2_DRIVER in your setup file

Basitadam avatar Mar 22 '25 17:03 Basitadam

Thanks for the answer! I have tried that, unfortunately the display also remains blank with ST7789_2_DRIVER Curiously I see some activity on the screen when selecting ST7735_DRIVER

TG2025 avatar Mar 26 '25 17:03 TG2025

I made another ST789 driver for myself. I don't recall why I needed it. I can share it but requires these files to be replaced:

  • TFT_eSPI.cpp
  • User_Setup_Select.h These three to be added:
  • ST7789_3_Init.h
  • ST7789_3_Defines.h
  • ST7789_3_Rotation.h

Basitadam avatar Mar 26 '25 17:03 Basitadam

@Basitadam Would be very helpful if you could share it! I'll then try it out with my hardware. Do you recall how your driver driver differs from the TFT_eSPI default ?

TG2025 avatar Mar 29 '25 15:03 TG2025

Sorry. Not sure what is different. Maybe colors or basic init function. Here are the files (Please make sure you backup your files first). They were implemented to V2.5.43

https://www.filemail.com/d/jdynyxwzgljwbqf

Basitadam avatar Mar 31 '25 11:03 Basitadam

Im running into same issue. Enabling The USE_HSPI_PORT worked for me.

#define ST7789_DRIVER // Full configuration option, define additional parameters below for this display

#define TFT_SDA_READ // This option is for ESP32 ONLY, tested with ST7789 and GC9A01 display only

// #define TFT_RGB_ORDER TFT_RGB // Colour order Red-Green-Blue #define TFT_RGB_ORDER TFT_BGR // Colour order Blue-Green-Red

// For ST7789, ST7735, ILI9163 and GC9A01 ONLY, define the pixel width and height in portrait orientation #define TFT_WIDTH 240 // ST7789 240 x 240 and 240 x 320 #define TFT_HEIGHT 320 // ST7789 240 x 320

// If colours are inverted (white shows as black) then uncomment one of the next // 2 lines try both options, one of the options should correct the inversion.

#define TFT_INVERSION_ON // #define TFT_INVERSION_OFF

// ###### EDIT THE PIN NUMBERS IN THE LINES FOLLOWING TO SUIT YOUR ESP32 SETUP ######

#define TFT_MISO 13 #define TFT_MOSI 11 // In some display driver board, it might be written as "SDA" and so on. #define TFT_SCLK 12 #define TFT_CS 10 // Chip select control pin #define TFT_DC 6 // Data Command control pin #define TFT_RST 7 // Reset pin (could connect to Arduino RESET pin)

#define LOAD_GLCD // Font 1. Original Adafruit 8 pixel font needs ~1820 bytes in FLASH #define LOAD_FONT2 // Font 2. Small 16 pixel high font, needs ~3534 bytes in FLASH, 96 characters #define LOAD_FONT4 // Font 4. Medium 26 pixel high font, needs ~5848 bytes in FLASH, 96 characters #define LOAD_FONT6 // Font 6. Large 48 pixel font, needs ~2666 bytes in FLASH, only characters 1234567890:-.apm #define LOAD_FONT7 // Font 7. 7 segment 48 pixel font, needs ~2438 bytes in FLASH, only characters 1234567890:-. #define LOAD_FONT8 // Font 8. Large 75 pixel font needs ~3256 bytes in FLASH, only characters 1234567890:-. #define LOAD_GFXFF // FreeFonts. Include access to the 48 Adafruit_GFX free fonts FF1 to FF48 and custom fonts #define SMOOTH_FONT

#define USE_HSPI_PORT #define SPI_FREQUENCY 40000000 #define SPI_TOUCH_FREQUENCY 2500000

tvixen avatar Jul 01 '25 22:07 tvixen