Hey guys - finalizing some BM projects and I’m getting an annoying intermittent flicker every once in awhile (sometimes like a minute between them, sometimes 10 seconds between) on sections or sometimes not whole sections of lights (sometimes just individual strips)
strangely the other vest in the lower right corner (which is 2400 pixels, 8 data lines) doesn’t have any issues at all, while the pink one (1400 pixels, 6 data lines) does.
both using a 74HCT shift register. Maybe I have a bum 74HCT in the pink controller?
@chad_steinglass I have been seeing similar things on one of my ESP32 projects. I am worried that there might be a problem or bug in my ESP32 support. Does anyone have a good strategy for debugging these things?
@Sam_Guyer hmmm. There’s a couple of differences between the two vests.
The white one that doesn’t flicker:
Different pins for data out
74HCT chip close to the LEDs, far from the esp32
Pink vet that flickers:
74HCT chip soldered directly to the esp32 all down one side
Using 6 of the 8 pins on the 74HCT and skipping over pins that are used while booting
I recently saw a post on reddit that somebody laid out the best input and output pins to use on the esp units, ranked from best to worst. I wonder if some pins are just better than others for data output signals?
Tomorrow after work I’ll make a new controller for the pink vest that uses only output pins used by the white vest’s controllers, and I’ll mount the 74HCT near the strips on the vest instead of onto the controller.
If that fixes it, then it’s either an output pin issue or a signal degradation after the shift register issue.
@chad_steinglass Hey man, is it happening only on a specific PIN(do a test program and run full white on each pin 1 by one)? Are you supplying enough power(that flicker is pretty much what happens when there isn’t enough power at a particular point). I have also seen this with issue on other peoples work and it happened to be something to do with interrupts & fast LED.
I get random flashes on my ESP32 powered trees. But I have put it down to the PL9823 LEDs which are a bit weird at the best of times But my brolly with WS2811s is rock solid.
@chad_steinglass these kind of effects I had on my big panel too. I had them for two reasons. 1) lack of power to the leds 2) noise on the data line: from your 74HC twist a gnd line and the data line together until your arrive at the led strip. The gnd line will shield the data line from picking any static. Hope this help
@chad_steinglass 2400 pixels? On one vest? How is this to be powered without frying the person wearing it? ^^ WS2812 at full brightness/white, max 60mA, 2400pcs -> 144 A! Even at low brightness that needs some quality power source…
@Leon_Yuhanov and @Yves_BAZIN - the strips that are flickering are getting enough power, tested with a multimeter. But to what Leon was saying, I think it is 2 specific pins from the 74HCT that are having the issue. I agree that it looks like a noisy signal (I also experience this if I have a bad ground connection somewhere so the reference voltage sometimes floats and you get random flashes… but connections are solid on this one). I have all of the data cables all running in parallel next to each other in a bundle, so interference is a big possibility.
I’ll try the ground wrap idea, or just move the controller and 74HCT right up next to the vest and see if that helps
And @Daniel_Cikic - as Ben Stiller said in tropic thunder - never go full brightness
The 2400 pxl vest runs off of a 14.4v laptop battery with a voltage regulator recommended by @Marc_MERLIN
That battery will crank out enough juice to make it incredibly uncomfortable to wear. But I don’t plan on using it to slow roast myself - at reasonable brightness it’ll run on the laptop battery for 4 hours
The pink vest with 1400 pxl does fine split between 2 5v 2A usb banks
@chad_steinglass Fantastic movie, one of the few I like Tom Cruise’s role in! xD
I wonder what brightness levels you’re using because 4 hours from a laptop battery sounds very long for 2400 leds ^^ Or did you just limit it within the source code to make safe no peaks occur?
@Daniel_Cikic it’s a beefy laptop battery: 7800 mah at 14.4v = 112 WH. But to answer your question I prob run at a brightness in the 60-80 range mostly, and I try to run patterns that don’t have every pixel on all the time - often by using palettes like rainbowstripe colors that have bands of black in them
Issue was crosstalk/interference on the data lines. So Sam, you can rest easy that (at least this) isn’t a bug in your fork.
I took my whole wiring harness out and put the same esp32 controller with 74HCT soldered directly to the dev board right up next to the vest instead of on a 2 foot long harness and the problem went away.
So I’ll make a little design change: the controller will be attached to the vest in the small of the back, and I’ll make a much simpler harness just for the controls that can go into a pocket or be attached just inside the front of the vest.
Next time I’ll use shielded/twisted wire if I want a long run for data signals, especially parallel outputs.
@chad_steinglass what I’ve done on my project was made it work on ESP8266, ESP32 and teensy. If I had a problem I could just switch to teensy or ESP32 to see what happened.