LED bar graph/A build and a check/11. When nothing lights
A build and a check · 11 of 11

When nothing lights

Four different faults all look the same on the desk: a dark bar. They do not look the same on a meter, and two probe positions tell them apart without moving a single wire.

Two probe positions

Black probe in the Arduino's GND. Then:

  1. Red probe on COMMON. It should read 5 V and stay there.
  2. Red probe on each end of any one 220 Ω. With that segment's pin LOW, there should be about 3 V across the resistor.

Between them those two readings tell four faults apart.

Four faults, one symptom, four different readings
common not connected
What is wrong
COMMON reads
floating — anything
Across the resistor
0 V across the 220 Ω
Segment current
0.0 mA
A floating COMMON reads as almost anything. With nothing feeding it, the meter sees whatever leaks back through ten LEDs and ten pins, which is often a volt or two and looks encouraging. The test is not the number, it is that it moves when you touch the probe. Put the wire in the 5V hole and it will read 5.0 V and stay there.

The four

COMMON not connected. Reads as almost anything — a volt or two, leaking back through ten LEDs and ten pins — and it moves when you touch the probe. A connected COMMON reads 5 V and does not budge.

COMMON wired to GND. Reads 0.0 V. The resistor board is the positive end of every segment, and a row of holes marked COMMON on a black board looks exactly like a ground rail. This is the commonest one.

The bar in backwards. COMMON reads 5 V and the resistor has 0 V across it, because the whole rail is sitting on a diode that will not conduct that way. Lift the bar out and turn it end for end. Nothing is damaged.

A header not soldered. Readings that change when you press on the board. The resistor boards ship with no pins fitted, and a header pushed through and left unsoldered touches some of the time — which looks like a bug in the sketch and is not.

And then the code

If COMMON reads 5 V and a resistor has 3 V across it, the circuit is right and the remaining questions are software: are the pins the ones setup() makes outputs, and is the polarity the right way round. Write LOW to exactly one pin in setup(), with an empty loop(), and see which segment lights.

When it does not work

I have no meter

Then use the sketch as one. Comment out everything in loop(), and in setup() write LOW to one pin only. If that segment lights, the rail and the bar are fine and the problem is in the code that decides what to write. If it does not, the problem is in the four wires.

Every segment works except one

That is not any of the four faults here — those are all-or-nothing. Move that one wire to a segment you know works. If it lights, the fault is the wire or the breadboard hole; if it does not, it is a dry joint on that resistor board hole, or that LED. Twelve bars came in the box for exactly this.

It worked yesterday and does not today

Look at the breadboard before anything else. A jumper half out of its hole, or a bar lifted a millimetre by a wire pulling on it, is the commonest cause of a circuit that has changed on its own. Press everything down and try again.

The bar is lit and will not respond to the code

The pins are probably not outputs. If pinMode never ran for them, they are inputs, and an input pin with 5 V on the far side of an LED can pass enough to glow. Check that setup() covers every pin you have wired, not just the first one.

Where this goes next

The same LEDs, driven three wires at a time instead of ten.

The 74HC595 segment boards

Edit this page — content/books/led-bar-graph/when-nothing-lights.mdx

Community

Questions about this product

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

Ask a question ↗

10-Segment LED Bar Graph Kit, 12 Bars in 6 Colours

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