10 x 10 LED matrix with WS2812B

Hi, I made this 10x10 matrix using WS2812B LEDS. I tested the strip before cutting each LED individually and it all worked fine, but now only 3 of the LEDS light up. What have I done wrong.
I'm still fairly new to all this so any help would be appreciated.

Which ones light up?
Perhaps something as simple as poor soldering here and there.

@rbh87, your topic has been moved to a more suitable location on the forum.

Hello
Use a DMM and check the voltage for each stripe.

Post your test code, too.

I have checked all solder joints, and used a DMM to test each LED and I am getting 5v on each one. The first 3 from data in work with two random ones further along the line.

#include <FastLED.h>

#include "Plasma.cpp"
#include "TestPattern.cpp"
#include "Snake.cpp"
#include "Twinkle.cpp"
#include "DeadChannel.cpp"
#include "Bouncy.cpp"
#include "HiRez.cpp"
#include "Boxes.cpp"
#include "Life.cpp"
#include "Sprite.cpp"

#define WIDTH 10
#define HEIGHT 10
#define NUM_LEDS WIDTH * HEIGHT

#define DATA_PIN 6

CRGB leds[NUM_LEDS];

void setup() {
  // put your setup code here, to run once:

    FastLED.addLeds<WS2812B, DATA_PIN, GRB>(leds, NUM_LEDS);
}

void loop() {
  // put your main code here, to run repeatedly:
//    TestPattern testPattern(leds, WIDTH, HEIGHT);
//    testPattern.start();


    doTwinkle();
    doSnake();
    doLife();
    doSprite();
}

void doDeadChannel() {
    DeadChannel deadChannel(leds, WIDTH, HEIGHT);
    deadChannel.start();
}

void doPlasma() {
    Plasma plasma(leds, WIDTH, HEIGHT);
    plasma.start();
}

void doTwinkle() {
    Twinkle twinkle(leds, WIDTH, HEIGHT, true, true);
    twinkle.start();
}

void doSnake() {
    Snake snake(leds, WIDTH, HEIGHT);
    snake.start();
}

void doLife() {
    Life life(leds, WIDTH, HEIGHT, 56);
    life.start();
}

void doSprite() {
    Sprite sprite(leds, WIDTH, HEIGHT);
    sprite.start();
}```

It appears you have used an LED strip that has no capacitors soldered in the place reserved for capacitors, that is under each of the LEDs.

If so :-
it looks like a cheap LED strip that has missed them out. By adding extra space between the LEDs you make more prone to self interference. So add some surface mount 0.1uF capacitors on the LEDs and also add a large capacitor to the input power supply close to the start of the strip.

If you can't solder SMD you can buy 0.1uF ("100nF") capacitors and solder them across the power wires (one lead to +V, the other to Gnd).
You may want to try troubleshooting, disconnect everything after the first column, see what goes or doesn't.
You say the first three are OK and everything after is N.G. -- so maybe disconnect everything after #4 and if that's good, re-establish connections with more till the trouble returns.
Don't forget that resistor between the Arduino output and the first Data (Din) pin.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.