I am trying too hook up a WS2812B LED strip to an arduino nano. The current strip consists of 6 pixels, and the whole thing is powered via a 5.26V Pc power supply.
The problem is that the first pixel keeps dying after about 1 minute. This means i have to cut the strip and re-solder the connections. Before the failure, the strip runs the correct examples from the FastLED package.
As this happened I looked for solutions. https://learn.adafruit.com/adafruit-neopixel-uberguide/best-practices suggested: 1) adding a 1000 µF capacitor between ground and +5v to cancel power peaks 2) adding a 300-500Ohm resistor between the strip_Data_in and D5
This did not solve the problem. Another recommendation was to place a diode between the data and +5. ( I think this is to remove any power spikes in the data connection. With a good power supply this should not be necessary i guess, but it couldn't hurt.) Another tip was to add a 100kOhm resistor between data and ground.
But in the end nothing changed. I tried alot of variations of solutions:
With and without condensator between ground and Vin.
With and without resistor between data and arduino, and varied it between 220 Ohm to 1kOhm.
With and without the diodes. I tried connecting data with a diode to ground, +5v, to both, and to none.
I have tried using a 3.7V power source to see wether i could avoid burning the pixel. The Leds had too little power to light up.
I have tried powering via the USB->Arduino->Arduino +5v pin -> strip +5v
Any Idea where i might be fucking up?
I have burnt 30 pixels so far, with all the same result: blinking, tripping, and eventually failure. Removing the first LED always fixed the problem. This brand of LEDStrip did work on some other premade controller.
Some of my own ideas, of causes:
- There really needs to be a 1000µF Capacitor. (i have never had trouble with voltage peaks with this powersupply, and this does not explain why the system fails after some time, instead of at plugin.)
EDIT 1): I did some additional tests.
Raised the resistor before the data pin, from the recommended 470 Ohm, as high as possible. I reached 8kOhm (higher did not work). -> Same result, burned pixel
Lowered the voltage on the Data input pin, with two resistances, one connected to ground. The LedStrip only recognised data input when the ''Din_High'' was above 3.5 volts. Running at a bit lower voltage stopped the leds from recognising data. Yet still, Same result -> Burned pixel.
Changing the power supply: I changed the PC power supply to a 5V Power bank for loading celphones. The voltage this device was regulated to was between 5.2 and 4.8V. The behaviour was the same -> Burned pixel.
I would guess that IF:
the 5V is stable and within 5.5 and 4.5V And
The Din is within 0 and 5V
The cable should be unable to break itself right?