Waveshare · ESP32-S3 · 1.28" · 240×240

Waveshare ESP32-S3 Touch LCD 1.28" round specifications

The ESP32-S3-Touch-LCD-1.28 adds capacitive touch to Waveshare's round 1.28-inch display board. The 240×240 IPS panel (GC9A01A, SPI) sits under a CST816S touch controller on I2C, so a round watch-style interface can be operated directly on the glass.

The ESP32-S3R2 brings 2 MB of PSRAM, with 16 MB of external flash next to it, and a QMI8658 6-axis IMU is on board. A lithium battery connector with an ETA6096 charger and battery voltage sensing make it easy to build something portable.

Six GPIOs come out on a small SH1.0 connector, and Waveshare added a detail that is rare on boards this size: GPIO 4 and 5 drive MOSFET switch contacts next to the battery holder, so you can switch a small load such as a vibration motor directly.

Screen
1.28" · 240×240
Chip
ESP32-S3
Memory
16 MB flash, 2 MB PSRAM (QSPI)
Input
capacitive touch

Key features

  • Round 1.28-inch IPS, 240×240, GC9A01A
  • CST816S capacitive touch with gesture support
  • ESP32-S3R2: 2 MB PSRAM, 16 MB flash
  • QMI8658 6-axis IMU
  • LiPo connector with ETA6096 charger
  • Six GPIOs on SH1.0 plus MOSFET outputs for small loads

Specifications

Waveshare ESP32-S3 Touch LCD 1.28" round technical specifications
ManufacturerWaveshare
Screen size1.28"
Resolution240×240 px
Colour depth16-bit
Display controllerGC9A01 (SPI)
Display interfaceSPI
TouchCST816S (capacitive, I2C)
MicrocontrollerESP32-S3
ModuleESP32-S3R2
CPU clock240 MHz
Internal SRAM512 KB
PSRAM2 MB (QSPI)
Flash16 MB
Wi-FiYes
BluetoothYes
Display typeIPS, round, 65K colours, Φ32.4 mm active area
TouchCapacitive, CST816S (I2C)
IMUQMI8658 6-axis
Battery3.7 V lithium via MX1.25, ETA6096 charger, voltage on GPIO 1
ExpansionSH1.0 header with 6 GPIOs; MOSFET switch on GPIO 4/5
USBUSB-C, CH343P USB-to-UART with auto-download
Development platforms (manufacturer)Arduino IDE, MicroPython

GPIO pinout

The GPIOs the board itself uses — display, touch and on-board peripherals — as published in the manufacturer’s documentation.

Waveshare ESP32-S3 Touch LCD 1.28" round GPIO pinout
GPIOFunction
GPIO 1BAT_ADC (battery voltage)
GPIO 2Backlight (TFT_BL)
GPIO 3IMU_INT2 (QMI8658)
GPIO 4IMU_INT1 (QMI8658)
GPIO 5TOUCH_INT
GPIO 6I2C_SDA (Touch)
GPIO 7I2C_SCL (Touch)
GPIO 8TFT_DC
GPIO 9TFT_CS
GPIO 10TFT_CLK
GPIO 11TFT_MOSI
GPIO 12TFT_MISO
GPIO 13TOUCH_RST
GPIO 14TFT_RST

Source: www.waveshare.com. Always check against your board revision before wiring.

Free GPIOs and connectors

These GPIOs are not used by the display, touch or on-board peripherals, so you can wire your own sensors, buttons or relays to them.

Free GPIO pins of the Waveshare ESP32-S3 Touch LCD 1.28" round
PinCapabilitiesNote
GPIO 0GPIO, BOOTBoot button
GPIO 15GPIO, PWMOn the SH1.0 6-pin GPIO header
GPIO 16GPIO, PWMOn the SH1.0 6-pin GPIO header
GPIO 17GPIO, PWMOn the SH1.0 6-pin GPIO header
GPIO 18GPIO, PWMOn the SH1.0 6-pin GPIO header
GPIO 21GPIO, PWMOn the SH1.0 6-pin GPIO header
GPIO 33GPIO, PWMOn the SH1.0 6-pin GPIO header
GPIO 43/TXGPIO, UART_TXUART0 TX
GPIO 44/RXGPIO, UART_RXUART0 RX
  • SH1.0 GPIO header — GPIO 15, 16, 17, 18, 21, 33

    Six GPIOs led out per the wiki pin table

Good to know before you start

  • The six free GPIOs are GPIO 15, 16, 17, 18, 21 and 33 on the SH1.0 header — you need an SH1.0 cable to use them.
  • Only 2 MB of PSRAM; plan images accordingly.
  • The backlight is controlled from GPIO 2, so brightness can be adjusted in hardware.
  • Keep touch targets large: a 32 mm round screen leaves little room for small buttons.

What it is good for

  • •Smartwatch-style interfaces with swipe navigation
  • •Round touch controllers for lights or fans
  • •Wearables and handheld gadgets with vibration feedback
  • •Small IoT dashboards

LVGL support in LCD Ultra Pro

LVGL and LCD Ultra Pro support for the Waveshare ESP32-S3 Touch LCD 1.28" round
Driver statusMatched to the manufacturer’s official demo, compile-tested
Arduino exportComplete LVGL 8.4 project with the display driver
USB Live previewNo
Orientations0°
Brightness controlHardware backlight dimming

Pick this board in the editor and the canvas matches its exact resolution and shape. Build the interface with widgets, add events without code, try it in Live Preview, then export it as a ready-to-compile Arduino project. See the documentation for the workflow.

Frequently asked questions

Which touch controller does the ESP32-S3-Touch-LCD-1.28 use?

A CST816S capacitive touch controller on I2C.

How many GPIOs are free?

Six, on an SH1.0 header: GPIO 15, 16, 17, 18, 21 and 33. GPIO 4 and 5 additionally drive MOSFET switch contacts for small loads.

Is there a version in a case?

Yes, the ESP32-S3-Touch-LCD-1.28-B comes in a CNC metal case with an acrylic bottom plate.

Does it support a battery?

Yes, a 3.7 V lithium cell on an MX1.25 connector, charged by an ETA6096 chip.

Sources

Specifications cross-checked against the manufacturer’s documentation (last checked 2026-10-27):

Last updated: