New WS2812B LED matrix – Is it damaged?

By | 2018-06-13

I have bought two “WS2812B 8×8” LED matrix panels from China for a possible future project.

As I wanted to try them out it turned out, that none of them are working. So are they arrived broken?

I used a big power supply for powering both the Arduino Nano and the matrix. I have connected a the data-in via a 330 Ohm resistor, as suggested in other blogs. I have tried both the FastLED examples of the Arduino and the Adafruit Neopixel (and NeoMatrix) examples with no luck.

I have measured the data line with my oscilloscope and saw a very strange behavior, as there was very low voltage in the data-in at the matrix side of the 330 ohm resistor. I know, that something is just not right.

So I have started to dig down into the online documentation. On the Adafruit page there is a very comprehensive documentation in the topic please read that

Adafruit: The Magic of NeoPixels

This document discourage you about use a benchtop power supply, what I eventually did. So I was very upset, that I might just have killed both of my valuable modules. So I have measured my benchtop power supply behavior when switching on… I was lucky to use an oldschool labor device. It did not generated peaks in the power line, so the LED matrix was not killed by the benchtop power supply for sure.

So I have started poking the pins of the individual LED-s. This is what I have found.

  • This product does not use the WS2812B (newer) LED-s, but the WS2812 type that has 6 legs. There is no problem with this. But is just good to know.
  • The pin labeled as DIN is actually DOUT, and the one labeled as DOUT is the data in. So there is a labeling problem with the data pins.

So connecting the data-in to the pin labeled DOUT fixed the problem.

For the record:

  • NEO_KHZ800 and NEO_GRB should be used with WS2812 in the NeoPixel library.
  • The board is connected as “non serpentine layout”. Meaning that “under” LED-0 is the LED-8