What is the ILI9341?
The ILI9341 is a 262K-color TFT driver with 172,800 bytes of on-chip GRAM, exactly one full 240×320 frame at 18-bit color. It became the default controller for 2.4″ and 2.8″ hobby and industrial SPI modules.
ILI9341 on ESP32
On ESP32 the panel is usually driven over SPI at 40 MHz with DMA. For smooth LVGL UIs use partial buffers of 1/10 of the screen and enable double buffering in PSRAM-less designs.
Related
ILI9341 library support
| Library | Driver / class | Notes |
|---|---|---|
| TFT_eSPI (Arduino) | ILI9341_DRIVER (or ILI9341_2_DRIVER) | |
| LovyanGFX (Arduino / ESP-IDF) | lgfx::Panel_ILI9341 | |
| ESP-IDF esp_lcd | espressif/esp_lcd_ili9341 |
User_Setup_ILI9341.h · LGFX_ILI9341.hpp. Pins are placeholders; we email updates when we add tested configurations.
Dev boards using ILI9341
Display modules using ILI9341
ILI9341 troubleshooting & FAQ
ILI9341 vs ST7789: which should I choose?
Both are 240×320 drivers with GRAM. ILI9341 modules are usually TN or IPS at 2.4″–3.2″; ST7789 dominates smaller IPS panels. Library support is excellent for both, so choose by panel size, viewing angle and availability.
Why does my ILI9341 show a white screen?
The most common causes are a missing or wrong reset, MISO/MOSI swapped, a backlight-only power path, or a library configured for a different driver. Confirm the driver ID by reading register 0xD3.
What touch controller is used with ILI9341 modules?
Resistive versions typically use XPT2046 over SPI. Capacitive versions usually use FT6206/FT6336 over I2C.
