SPI TFT kit/When it goes wrong/11. When nothing appears
When it goes wrong · 11 of 12

When nothing appears

Seven of the eight pads have to be right before a pixel can appear, and all seven fail in ways that look the same from across the desk. Here is how to tell them apart with nothing but the screen in front of you.

Pull one wire, see what happens

One wire out, at a time
no DC
Missing wire
Disconnected
DC
Pads still live
7 of 8
DC is what separates a command from a pixel. With it stuck, every command is written as colour or every colour is executed as a command. Check this one before you suspect the library. Seven of the eight pads have to be right before anything can appear, and they fail in ways that look identical from across the desk.

Step through the six. Each one disconnects a single pad and shows what that fault actually puts on the glass, which is the only evidence most people have before they own a meter.

Three of them leave the screen dark and three leave it white, and that split is the first question to ask.

Dark, or white?

Dark means the panel has no power, no ground, or no backlight. Three possibilities, and the third is by far the most common because BL is the one pad it is reasonable to leave off.

So resolve it the free way: tilt the screen towards a lamp and look at it at an angle. If you can see the picture in the reflection, everything works except the lamp. If there is nothing there either, it is power or ground.

White means the controller has power and has never been told anything. Most of this glass powers up white, so white is the resting state of a display that is alive and unaddressed. That is genuinely good news — it clears power, ground and backlight in one look, and leaves the five signal pads.

Among the signals, DC first

Of the five signal pads, DC is the one that goes wrong most.

It is the pad that says whether the byte on the wire is a command or a pixel. With it stuck in one state, every command is written into the picture or every pixel is executed as a command, and the result is white, or noise, or an image assembled out of garbage. It is also easy to mis-wire because it is the pad with the least memorable name.

RST is next. The controller needs a clean reset pulse before its initialisation sequence means anything; miss it and sixty commands land on a chip that was not listening, and the panel stays in whatever state it woke in.

CS has to be held low for the display to accept anything at all, and nothing on the board holds it there for you. A floating CS is a display that ignores the bus.

SCL and MOSI fail together and fail totally: nothing arrives, and the panel stays exactly as it powered up.

The order worth working in

  1. Is it dark or white? Dark is the three supply-and-lamp pads; white is the five signal pads.
  2. If dark: tilt it to a lamp. Picture visible means BL, nothing means power or ground.
  3. If white: is the ribbon contacts-down? It fits either way and only one works.
  4. Still white: DC, then RST, then CS.
  5. Open the serial monitor at 115200. begin() says whether it got a reply, and printInfo() says which pins it actually used.

Only after that is it worth suspecting the library — and by then the serial log usually says what is wrong.

When it does not work

It is plain white and has never shown anything

White is the state most of this glass powers up in, so white means the controller is alive and nothing has reached it. Check the ribbon is contacts-down first, then DC, then RST. A white screen is good news compared with a dark one — it proves power, ground and the backlight are all fine.

It worked yesterday and is white today

Suspect the cable before the code. A flat ribbon that has been folded can break a conductor inside while looking perfect, and the fault moves when you wiggle it. There are three spare cables in the case for exactly this.

It flickers, or the picture tears halfway down

That is a signal that is arriving but not cleanly: too long a ribbon, too fast a clock, or a 5 V board driving a 3.3 V input. Try the shortest cable, then setSpiHz with a lower number before begin, and check the logic levels if the host is not a 3.3 V board.

begin() returns false

The library could not bring the controller up. That narrows it to power, ground, the ribbon, or RST and DC — the sketch got far enough to try, so the board and port are fine. Read printInfo in the serial log and confirm the pins it lists are the pins you wired.

Where this goes next

Red arriving as blue, black arriving as white, and the third case that looks exotic and is not.

When the colours are wrong

Edit this page — content/books/spi-tft-kit/when-nothing-appears.mdx

Community

Questions about this product

See what other owners have asked, and read their solutions.

Ask a question ↗

SPI TFT LCD Display Kit, 6-Pack from 0.96 to 3.5 inch

Loading discussions…

Discuss this article

Ask about this page. The answer stays here, on the page it belongs to, for whoever hits the same wall next.

Browse Modules and blocks on the forum