logo elektroda
logo elektroda
X
logo elektroda

Waveshare ESP32-S3-Touch-LCD-5 - Wi-Fi, BLE, CAN, RS485 and 800x480 touch screen

p.kaczmarek2  Cool? (+5)
📢 Listen (AI):
Waveshare ESP32-S3-Touch-LCD-5 touchscreen displaying LVGL v8 UI demo with a user profile screen. .
The Waveshare ESP32-S3-Touch-LCD-5 is a board offering a 5-inch touchscreen with 800x480 resolution (1024x600 in the B version) controlled by an ESP32-S3 with additional PSRAM and a convenient USB-C connector. In addition, a wealth of peripherals are on board, such as a CAN interface, RS485, battery connector and microSD card slot, allowing the board to be quickly integrated into a variety of devices, including building automation systems. The entire board can be purchased for around £200.
Waveshare ESP32-S3-Touch-LCD-5 product box with visible labels and markings. 5-inch Waveshare ESP32-S3-Touch-LCD-5 touch screen in a protective box, top view. Waveshare ESP32-S3-Touch-LCD-5 development board with connectors, ESP32 module, and screw terminals, placed in foam packaging. .
Out of the box, we immediately have the LVGL demo uploaded. It shows the use of the various controls available in this system, it is even possible to draw graphs.
Waveshare ESP32-S3-Touch-LCD-5 displaying an LVGL user profile demo interface. Waveshare ESP32-S3-Touch-LCD-5 showing LVGL v8 demo with an on-screen touch keyboard. Waveshare ESP32-S3-Touch-LCD-5 display running an LVGL demo with a line chart on screen. .
Waveshare ESP32-S3-Touch-LCD-5 display showing LVGL demo with a bar chart on the screen. Waveshare ESP32-S3-Touch-LCD-5 touchscreen displaying an LVGL analytics interface demo. Waveshare ESP32-S3-Touch-LCD-5 5-inch touchscreen showing LVGL demo with charts and product list. .
However, let us first turn to specification :
Quote:
Processor: Xtensa 32-bit LX7 dual-core up to 240MHz
Product dimensions: 1.4 x 12.77 x 8.75 cm
Weight: 145.15 g
ASIN: B0DD7M58T9
Flash memory capacity: 16 MB
PSRAM memory capacity: 8 MB
Embedded memory: 512 KB SRAM, 384 KB ROM
Connectivity: 2.4GHz Wi-Fi (802.11 b/g/n) and Bluetooth 5 (LE)
Display: 5-inch capacitive touchscreen, 800×480 or 1024×600 resolution, 65K colours
Touch control: 5-point touch support via I2C interface, interrupt support
Power supply: built-in voltage regulator, support for wide voltage range 7~36V
RTC: on-board real-time clock chip with battery back-up
Interfaces: CAN, RS485, I2C, TF card slot, GH1.25 2P connector for battery, isolated digital I/Os
Digital inputs: passive and active input support, isolation via bidirectional optocouplers
Digital outputs: isolation via optocouplers, up to 450 mA load capability
LEDs: power and battery charging status indicators
Power management: flexible clocking, independent power supply for modules, support for low power modes

Schematic:
Block diagram showing connections and modules of the Waveshare ESP32-S3-Touch-LCD-5 board, including LCD, power, USB, RS485, CAN, battery, RTC, and SD slot.
PCB view:
Diagram of the Waveshare ESP32-S3-Touch-LCD-5 board layout, showing connector and component labels.
Layout diagram of components on the Waveshare ESP32-S3-Touch-LCD-5 PCB with labeled electronic components. .
Full documentation on the waveshare wiki: https://www.waveshare.com/wiki/ESP32-S3-Touch-LCD-5

