Overview
This document is a note on ESP32 series LCD application development, mainly introducing the basic methods of ESP32 series LCD application development, and focusing on the solutions to common problems in LCD development process based on ESP-IDF, and organizing the necessary documents for development.
Getting Started with LCD Development
Selection of LCD Driver Chip
The following is a summary of commonly used LCD configurations and performance recommendations for each platform, which can help to quickly select and avoid risks:
Platform |
Recommended Interface |
Typical Resolution |
Reference Frame Rate |
Recommendation / Risk Description |
---|---|---|---|---|
ESP32-C2 |
SPI |
160 × 160 |
Not recommended for LVGL |
Only recommended for image decoding, about 35 fps (depending on the image), tearing problem cannot be completely solved |
ESP32-C3/ESP32-C6 |
SPI |
240 × 240 |
About 25 fps |
Tearing problem cannot be completely solved |
ESP32-C5/ESP32-S3 |
QSPI / I80 / RGB (optional) |
360 × 360 |
About 32 fps |
Tearing can be optimized |
480 × 480 (RGB) |
About 24 fps |
Suitable for simple UI |
||
800 × 480 (RGB) |
About 21 fps |
Suitable for simple UI |
||
ESP32-P4 |
MIPI-DSI |
1024 × 600, 800 × 800 |
About 55 fps |
Excellent UI effect |
1280 × 720 (720P) |
About 38 fps |
Not recommended for complex UI |
||
1920 × 1080 (1080P) |
Not recommended for complex UI |
High pressure on PSRAM bandwidth, not recommended for high-load tasks such as overlaying Camera/MP4 video stream |
||
RGB (can support 24-bit parallel) |
1024 × 600 |
About 55 fps |
High resolution is prone to drift, MIPI-DSI is recommended |
Summary of LCD Driver IC
Supported Graphics Libraries
Graphics Library |
Supported Environment |
Features |
Link |
---|---|---|---|
LVGL |
Arduino, ESP-IDF |
Open source, comprehensive features, rich UI components, high performance |
|
TFT_eSPI |
Arduino |
Optimized for ILI/ILI/ST series drivers, fast speed |
|
Adafruit GFX |
Arduino |
Compatible with various TFT/OLED, wide ecosystem |
|
TinyGL |
ESP-IDF |
Lightweight, pure software rendering of OpenGL subset implementation |