Waveshare ESP32-S3-Touch-LCD-7
7" 800x480 RGB panel with GT911 touch. Same wiring as the 4.3" board, its own timings.
Building for it
A project is made for one toolchain, picked when you start it. For this board you can use 2 of them:
| Toolchain | |
|---|---|
| Arduino (C++) | Every board, every widget and every peripheral here. The most control, and the most to set up. Start a project |
| MicroPython | The MicroPython export drives SPI panels only. |
| ESPHome | No compiler to install, and the panel can join Home Assistant as real entities. Start a project |
At a glance
| Part | Detail |
|---|---|
| Maker | Waveshare |
| MCU | ESP32-S3 Xtensa LX7 dual-core @ 240 MHz, 512 KB SRAM (+ 2-16 MB PSRAM on most modules) |
| Display | Generic RGB565 panel, 800 x 480 px, RGB565 parallel (DPI), 16-bit colour |
| Touch | Goodix GT911 (capacitive, I2C) |
| Backlight | CH422G pin 2, on and off |
| Memory | 16 MB flash, 8 MB octal PSRAM (N16R8) |
| Graphics library | GFX Library for Arduino |
Display pins
Generic RGB565 panel on RGB565 parallel (DPI): RGB colour order, inversion off.
| Signal | Pin |
|---|---|
| DE | GPIO 5 |
| VSYNC | GPIO 3 |
| HSYNC | GPIO 46 |
| PCLK | GPIO 7 |
| R0 - R4 | GPIO 1, 2, 42, 41, 40 |
| G0 - G5 | GPIO 39, 0, 45, 48, 47, 21 |
| B0 - B4 | GPIO 14, 38, 18, 17, 10 |
| RESET | CH422G pin 3 |
| Backlight | CH422G pin 2 |
Touch pins
GT911: I2C address 0x5D, 400 kHz.
| Signal | Pin |
|---|---|
| SDA | GPIO 8 |
| SCL | GPIO 9 |
| INT / IRQ | GPIO 4 |
| RESET | CH422G pin 1 |
Also on the board
- I2C0 (touch, CH422G, header) - SDA GPIO 8, SCL GPIO 9
- CH422G I/O expander at 0x24, driving the lines marked above
- CH422G pin 6 is set high at boot
The preset adds these to the Hardware tab with the board, so a sensor can go straight onto the connector.
Check your revision. Touch reset (EXIO1), backlight (EXIO2), panel reset (EXIO3) and a second panel enable (EXIO6) are all on the CH422G at GPIO 8/9. ESPHome drives EXIO2 and EXIO6 together as enable pins, so if the panel is dark with the backlight apparently on, try swapping which of the two the backlight is on for your revision.
Designing for it in LCD Wizard
- Choose Waveshare ESP32-S3-Touch-LCD-7 on the Hardware tab (or use the button above) and every pin on this page is filled in. The export writes the sketch,
lcd_pins.h, the GFX Library for Arduino configuration,lv_conf.handplatformio.ini- a project that builds for this board as it comes. - The GT911 is capacitive and needs no calibration. The firmware resets it and checks it answers on every boot.
- The backlight switches on and off; it is not dimmable from the firmware.
- An RGB panel keeps its frame buffer in PSRAM, which this board has.
- Screens are designed for 800 x 480 px in either orientation, with LVGL 9 or LVGL 8.
The parts
Generic RGB565 panel. Raw RGB glass with no controller IC. All timing comes from the MCU.
GT911. The address is selected by the INT pin level during reset, so wire INT and RST if you can.
ESP32-S3. The only common Arduino target with a hardware RGB565 LCD peripheral. PSRAM is effectively required for RGB panels.
GFX Library for Arduino. Moshi Liu's library. Best QSPI/AMOLED and RGB coverage. Configured in code.
Designs for this board
Nobody has published a design for this board yet. Publish yours from the designer and it appears here and in the gallery.
Similar boards
Next
- Quick start - from an empty screen to firmware on the board
- Boards and displays - presets, controllers, pins and touch in the designer
- Flashing and configuration - PlatformIO, the Arduino IDE and first-boot checks
- Troubleshooting - a white screen, mirrored image or touch that misses