SPI TFT display/The board in your hand/06. The two solder jumpers
The board in your hand · 06 of 20

The two solder jumpers

Every board has two pairs of pads, each marked with the two nets it would join. One ties CS to GND and one ties BL to the rail that lights the lamp. Both ship open, and the one mistake they allow is bridging one and still driving the pad.

Which two

On the connector face, near the middle, there are two small pairs of pads each labelled with a pair of names. The labels say which two nets that jumper would tie together.

JumperPads markedTies
Chip selectGND and CS (printed in either order)CS to GND, on all six
Backlight3V3 and BLBL to 3V3, on the five larger boards
Backlight, 0.96″ onlyGND and BLBL to GND

The reference printed beside the pair (CS, GND, SB3, BL or 3V3) is different from board to board, so go by the two net names. The 0.96 inch is the only one whose backlight jumper goes to GND, because its lamp is switched on the high side and a low BL turns it on.

Bridge it, and the pad is spoken for
BL · BL/3V3
Board
Jumper
Solder
BL on your side
Pad sits on
nothing
Effect
none until you wire it
Your GPIO
unused
Open and left alone: as shipped, and not yet doing anything. The lamp is off. The picture will be drawn and cannot be seen until the pad is driven or the jumper is bridged.

What bridging each one does

CS to GND. CS is held low, so the controller is selected all the time. That is fine with one display on the bus. It means you can leave the CS hole unwired, and it means a second device on the same bus would hear every byte the display does.

BL to the rail. BL is held at the level that turns this board's lamp on, so the lamp is on all the time at full. You can leave the BL hole unwired, and there is no dimming. Without it the lamp is off until BL is driven, because a 10 kΩ resistor holds its transistor off.

Why they ship open

Open leaves both pads for the host to use, whatever the host is. Closed would have decided for everyone: a lamp that cannot dim and a select that cannot be shared. A bridge is easy to add and a little work to take away, so the board starts in the state nothing has to be undone from.

The one mistake

Bridge a jumper and the pad is no longer yours to drive. Two things drive it by default:

  • begin() sets the CS pin high as it brings the bus up, and drives it for every transfer after that.
  • begin() attaches PWM to the BL pin and writes full brightness to it, and every backlight() call after that writes a duty cycle.

With the CS jumper bridged, the first one is a GPIO driving high into ground straight away. With the BL jumper bridged, the pin and the rail agree while the lamp is at full and fight the moment the sketch dims it, because the pin then drives the other way for part of every cycle. Tell the library the pin does not exist, before begin():

LB_Wiring pins = LB_WIRING;   // the defaults for the board you picked
pins.cs = -1;                 // CS jumper bridged: the pad is tied to GND
pins.backlight = -1;          // BL jumper bridged: the lamp is always on
display.setWiring(pins);      // before begin()
display.begin();

With backlight at -1 the library's backlight() does nothing, and printInfo() says the pin is not driven. That is the point.

Bridging, and undoing it

The two pads are 1.27 mm apart centre to centre, with about a seventh of a millimetre of mask between them. Flux on both, a clean fine tip, a touch of solder, and the blob wets across the gap by itself. A meter on continuity confirms it.

To undo it, solder wick with a little flux and the iron on top for a second or two lifts the blob. Check with the meter that the pads read open. Nothing on the board was cut to make them, so there is nothing to repair.

When it does not work

I bridged BL and the lamp flickers or my GPIO runs hot

The library is still driving BL with PWM and the pad is tied to a rail, so below full brightness the pin fights the rail every cycle. Take the wire off the pad, or set pins.backlight to -1 before begin() so the library stops driving it, or open the bridge again. A pin that is shorted to a rail through its own output can be damaged, so do not leave it running.

I bridged CS and the picture is unreliable

begin() drives the CS pin high, and the pad is now tied to ground. Set pins.cs to -1 in the wiring so the library leaves it alone, and remove the CS wire from the pad. With CS tied low the controller is always selected, which is the point; it is also why no other device can share that bus.

Do I have to bridge either of them?

No. Both ship open and the board works as it is, with CS and BL on GPIOs. The jumpers are for saving two pins, or two wires, when there is only one display on the bus and you do not need to dim the lamp.

How do I know the pads are open?

Put a meter on continuity across the two pads. Open reads as nothing. The net list and the 3D models both show them open, and no copper trace joins them in the top layer, but a meter is the only thing that tells you about the board in your hand.

How do I undo a bridge?

Lay a little solder wick on the blob with a dab of flux, press the iron on top for a second or two and lift both away together. Look at the pads in good light, then check with a meter that they are open. There is nothing to cut, because nothing was cut to make them.

Where this goes next

The rule printed on the face of every board, and what ignoring it costs.

Three volts only →

Edit this page — content/books/lcd/the-two-solder-jumpers.mdx

Community

Questions about this product

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

This page covers several products. Choose yours to see the right 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 →