Go Down

Topic: Neopixel strip. Did I burn out DIN or bad Neopixel or other? (Read 477 times) previous topic - next topic

findmyj

Semi-newbie here.  My strip is a WS2812b 5m strip (300 leds) and when I first got it, I mistakenly attached a 9v adapter for a few seconds.  I got the right power supply, a 5v 12a and after wiring, only the first 10 seem to be getting some data.  It's hard to see in the picture below but the first led is a dim blue, second is super bright white then the next few are either not lit or the dim blue color.  After led 10, last dim blue one, the rest do not light up.



I'm using the strandtest code from the neopixel library and my wiring is the same as below. 



To test wiring and code were correct, I cut off the last 8 neopixels in the strand, changed pixel count in code to 8, wired and they worked perfectly.  I went to the strandtest code and modified pixel amount to 292 hooked those up and still the same as my original problem. 

While trying to troubleshoot online, I read that blue leds could mean data not flowing correctly.  So any chance I blew a DIN connection or neopixel when I hooked up the 9v power supply?  Or could it be that I'm not using a capacitor or resistor with the wiring? 

I was going to cut off the first 10, solder new wires and test again but figured I'd ask here first.


Thanks!

Grumpy_Mike

Well I did exactly the same thing on an 8 by 8 matrix made of those LEDs and it was toast. While I did not throw it away, it's only use is as a physical model for prototyping housings.
So while you can cut LEDs out I am not confident about you getting anything useful.

Faulty LEDs can light up well but fail to give any data output or not light up when they get a data input. Remember that, if an LED fails to light it could be because it is not receiving data from the previous one or that it is a faulty one.

As to your diagram, you can't power that many LEDs from the Arduino, and you have no capacitor across the power and ground connections and no series resistor in the data line.
For a test you can use that power arrangement but only if the software lights up one LED at a time.

Quote
So any chance I blew a DIN connection
Not a hope in hell.

Paul__B

No, hang on, that diagram is correct except for the missing capacitor and resistor.

Indeed, you cannot "power" NeoPixels - or much else for that matter - from the 5 V terminal if you are trying to power it from "Vin".  Possibly up to 500 mA if you are powering it from the USB connector.

Your diagram shows you are powering the strip and the UNO from a separate regulated 5 V supply using one of those neat adaptors.  That is just fine however if there is any significant distance between the Arduino and the LED strip you should have a 470 Ohm resistor in series with the data line at the LED strip end.

You should also have a capacitor - say 470 µF - across the 5 V and ground at the data strip.

A couple more things: 300 LEDs equates to 0.060 x 300 = 18 Amps (not twelve) if all are lit at once on full white (which may happen by accident :smiley-eek: ) so not only would that 2.1 mm coaxial connector not be up to the job but you would need to have a parallel connection from the supply to the strip every 50 or so LEDs otherwise those toward the end will dim and turn yellow instead of white.  If you can guarantee you will never light more than 20 or so (1.2 A) it may not be a problem.

And you need to keep the power wires as a pair - together - using twin or "figure 8" cable all the way, also the data wire needs to travel along with these cables so that it does not form an open loop.  :smiley-lol:

findmyj

ok so I found a neopixel sketch that lights up one LED at a time and same result.  I tested it on just 8 neopixels that I cut off from the end and it works fine.

Are you guys saying I'm getting the result in my first post because of no capacitor and resistor?  I understand that I would need more amps or additional power somewhere else along the strip to run the entire strip.  I'm just trying to figure out what's wrong with first 10 leds.  Should I just cut them off or will capacitor & resistor fix my issue?  I only have a 100uF capacitor, so can't test that yet till I order the right one.

My strip has 5v, gnd and data with a connector which I'm running to the UNO.  The strip also has two additional 5v & GND wires (next to connector) that I run to the coaxial connector power it.  The wire distance from the UNO and strip and power is very short. 

Or instead of cutting off the first ten, maybe cut it to 20 leds, see if they work then?  This is just a test strip so I don't care about cutting to test things out.

quick update:  I just tried using a jumper wire from PIN 6 to the DIN pin between each pixel on the first ten.  When I use the jumper from Arduino to DIN pin between 5 & 6, pixel five flickers but the rest don't when moving along the first ten.   

Paul__B

Are you saying that you are still playing around with a NeoPixel strip that you once connected to 9 V?

The answer if so is - buy a new one.

findmyj

Nah I'm using the one I mentioned in my OP, the 5v 12a. 


I went ahead and used jumper wire to the pins after the first 10 pixels and the rest of the strip works as programmed with the sketch only turning on a few LEDs at a time.  I was able to do that with just 5v from the UNO.  So just going to cut first ten off now. 

I have to order the correct capacitor so think I'm going to hold off on hooking the 5v 12a power supply until  I get it.  With that being said, is the only risk going without a capacitor damaging the first pixel with a spike or can it damage more? 

Thanks for your help.

Grumpy_Mike

Quote
With that being said, is the only risk going without a capacitor damaging the first pixel with a spike or can it damage more? 
More.

With the power there is nothing special about the first LED in the chain, like it is with the data line.

Paul__B

So it sounds to me as if you are still playing around with parts of a NeoPixel strip that you did once connect to 9 V.

Please explain where you have demonstrated otherwise.  :smiley-roll:

Go Up