Waveshare also describes the launch of this board with Arduino , for this reason I decided to try it with PlatformIO. I have already presented PlatformIO in several topics:
How to program a Wemos D1 (ESP8266) board in the shape of an Arduino? ArduinoOTA in PlatformIO .
WiFi Manager in PlatformIO - convenient WiFi configuration for ESP8266 and ESP32 - tutorial
Port Expander Module PCF8574 - PlatformIO tutorial - Arduino/ESP/itd pin expansion
Clock on ESP12 and MAX7219 display - tutorial - part 1, ArduinoOTA, basics .
There is a project on Github that directly supports the board in question and can also be run just in PlatformIO:
https://github.com/esp-arduino-libs/ESP32_Display_Panel
The ESP32_Display_Panel project offers support for various display modules from ESP, and supports M5Stack, Elecrow, VIEWE and just Waveshare products. The structure of the ESP32_Display_Panel is shown in the diagram:
Block diagram showing the software architecture of ESP32_Display_Panel with layers and supported components. .
Running the ESP32_Display_Panel in PlatformIO is very simple. We download the repository and import the example project lvgl_v8_port, which is available here:
https://github.com/esp-arduino-libs/ESP32_Dis.../tree/master/examples/platformio/lvgl_v8_port
There we have the finished project with the matching platformio.ini.
PlatformIO should install the missing libraries by itself, but this may take a bit of time.
Then we still need to select our board. Otherwise we will get this message:
Code: C / C++
Log in, to see the code
.
The configuration methods are described in detail in the readme, but I myself have decided to compile in custom mode, where only in esp_panel_board_supported_conf.h
I need to set ESP_PANEL_BOARD_DEFAULT_USE_SUPPORTED to 1 and uncomment BOARD_WAVESHARE_ESP32_S3_TOUCH_LCD_5 (for 800x480 version, an option for higher resolution versions is also available - BOARD_WAVESHARE_ESP32_S3_TOUCH_LCD_5_B).
Then you can compile and start testing by editing main.cpp:
Code: C / C++
Log in, to see the code
.
Result:
5-inch Waveshare ESP32-S3-Touch-LCD-5 touchscreen showing a welcome message “Hello Elektroda.com!” with test parameters. .
At this stage we have a functional design with LVGL, which I have already described on the forum some time ago:
ESP32 and touchscreen display - part 5 - LVGL in SquareLine Studio .
ESP32 and touch display - part 6, RGB lamp control, RGB picker
ESP32 and touch display - part 7, how to make a keyboard in LVGL? Login. .
You can still test that the touchscreen also works:
Code: C / C++
Log in, to see the code
.
The above code creates a single button together with a click event handler. When clicked, the colour of this button changes.
Everything works:
A finger approaching an orange button labeled Click Me on a touchscreen. An index finger touches a blue button labeled Click Me on a touchscreen display. .
In summary , the module proved to be simple to run, both in the Arduino IDE (instructions are on the Waveshare wiki) and in PlatformIO. You can confidently base your projects on it, just what projects? What applications do you see for it, has anyone already experimented with this type of display? Feel free to discuss.

About Author
p.kaczmarek2
p.kaczmarek2 wrote 12308 posts with rating 10196 , helped 582 times. Been with us since 2014 year.

Comments

ArturAVS 01 May 2025 18:37

How about the speed of operation? Can you insert some video? I have a DWIN 7", similar to nextion. It is on a dedicated SoC. I bought with the idea of using it for home automation. Unfortunately, health... [Read more]

p.kaczmarek2 01 May 2025 19:35

Good point, indeed this product has the same affliction as the previously tested display ( ESP32-2432S028R ), namely, to some extent it feels like it is not the same smoothness as on a normal touch smartphone.... [Read more]

ArturAVS 01 May 2025 19:40

That's the one I have, and I'm also annoyed by the response delays. I think I'll sit on that DWIN. The factory demo works quite decently. [Read more]

chemik_16 02 May 2025 09:41

I have 2 similar ones too, bought once from ali from coins for a few $ each. I was planning to put them in instead of switches, for HA control. It was also tempting to make this into a portable terminal... [Read more]

p.kaczmarek2 02 May 2025 09:46

I wonder if the 320x480 version is slightly more responsive? [Read more]

chemik_16 02 May 2025 09:49

. It is not ;) . There were also 320x240 variants, but the lags are the same [Read more]

damdam 05 May 2025 22:51

Polish company Riverdi's screens with STM32 on board + TouchGFX do the job in terms of smoothness. CANs murmurs bytes everything you need integrated, lots of memory. I pre-designed a device with NEXTION,... [Read more]

Karol966 07 May 2025 10:58

Yes, this is true but nothing is free => price. Cheaper and just as fast can be done using the same TFT panels with EVE chips (BT817 etc and also riverdi has them on offer). I have used the 10.1" screens... [Read more]

%}