

The ESP32-S3 Touch LCD 1.28 is a compact touchscreen display module that integrates the powerful ESP32-S3 microcontroller. This module features a 1.28-inch vibrant LCD screen with touch capabilities, making it an excellent choice for interactive IoT applications and embedded systems. With built-in Wi-Fi and Bluetooth connectivity, it enables seamless communication and control in smart devices, wearables, and home automation projects.








| Parameter | Value |
|---|---|
| Microcontroller | ESP32-S3 (Xtensa® 32-bit LX7 dual-core processor) |
| Display Size | 1.28 inches |
| Display Type | TFT LCD with capacitive touch |
| Resolution | 240 x 240 pixels |
| Connectivity | Wi-Fi 802.11 b/g/n, Bluetooth 5.0 LE |
| Flash Memory | Up to 16 MB |
| PSRAM | Up to 8 MB |
| Operating Voltage | 3.3V |
| Power Consumption | ~240 mA (active), ~10 µA (deep sleep) |
| Interface | SPI for display, I2C for touch |
| Dimensions | Compact form factor (approx. 40mm x 40mm) |
| Operating Temperature | -40°C to +85°C |
| Pin Name | Type | Description |
|---|---|---|
| VIN | Power Input | Main power input (3.3V recommended) |
| GND | Ground | Ground connection |
| SCK | SPI Clock | SPI clock signal for the LCD |
| MOSI | SPI Data Out | SPI data output for the LCD |
| MISO | SPI Data In | SPI data input (optional, not used in some configurations) |
| CS | SPI Chip Select | Chip select for the LCD |
| RST | Reset | Resets the module |
| INT | Interrupt | Interrupt pin for touch input |
| SDA | I2C Data | I2C data line for touch controller |
| SCL | I2C Clock | I2C clock line for touch controller |
TFT_eSPI library for display control and the Wire library for I2C communication.#include <TFT_eSPI.h> // Include the TFT library for display control
#include <Wire.h> // Include the Wire library for I2C communication
TFT_eSPI tft = TFT_eSPI(); // Create an instance of the TFT library
void setup() {
tft.init(); // Initialize the display
tft.setRotation(1); // Set display orientation (0-3)
tft.fillScreen(TFT_BLACK); // Clear the screen with black color
tft.setTextColor(TFT_WHITE, TFT_BLACK); // Set text color (foreground, background)
tft.setTextSize(2); // Set text size
tft.setCursor(10, 10); // Set cursor position
tft.println("Hello, ESP32-S3!"); // Display text on the screen
// Initialize I2C for touch input
Wire.begin(); // Start I2C communication
}
void loop() {
// Example: Display a rectangle that changes color every second
static bool toggle = false;
if (toggle) {
tft.fillRect(50, 50, 100, 100, TFT_RED); // Draw a red rectangle
} else {
tft.fillRect(50, 50, 100, 100, TFT_BLUE); // Draw a blue rectangle
}
toggle = !toggle; // Toggle the color
delay(1000); // Wait for 1 second
}
TFT_eSPI library, configure the User_Setup.h file to match your hardware connections.Display Not Turning On:
Touch Input Not Working:
Flickering or Distorted Display:
Module Not Responding:
Can I use this module with a 5V microcontroller?
What is the maximum distance for I2C communication?
How do I update the firmware on the ESP32-S3?
Is the display sunlight-readable?
This documentation provides a comprehensive guide to using the ESP32-S3 Touch LCD 1.28 module effectively in your projects.