Waveshare ESP32-S3
Waveshare ESP32-S3 2.8-inch Display Development Board User Manual
Brand: Waveshare | Model: ESP32-S3
1. Introduction
The Waveshare ESP32-S3 2.8-inch Display Development Board is a versatile microcontroller development board featuring a 2.8-inch IPS LCD with 480x640 resolution and optional touch functionality. It is powered by a high-performance Xtensa 32-bit LX7 dual-core processor running up to 240MHz, and supports 2.4GHz Wi-Fi and Bluetooth BLE 5. This board integrates high-capacity Flash and PSRAM, making it suitable for Human-Machine Interface (HMI) applications and other ESP32-S3 projects requiring a display.
2. Package Contents
Verify that all items listed below are included in your package:
- ESP32-S3-Touch-LCD-2.8B Development Board x1
- SH1.0 4PIN cable ~100mm x2

Image: Package contents including the ESP32-S3-Touch-LCD-2.8B board and two SH1.0 4PIN cables.
3. Key Features
- Processor: Equipped with high-performance Xtensa 32-bit LX7 dual-core processor, with a main frequency up to 240MHz.
- Connectivity: Supports 2.4GHz Wi-Fi (802.11 b/g/n) and Bluetooth 5 (LE), featuring an onboard antenna for reliable wireless communication.
- Memory: Built-in 512KB SRAM and 384KB ROM, complemented by onboard 16MB Flash and 8MB PSRAM for ample storage and processing capabilities.
- Display: Features a 2.8-inch LCD display with 480×640 resolution, providing clear and vibrant visuals.
- Touch Functionality: Supports touch control via an I2C interface, including interrupt support (available on touch versions only).
- Peripheral Interfaces: Adapts UART, I2C, and various IO interfaces, and integrates a full-speed USB port for flexible connectivity.
- Integrated Sensors: Includes an onboard QMI8658 6-axis sensor, RTC sensor, TF card slot, and a battery recharge management module.
- Power Management: Supports precise control over flexible clocking and multiple power modes to achieve low power consumption in diverse scenarios.

Image: Overview of the ESP32-S3-Touch-LCD-2.8B's integrated features.
4. Version Options
The ESP32-S3 2.8-inch Display Development Board is available in different configurations, including options for touch functionality. Please refer to the product listing for specific model availability.

Image: Different versions of the ESP32-S3-Touch-LCD-2.8B, showing models with and without a protective case.
5. Hardware Overview
5.1. Onboard Components

Image: Labeled diagram of the ESP32-S3-Touch-LCD-2.8B board highlighting key components and their locations.
- ESP32-S3R8: Dual-core processor, up to 240MHz operating frequency.
- 16MB Flash: Integrated flash memory.
- QST attitude sensor: QMI8658 (6-axis IMU includes a 3-axis gyroscope and a 3-axis accelerometer).
- Onboard ceramic antenna: For Wi-Fi and Bluetooth connectivity.
- TCA9554PWR: GPIO expander chip.
- PCF85063 RTC chip: Real-Time Clock chip.
- MP1605GTF-Z: Power module, 2A current (MAX).
- Battery recharge manager: Manages battery charging.
- Buzzer: For audio feedback.
- TF card slot: Located on the back side of the PCB for expandable storage.
- BOOT button: Boot mode selection.
- RESET button: Resets the board.
- IPEX1 connector: For switching to an external antenna (requires resoldering the resistor).
- 2*12PIN 2.54mm pin header: General purpose input/output pins.
- RTC battery header: For connecting a rechargeable RTC battery.
- MX1.25 battery header: MX1.25 2PIN connector, for 3.7V Lithium battery, supports charging and discharging.
- UART header: Universal Asynchronous Receiver-Transmitter interface.
- Charge indicator: LED indicating charging status.
- USB Type-C port: For power and data communication.
- Power indicator: LED indicating power status.
- I2C header: For connecting internal I2C peripherals, not mappable to other functions.
- Battery power supply control button: Controls battery power.
5.2. Peripheral Support
The board supports the expansion of multiple peripherals via GPIO, UART, and I2C interfaces, providing extensive connectivity options for various projects.

Image: Pinout diagram showing power, ground, and GPIO connections for external peripherals.
6. Technical Specifications
| Feature | Detail |
|---|---|
| Processor | Xtensa 32-bit LX7 Dual-core, up to 240 MHz |
| RAM | 512KB SRAM, 8MB PSRAM |
| ROM | 384KB ROM |
| Flash Memory | 16MB Flash |
| Wireless Type | 2.4GHz Wi-Fi (802.11 b/g/n), Bluetooth 5 (LE) |
| Display Type | 2.8-inch IPS LCD |
| Display Resolution | 480×640 pixels |
| Touch Function | Capacitive touch (for touch version only) via I2C interface |
| Sensors | QMI8658 6-axis sensor, RTC sensor |
| External Storage | TF card slot |
| Power Input | USB Type-C, 3.7V Lithium battery (via MX1.25 header) |
| Dimensions | 3.15 x 2.8 x 0.87 inches (approximate, for packaged item) |
| Operating System | Linux (supported development environment) |
6.1. Display Panel Details
| Parameter | Value |
|---|---|
| Display Panel | IPS LCD |
| Resolution | 480 × 640 |
| Display Size | 2.8 inch |
| Display Colors | 65K |
| Communication Interface | SPI + RGB |
| Driver IC | ST7701 |
| Touch | Supported (Touch Version Only) |
| Touch IC | GT911 (Touch Version Only) |

