Skip to content

Testing three cheap and fast ST7789 AliExpress IPS Displays with TFT_eSPI by Bodmer. Tested with ESP32, S2 mini, S3, C3, C3 Super Mini, C6 and RP2040 using board package esp32 3.0.3 .

License

Notifications You must be signed in to change notification settings

mboehmerm/Three-IPS-Displays-with-ST7789-170x320-240x280-240x320

Repository files navigation

Three IPS Displays with ST7789. Same 8 pin connector

Resolution 170x320, 240x280 and 240x320

Aliexpress Displays between 2€ and 5€, tested with ESP32 Wemos lite, Arduino IDE 2.3.2 and TFT_eSPI 2.5.43.

Arduino IDE Board : "WEMOS LOLIN32 Lite"

All three displays work stable with 80MHz, even with a 50cm long cable between ESP32 and display.

Similar tests but with a RP2040 (ESP32-S2, S3, C3, C6) and more displays can be found in the folders RP2040 , ESP32_S2 , ESP32_S3 , ESP32_C3, ESP32_C3_Super_Mini and ESP32_C6.

Test 170x320 240x280 240x320
Bouncy_Circles 88 fps 73 fps 65 fps
boing_ball 134 fps 133 fps 136 fps
SpriteRotatingCube 303 fps 303 fps 303 fps
Display Surface matte matte glossy
Power Consumption 34 mA 41 mA 48 mA

_Front

Front

_Back

Back

graphicstest

Bouncy_Circles

Arduino/Bouncy_Circles.ino and Arduino/SpriteRotatingCube.ino and Arduino/boing_ball.ino ( not modified )

show_pictures

Connections for Wemos Lolin32 lite

GPIO TFT Description
23 SDA MOSI Hardware SPI
18 SCK CLK Hardware SPI
5 CS CS
17 DC DC
EN RES Reset
BLK 3.3V ( or PWM-Pin )
VCC 3.3V
GND GND

Configure the library TFT_eSPI

Edit the file Arduino/libraries/TFT_eSPI/User_Setup_Select.h

// Only **ONE** line below should be uncommented to define your setup.

//#include <User_Setup.h>                // Default setup is root library folder

// new setup file in folder Arduino/libraries, so updates will not overwrite your setups.
#include <../Setup407_ST7789_320x170.h>  // new setup file for  ST7789 170x320 
//#include <../Setup408_ST7789_280x240.h>  // new setup file for  ST7789 240x280 
//#include <../Setup409_ST7789_320x240.h>  // new setup file for  ST7789 240x320 

Create the new files :

#define USER_SETUP_ID 407

// Driver
#define ST7789_DRIVER            // Configure all registers
#define TFT_WIDTH  170
#define TFT_HEIGHT 320
#define TFT_INVERSION_ON
#define TFT_BACKLIGHT_ON 1

//#define TFT_RGB_ORDER TFT_BGR  // !!! Only for Display 240x320 !!!

// Pins
#define TFT_BL     -1            // 16  // LED backlight
#define TFT_MISO   -1            // Not connected
#define TFT_MOSI   23
#define TFT_SCLK   18
#define TFT_CS      5 
#define TFT_DC     17
#define TFT_RST    -1            // Set TFT_RST to -1 if display RESET is connected to ESP32 board EN

// Fonts
#define LOAD_GLCD
#define LOAD_FONT2
#define LOAD_FONT4
#define LOAD_FONT6
#define LOAD_FONT7
#define LOAD_FONT8
//#define LOAD_FONT8N
#define LOAD_GFXFF
#define SMOOTH_FONT

// Other options
//#define SPI_READ_FREQUENCY    20000000
//#define SPI_FREQUENCY         40000000
#define SPI_FREQUENCY         80000000

Test programs

All files can be found above in the folder Arduino.

Setup :

Benchmark :

Show Pictures :

Original TFT_eSPI Examples :

  • boing_ball.ino
  • Bouncy_Circles.ino
  • SpriteRotatingCube.ino
  • TFT_graphicstest_PDQ ( for Display 240x320 )

About

Testing three cheap and fast ST7789 AliExpress IPS Displays with TFT_eSPI by Bodmer. Tested with ESP32, S2 mini, S3, C3, C3 Super Mini, C6 and RP2040 using board package esp32 3.0.3 .

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages