Blank screen with ESP32-S3 and 7789VI
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:
(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.
Can you try using #define ST7789_2_DRIVER in your setup file
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
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 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 ?
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
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