Table of Contents

Advertisement

Chapter 4. Software framework

4.4.6 LCD

Where are the LCD drivers and reference examples for ESP32 series chips?
• You can find ESP' s LCD driver in
in * release/v4.4 and newer* versions. esp_lcd can drive LCD screens with four interfaces (I2C, SPI, 8080,
and RGB) supported by ESP series chips. For the LCD interfaces supported by ESP32 series chips, see
series chip screen
interface.
• For the application examples of the LCD driver of each interface, please refer to
in ESP-IDF. Currently, these examples are only available in release/v5.0 and newer versions. As the API
names of esp_lcd in release/v4.4 are basically same as those of higher versions, you can also refer to the above
examples (please note the API implementations are a little different).
• NOT RECOMMENDED Use the LCD driver and examples in esp-iot-solution.
• ESP-IDF release/v5.1 is recommended for RGB LCD applications as some features are not supported in
release/v4.4.
Which adapted ICs can be used by the LCD screen of ESP32 series chips?
Currently, the adapted ICs for the esp_lcd-based LCD driver include:
esp_lcd
: st7789, nt35510, ssd1306
Package Manager
Please note that even if driver ICs are same, different screens vary in register configuration
parameters. In addition, screen manufacturers generally provide matched configuration param-
eters (code). Thus, it is recommended to use the above two methods to obtain code of similar
driver ICs, and to update the code based on the parameters of your own screen.
Currently, the adapted ICs of esp_lcd_touch based touch driver include:
Package
Manager: FT5x06, GT1151, GT911, STMPE610, TT21100, XPT2046, CST816 (con-
tinuously updated).
How can I improve the display frame rate of LCD screens?
• The actual display frame rate of LCD screens is determined by the "interface frame rate"and "rendering
frame rate". Generally, the "interface frame rate"is much bigger than the "rendering frame rate". So
this question actually is "how can I improve the rendering frame rate of the LCD".
• The following ESP configuration items can improve the frame rate (ESP-IDF release/v5.0):
– CONFIG_FREERTOS_HZ=1000
– CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_240=y
– CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
– CONFIG_ESPTOOLPY_FLASHFREQ_120M=y [needs to be consistent with PSRAM]
– CONFIG_SPIRAM_MODE_OCT=y
– CONFIG_SPIRAM_SPEED_120M=y [Need to be consistent with FLASH]
– CONFIG_SPIRAM_FETCH_INSTRUCTIONS=y
– CONFIG_SPIRAM_RODATA=y
– CONFIG_ESP32S3_DATA_CACHE_LINE_64B=y
– CONFIG_COMPILER_OPTIMIZATION_PERF=y
• The following LVGL configuration items can improve the frame rate (LVGL v8.3):
– #define LV_MEM_CUSTOM 1
Espressif Systems
components/esp_lcd
: gc9a01, ili9341, ili9488, ra8875, sh1107, st7796 (continuously updated)
69
Submit Document Feedback
in ESP-IDF. However, this document is only available
ESP32
examples/peripherals/lcd
Release master

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the ESP and is the answer not in the manual?

This manual is also suitable for:

Esp32Esp8266Esp32-s2Esp32-c3Esp32-s3

Table of Contents