Skip to content
TFT / Color

ST7789 1.3" IPS TFT Display

Compact 240×240 IPS display with vivid colours and wide viewing angles.

The ST7789 1.3‑inch IPS TFT display is a compact, high‑density colour screen that delivers vibrant visuals with 240×240 resolution and 65K colours. The IPS (In‑Plane Switching) panel technology provides excellent colour reproduction and viewing angles of up to 80° in all directions, making it ideal for wearable devices, handheld gadgets, dashboards, and compact GUIs.

The display is built around the ST7789 driver chip, which includes a built‑in frame buffer and supports 4‑wire SPI communication. Many modules include a microSD card slot for loading full‑colour bitmaps from FAT16/FAT32 formatted cards.

The module operates at 3.3V logic levels. Some variants (like Adafruit's breakout) include an onboard 3.3V regulator and 3/5V level shifter, making them compatible with both 3.3V and 5V microcontrollers. Always check your specific module's voltage tolerance before connecting.

Note: This entry covers the standard SPI version of the display, which is the most widely available. It also includes optional touch support if your module includes a resistive touch controller (often XPT2046).

Specifications

Resolution240 × 240 pixels
Color depth65K colours (RGB 16‑bit 565)
Display technologyIPS (In‑Plane Switching)
Viewing angle~80° all directions
Interface4‑wire SPI
Operating voltage3.3V (some boards accept 5V with level shifter)
Logic voltage3.3V
Backlight3 white LEDs, controlled via PWM
Active area23.4 × 23.4 mm
Module dimensions~32 × 28 mm
Extra featuresmicroSD card slot (optional)
Operating temperature-20°C to 60°C

Pinout

PinNameDescription
1VCCPower — 3.3V (or 5V if board has level shifter)
2GNDGround
3CSSPI chip select (active low)
4RESETHardware reset, active low
5DCData/Command select — high for data, low for command
6SDI (MOSI)SPI data in (Master Out Slave In)
7SCKSPI clock
8LEDBacklight control — PWM for brightness, or tie high
9SDO (MISO)SPI data out (optional, for reading)
10T_CSTouch chip select (if touch present, XPT2046)
11T_IRQTouch interrupt (optional)

Critical usage notes:

  • SPI speed: The ST7789 supports SPI clock rates up to 80 MHz, but many microcontrollers top out at 40 MHz. Start with a lower speed (e.g., 10 MHz) if you encounter glitches.
  • Backlight: The LED pin can be connected to 3.3V for always‑on, or to a PWM pin for brightness control. Some modules have a dedicated backlight enable pin.
  • Voltage: Unless your board has a level shifter, do not apply 5V to logic pins — it will damage the display. The 3.3V supply must be stable; a 100 µF capacitor near the module is recommended.
  • SPI MISO: Some modules omit the MISO pin; if your library tries to read from the display, you may need to set -1 as the MISO pin in the constructor or use a software SPI fallback.
  • IPS advantages: The IPS panel gives consistent colours even when viewed at extreme angles, perfect for wearable screens where the device may be tilted.
  • SD card: If your module has an SD slot, it typically uses a separate CS pin (often Pin 4 on Arduino) and shares the same SPI lines.

Variants

Choose the standard SPI version for most projects; add touch if you need user interaction. The Adafruit breakout is convenient for breadboard prototyping with its Qwiic/STEMMA connector and built‑in regulator.

VariantTemp rangeHum rangeAccuracyProtocolPrice
Standard SPI (no touch)~$8-12
SPI with resistive touch~$12-16
Adafruit 1.3" IPS Breakout~$15

Board Integration

Library

Adafruit_ST7789by Adafruit

Arduino IDE → Library Manager → search "Adafruit ST7789" → Install (also install "Adafruit GFX Library" and "Adafruit BusIO")

Wiring

Component pinBoard pinNote
VCC5VIf board has level shifter; otherwise use 3.3V
GNDGND
CSD10
RESETD8
DCD9
SDI (MOSI)D11
SCKD13
LED3.3VOr PWM pin
SDO (MISO)D12Optional

Code

C++

Notes

  • The Adafruit_ST7789 library includes built‑in support for the 1.3" 240×240 panel. Use tft.init(240, 240) with the correct width/height.
  • For 5V Unos, ensure your module has a level shifter; otherwise, power VCC from 3.3V (but the Uno’s 3.3V pin can only supply ~150 mA, which may be insufficient if the backlight is on full — use an external 3.3V regulator).
  • MISO is optional; if your module doesn't have it, the library will work without it.