ST7735 TFT 1.8-inch

A 1.8-inch 128x160 color TFT LCD breakout driven by an ST7735S controller over a 4-wire SPI interface.

ST7735 TFT 1.8-inch: Color SPI display

What is the ST7735 TFT 1.8-inch?

The ST7735 1.8-inch TFT is a small color graphic display built around the ST7735S controller. This particular breakout is the LCDWiki MSP1803 (and pin-compatible generics), with a 128x160 pixel panel that renders roughly 65K (16-bit) colors. The active viewing area measures about 28.03 x 35.04 mm on a 34.5 x 58.0 mm PCB, making it a compact way to add graphics, text, and simple UI to a microcontroller project.

It talks to the host over a 4-wire SPI bus using CS (chip select), SCK (clock), SDA/MOSI (data), plus an A0 data/command line and a RESET line. There is no data-out pin, so the TFT is write-only over SPI. The module is well supported by common libraries such as Adafruit's ST7735 driver and TFT_eSPI, which handle the ST7735 initialization and drawing primitives.

The board accepts 3.3-5V on VCC, but its logic operates at 3.3V TTL, and a separate LED pin controls the backlight. Many MSP1803 boards also include an onboard microSD/TF card slot on separate SPI pins, which is handy for loading bitmaps and fonts, though the display and card are driven independently.

ST7735 TFT 1.8-inch pinout

PinFunctionType
VCC VCC (3.3-5V)PowerPower in
GND GNDPowerPower in
CS CSSPI CSDigital input
RESET RESETDigital active-low resetDigital input
A0 A0SPI data/command selectDigital input
SDA SDA / MOSISPI MOSIDigital input
SCK SCKSPI SCKDigital input
LED LED (backlight)Digital backlight enable, tie high if not dimmedDigital input

Specifications

Operating voltage
3.3 V (max 5 V)
Interface
SPI
Dimensions
34.5 × 4.25 × 58 mm

Verified from the Tinkered component library · LCDWiki / generic ST7735S breakout (MSP1803).

Circuit requirements

  • Uses a 4-wire SPI interface: wire CS, SCK, and SDA/MOSI to the host SPI pins, plus A0 (data/command select) and RESET to spare GPIOs.
  • Logic level is 3.3V TTL. VCC accepts 3.3-5V, but the control and SPI lines expect 3.3V signaling, so level-shift the logic lines when driving from a 5V board like an Arduino Uno.
  • A0 selects command versus data mode and must connect to a GPIO the library can toggle; it cannot be tied to a fixed level.
  • RESET is active-low. Drive it from a GPIO (preferred) or tie it high so the controller can complete its power-on initialization.
  • The LED pin enables the backlight. Tie it high (3.3V) for always-on, or feed it a PWM signal for brightness control; with it low or floating the panel appears black even when driven correctly.
  • The display is write-only over SPI (no MISO/read-back), so the framebuffer contents cannot be read back from the panel.

Board compatibility

The ST7735 TFT 1.8-inch connects to any of the microcontrollers supported in Tinkered. Mind the 3.3 V logic level on 3.3 V boards.

Simulate the ST7735 TFT 1.8-inch in your browser

The ST7735 TFT 1.8-inch is fully simulated in Tinkered. Wire it into a circuit, write your firmware, and read real values back with no physical hardware. Test your logic before you touch a breadboard.

Open it in the simulator

Common ST7735 TFT 1.8-inch mistakes

Driving 3.3V logic pins directly from a 5V board

VCC tolerates 3.3-5V, which fools people into assuming the whole module is 5V-safe. The ST7735S logic is 3.3V TTL. Connecting SCK, SDA, A0, CS, and RESET straight to 5V outputs overstresses the controller inputs. Use a level shifter or a 3.3V host for the signal lines.

Choosing the wrong controller tab / init variant

ST7735 panels ship in several variants (often called red, green, or black tab, or INITR options in libraries). Picking the wrong one produces a shifted image with a colored border, inverted colors, or swapped red/blue channels. Try the alternate init constant if the image looks offset or the colors are wrong.

Leaving the LED backlight pin disconnected

If SPI is wired correctly but the screen stays black, the backlight is usually the cause. The LED pin must be tied high (or PWM-driven) for the panel to be visible; the controller can be initialized and drawing while the display still looks dark.

Forgetting the A0 (DC) data/command line

A0 is not optional and cannot be strapped to a fixed level. The library toggles it to distinguish commands from pixel data. Miswiring it to the wrong pin (or to VCC/GND) results in a blank or garbled screen even though power and clock look fine.

Letting RESET float

A floating RESET can leave the ST7735S in an undefined state so it never initializes. Connect RESET to a GPIO so the library can pulse it, or at minimum tie it high through the board's reset circuit.

ST7735 TFT 1.8-inch datasheet

Official ST7735 TFT 1.8-inch datasheetLCDWiki / generic ST7735S breakout (MSP1803)

Popular ST7735 TFT 1.8-inch projects

Sensor dashboard

Show live temperature, humidity, or other sensor readings as large text and simple gauges on a compact color screen.

Digital clock and status display

Drive a color clock face, weather icon, or system status readout for a desk gadget or home automation node.

Retro graphics and mini games

The 128x160 pixel canvas and fast SPI make it a good target for tile-based graphics, sprites, and simple arcade-style games.

microSD image viewer

Load and display bitmap images from the onboard microSD/TF card slot for a photo frame or asset-driven UI.

Waveform and data plotter

Plot ADC readings or signal traces over time for a lightweight oscilloscope-style or logging display.

Build with the ST7735 TFT 1.8-inch.

Drop the ST7735 TFT 1.8-inch into a circuit, write firmware, and simulate it in your browser, then deploy to real hardware. All in one editable Tinkered project.