I’ve got a problem with my WLED setup, and I really hope you can help me.
When I turn the stripe off, 75% of the times there’s a handful of leds that remain on. Actually they all turn off, but half a second later a few leds turn back on in different colors.
Some data that might be useful:
The same happens to me with two controllers: GLEDOPTO ESP32/8266 GL-C-015WL-D and Gledopto ESP32 Mini Controller, GL-MC-001WL
Led stripes are 5V power supply (don’t know which model, but WS281x works well except for this. The wiring is directly from the controller. One of the stripes is 10m, the other is 20m, both 10 leds per meter.
WLED 0.15.1 firmware version
The few leds that turn on are in random colors and places, with some patterns. Colors tend to be red, green or blue, unrelated to the previous color of the led when it was on. One of the stripes (with the mini controller and short stripe) lights leds toward the middle-end, while the other one tends to light more toward the beginning.
I’ve tried everything I could think of and everything I could read either in this forum or elsewhere. Among these things are:
Enabling the Off Refresh option does not only not help, but makes something really weird: the lights start flickering with random colors, like sparkles, when you turn them off.
Tried different types of led, all different Data GPIO, and disabled transitions, without success.
Tried lowering the brightness instead of turning off, and at some point (low, but not 0) the lights start flickering like with the off refresh.
Tried using a pull-down resistor (10k and 4.7k) between data and ground, tried a simple resistor (330 and 470 ohm) in the data line, and tried both at the same time. No luck.
I would really like to avoid having to purchase stuff, specially level shifters and/or relays, as I’d like the setup to be as clean as possible. I don’t have access to other GPIO ports, specially in the mini version, which is at the top of a counter and having other electronics dangling around would not be nice.
Thanks a lot for your help!
PS: I have noticed this in the forum, but my problem is slightly different: it happens immediately, not hours later, and it’s quite old, so I decided to open a new issue instead.
When you switch them ‘Off’ all you are doing is telling the LEDs to change to Black and zero brightness. Off Refresh sends those commands every so often to help keep them turned off. They are still receiving power and can at anytime turn back on due to electronic noise/interference. You could try adding a resistor to the data line to see if it will help filter some of the noise. Your best solution would be a relay or the crude option of a wifi plug to kill the whole system. You could also buy a controller that includes a relay.
I’ve tried the resistor in series with the data line… 330 and 470 ohm (see above), no luck.
I understand that leds are always on, and that if there’s noise you might get lights turn on randomly… specially if you’re sending Off Refresh signals all the time… assuming that there’s something in the data line that is disturbing the signals. But
I see the same behavior (random leds blinking mostly rgb colors) when I turn the brightness to 1, without the Off Refresh on. I would expect that, since it’s not sending signals to change the brightness, it would stay constant… but it’s flickering. Why is this flickering happening with brightness 1 and not with brightness 100?
I don’t see random leds blinking when the leds are Off. If there was noise in the data line coming from somewhere else, I would see lights changing while they’re off… but I don’t. This flicker only happens once, 1/2 second after I turn the leds off, and they stay like this until I turn them back on.
I made some videos, but could not upload them to the forum. Please let me know if the description is not clear and I can find a way to upload them somewhere.
Actually, I realize these might two different problems:
Brightness 1 or Off Refresh, constant flickering
Off, single flicker (?) with solid random colors.
Or do you think these two symptoms come from the same problem?
Would a level shifter help in any way? I don’t see a way to get a relay on the mini Gledopto controller, and the plug relays are quite costly.
I suppose it could be the LED strips you are using. If you really have strips that are 10 LEDs per meter, they sound like they are, forgive me for saying.. junk. With that huge spacing I don’t see how they could be very visually appealing.
If you have flickering when they are ON, either it’s the wrong protocol, too far to the first LED from the controller, poor wiring, not enough power for the distance/voltage drop/power requirements and/or the need for a levelshifter. The gledopto has a shifter. If it’s a good one is debatable depending on the controller model.
You Said you have a: GL-C-015WL-D It says it has a mosfet (relay) to act as a means to cut power to the LEDs. Did you try using the relay function?
Relay function:
This automatically disconnects the power supply to the LEDs when not in use.
To do this, uncheck the Invert checkbox for the relay (e.g., GPIO12) in the WLED Settings.
Off Refresh should not cause constant flickering.
If your LEDs flicker at brightness 1, I am sticking with them being junk leds (further based off you saying they are 10/m).
If enabling the relay function does not give you a desired result I would really think about trying some other LEDs before throwing a bunch of $ at the ones you have.
I am also surprised you have a 20m 5v strip working decently when only powering it from 1 end. Likely due to the very low density of LEDs. For 20m of 5v I would expect at the very least power connections at the start, middle and end.
Thanks again for your advice. I’ve had quite some success, which I wanted to record here in case others can use take something from it.
The leds are cheap ones, yes… but that’s kind-of the starting point: they are christmas-tree-like ones, initially USB-powered (until I bought them WLED controllers) and low-consumption. Admittedly I should have maybe spent more, but it goes well beyond the lights; you have to power them on with more expensive power supplies, potentially at different places in the led (which was a no-go for me) and so on. So those were the lights I got
Anyway, I found out that there was a bad connection in the short stripe. After some more trying, I noticed slight differences if I touched the connector, so I went for this, cut cables and crimped (not soldered) the connectors instead, and voila! Problem (almost) fixed! It still happened 1/10th of the times at a much smaller scale (one led maybe) but, while the stripe was all fully stretched, the first 30cm where I was doing the tests had a small loop. Once I straightened it the problem didn’t happen anymore.
And regarding the long 20m led stripe with the GL-C-015WL-D, I could not reach the connector anymore (it’s up high) but I didn’t know the controller had a relay function. I enabled it, and now it works like a charm. I still notice that when I turn it off some lights get randomly on again… but the relay switches them back off 0.5 seconds later so, who cares? Problem solved! Thanks for pointing this out.
My lesson learnt is that the addressable lights are very sensitive to noise or induction in the data line, so one has to go for quality and potentially addons like level shifters and relays. I’ll take note for the next set
Glad you got it working. Just one more note. If you have future issues, I would have another go at soldering the connection vs using a crimp connector on the strip. Those crimp connectors for LED strip are notorious for making poor contact.
Tip for soldering LED strip: apply some solder to the wires and also to the pads of the strip before connecting the 2 together. Then touch the tinned wire to the solder blob on the pad of the strip, touch soldering iron to the wire for a couple seconds. Remove soldering iron and good to go.
*Note most strips have a thin coating over the solder pads and it can help to get the solder to stick if you scrap that off first with a little sand paper or nail file. You could even rough it up carefully with a sharp object.
I realize you got a workaround, but the underlying issue is that the GLEDOPTO controllers have a very weak output on the data lines (1KOhm resistor), so you’re probably getting noise pick up on the wires that the controller can’t absorb through that resistance. If you added more resistance, take that off as it will make things worse. In the future, its a good idea to put them as close as possible to the strip (ideally within a few feet), or to use a better controller if you need to drive longer wires.
I only added resistances for the tests, then I took them out. I didn’t notice it being worse, but it was already bad as it was.
Regarding soldering, I get it… the problem was that the led cable was so thin that it would break after soldering and manipulating it a bit. I thought the solder was good, but it was creating noise… so, my conclusion is that I’m not good at soldering (I know the theory and watched various tutorials, I’m starting to think the problem is the tin I have)