Image: IPS Display Panel showcasing wide viewing angles.
6.2. Outline Dimensions

Image: Outline dimensions for both touch and non-touch versions of the board.
7. Setup Guide
To begin using your Waveshare ESP32-S3 Development Board, follow these general steps. Detailed instructions and specific code examples are available on the Waveshare Wiki.
- Connect Power: Connect the board to a power source using the USB Type-C port. Alternatively, for portable applications, connect a 3.7V Lithium battery to the MX1.25 battery header.
- Install Drivers: Ensure your computer has the necessary USB drivers installed for the ESP32-S3.
- Prepare Development Environment:
- Arduino IDE: Download and install the Arduino IDE. Add the ESP32 board package through the Boards Manager.
- ESP-IDF: For more advanced development, set up the Espressif IoT Development Framework (ESP-IDF) on your system.
- Upload Firmware: Use the chosen IDE (Arduino IDE or ESP-IDF) to upload your desired firmware or example code to the board. This typically involves selecting the correct board, COM port, and flash settings.
- Test Functionality: After successful upload, test the display, touch (if applicable), and other integrated peripherals like Wi-Fi, Bluetooth, and sensors.
Video: This video demonstrates the setup and programming process for the ESP32 S3 LCD 28B, showing how to prepare the development environment and upload code.
8. Operating Instructions
Once the board is powered and programmed, it will execute the uploaded application. Operation will vary depending on the specific firmware loaded onto the device. Here are general operating principles:
- Display Interaction: The 2.8-inch LCD will show visual output from your program. For touch versions, interact with the screen using your finger for input.
- Button Usage: The BOOT and RESET buttons are primarily for programming and resetting the device. Custom functions can be assigned to these buttons within your firmware. The PWR button controls the power supply.
- Wireless Communication: Utilize the integrated Wi-Fi and Bluetooth 5 (LE) for wireless data transmission and network connectivity as defined by your application.
- Sensor Data: Access data from the QMI8658 6-axis IMU and RTC sensor through your code for various applications requiring motion sensing or timekeeping.
- TF Card: Insert a TF card into the slot for data logging or additional storage as required by your project.
Video: Demonstration of the ESP32 S3 Touch LCD 2 in operation, showcasing its display and touch capabilities with various applications.
Video: Overview of the ESP32 S3/C6 LCD Touch 1.9 Series, demonstrating its features and potential applications.
Video: Detailed look at the ESP32 S3 Touch AMOLED 2.41 Series, highlighting its display quality and touch responsiveness.
Video: A brief overview of the Hosyond 2.8" Touchscreen with ESP32-S3 Module, demonstrating its features and functionality.
9. Maintenance
- Cleaning: Use a soft, dry cloth to clean the display and board. Avoid using liquid cleaners or solvents.
- Storage: Store the board in a cool, dry environment away from direct sunlight and extreme temperatures.
- Handling: Handle the board with care to avoid physical damage to components or connectors. Avoid static discharge.
- Firmware Updates: Regularly check the Waveshare Wiki for firmware updates and apply them as needed to ensure optimal performance and access to new features.
10. Troubleshooting
- Board Not Powering On:
- Ensure the USB Type-C cable is securely connected to a working power source.
- If using a battery, verify it is charged and correctly connected to the MX1.25 header.
- Check the power indicator LED on the board.
- Display Not Working:
- Confirm that the display ribbon cable is properly seated.
- Verify that the correct display driver is initialized in your firmware.
- Touch Function Not Responding:
- Ensure you have the touch version of the board.
- Check I2C connections and ensure the GT911 touch IC is correctly configured in your code.
- Wi-Fi/Bluetooth Connectivity Issues:
- Verify that the onboard ceramic antenna is not obstructed.
- Check your firmware for correct Wi-Fi/Bluetooth initialization and credentials.
- Firmware Upload Failure:
- Ensure the correct COM port is selected in your IDE.
- Verify that the board type (ESP32-S3 Dev Module) and flash settings (Flash Mode, Flash Size, PSRAM) are correctly configured.
- Press and hold the BOOT button while pressing and releasing the RESET button before initiating upload if needed.
11. Warranty and Support
For warranty information, please refer to the Waveshare official website or contact your retailer. For technical support, detailed documentation, and resources, please visit the official Waveshare Wiki:
Ask a question about this manual
Ask about setup, troubleshooting, compatibility, parts, safety, or missing instructions. Manuals+ will review the question and use this page’s manual context to help answer it.