Troubleshooting V3 connected to two strands of LEDs

Hello! I connected two sets of 200 WS2812 LEDs to my v3 (both connected to ground and data, separate 5v inputs, one for the chip+strand, one just for the strand). It works great for slow patterns! But the more complicated patterns a section of one of the strands strobes primarily white light, I think because it is having trouble processing quick enough. Is this a soldering issue or wiring issue? Has anyone encountered a problem like this?

That almost certainly sounds like a wiring or soldering issue, but could be a voltage drop / power supply problem. That’s not the failure mode of “too many pixels” really, and PixelBlaze can easily work with a lot more than 400 pixels without issue.

A few initial trouble shooting steps:

  1. Share a photo or diagram of your wiring setup to help troubleshoot.
  2. Let us know if you get the same result if you set the max brightness in settings to 20%.
  3. Swap out the power supply of the 200 pixels that are behaving oddly with another power source (or just swap the two power supplies with each other) and see if the problem fixes itself, or swaps to the other 200.
  4. Let us know when you say “slow” and “more complicated patterns” which patterns specifically, assuming you didn’t write your own at this stage of your journey.

Thank you for your help!

  1. Here is a picture of the wiring- hard to see, but let me explain. I have two ground wires from the two usb cable soldered to the outside ground terminal. The two data wires from the led are soldered to the outside data terminal. One of the 5v wires from a usb cable is soldered to the outside 5v terminal. The two ground wires from both LEDs are soldered to the inside ground terminal. One of the 5v wires of the led is soldered to the inside 5v terminal. The 5v wire from one of the usb cables is connected directly to the 5v wire of one of the led. I also am a beginner at soldering, so its very possible that I just did a poor job connecting one of these, though I re-soldered the data wires to try to solve this issue, without luck.
  2. I get the same result with 20% brightness. (Hard to see in this image, but the fairy lights I am using are buried underneath the jacket already). The left half of this picture are the “broken” lights, strobing white/pink/purple in this case when they should be the yellow/green on the right.
  3. Still the same set of ~30 leds flickering when I switch power supplies.
  4. It happens for a few patterns, but more specifically the presets “xorcery 2D/3D” and "“sound - spectrum”. I am associate the speed at which the lights change as “slow/more complicated”- I do not get this flickering result with patterns like “rainbow fonts” or “rainbow melt”

From a software POV, you’re running both sets of 200 LEDs off the same data line, which means they’re going to be exact mirrors of each other, and therefore it’s pretty much impossible for them, in software, to not be matches.

This on its own eliminates a lot of potential causes, and basically means it’s a wiring problem somewhere.

To confirm, you’re getting the flickering on ~30 LEDs, partway down the “line” of 200 LEDs, on one of the strands? If that’s the case, it sounds like a short or wire issue that starts at that point in your LED strand. What type of LEDs are these / can you provide a photo of the LEDs themselves? I’m worried you’re using the cheap almost bare wire LED strands, not the well insulated in silicon version, and you just got some type of short at that point, but I’d like to see a bit more about where the problem is and what kind of LEDs they are before diagnosing that as the problem, because that fix would be very annoying to implement.

Looking more closely, it might be closer to the first 75 LEDs of that strand. The problem manifests most strongly in those first 30 LEDs, but there is some slight flickering up to ~#75.

I was loosely following a tutorial posted by GeekMomProjects using these lights: Amazon.com

Here is the link to the tutorial: Build a Blob – Geek Mom Projects

@GeekMomProjects by the way is very active in this forum too, actually, and better than me at this type of thing. I have NOT had great luck with the LEDs you’re referencing, for exactly these reasons, but I also trust her taste and opinions a lot.

To be clear, it’s the FIRST LEDs that are behaving oddly (closest to the power and to the PixelBlaze), not the LAST LEDs? My theory was that it was a wire issue in the LAST LEDs – some iffy continuity halfway down the strand.

Hi @spud ,
Welcome!

It looks like those are the fixed address type LEDs. Those work by sharind the same data wire to all of the LEDs in the string, and each pixel is somehow programmed with their address. The problem with these I think would be that the Y split in the wire creates double the signal reflections. These have a contiguous data wire that runs the entire length, instead of each LED regenerating the signal in a chain.

You could try adding a resistor (100-300ohm) between the output and each string. But for best results, the signal will need to be buffered so that they can’t cross-talk.

Another option would be to use an output expander, and drive each from different output ports. This could also give you more addressable pixel options, but might otherwise be over complicating things if you really do want to just mirror the data between them.

1 Like

You almost certainly nailed it @wizard@spud I’d bet that’s the case. (If anyone on here has any Amazon links to the “good” non-fixed address strands, I’d love to see it… I’ve been gifting https://www.aliexpress.us/item/3256805296630315.html to folks locally, but don’t know any <3-4 week shipping domestic versions of that).

One other way you could go is to wire your LEDs in series instead of parallel for data, and just inject power the same way you’re wired right now – that would I think actually do exactly what you want by mirroring the LEDs because they are fixed address, the 201th LED (the first of the second strand) will be the same “location” as the first LED of the first strand, I think, which might be easier than disassembling everything.

Thank you @wizard- if I were to add a resistor, would that be on the 5V wires out of the two strings? Do you think it would help to wire them to the two separate terminals the inner and the outer?

Thanks for this info @ZacharyRD- if I had planned ahead, I might have done all this wiring before installing it in the jacket to make sure it worked. Oh well, there’s always the next project!

I am not trying to throw shade at you — we all live and learn, and I made a very similar error with a v1 lab coat build I actually wrote up on this forum a year ago with these fixed address LEDs — but for anyone else reading this in the future — this is why best practice is to always test everything before final assembly, and at every stage of the process where going backwards would be cumbersome.

Sorry.

Two resistors. Connected to data, so that they split the data line. This adds some resistance to the crosstalk.

I’m not sure I fully understand the way power is wired in this setup, so this many not be a possible factor, but it sounded to me as though the 5V output of one string is the 5V input of the second string? If that’s the case, then I was wondering if low voltage in the second string could be a factor.

A little late to the party, but I run 800 of those things on my Christmas tree with a Pixelblaze and an output expander and I like them a lot. They make pretty light, don’t show too much wire, and are easy to bend into place.

They are indeed fixed address. Cutting them without keeping track of the original relative positioning can make very weird things happen.

(You can use this property to make more-or-less mapped sculptures without using the Pixelblaze’s mapper - here’s the original discussion thread.)

The major electrical issue I’ve had with them is this: the wire is very thin, and the insulation somewhat fragile. It’s definitely possible to short them out with enough bending. You’ve also got to be careful when soldering not to vaporize the insulation too far up the wire. Once started, it goes away fast!

Another thing that you might want to check is that all your grounds – everything going to the LED or to the Pixelblaze – have solid connections to each other. These lights are very timing sensitive, and might also be sensitive to minor differences in ground level.

2 Likes

Hi @wizard- I tried adding resistors, without much luck. Next I will try the output expander- is it still possible to wire to separate power sources for each of my strands? I am not sure where to wire each one, and if the pixelblaze v3 still needs a separate power source (or if will feed off of one of the 5v connections I wire to my strands).

Thanks for your help here!

Just thought of something to try. If you disconnect the data wire from one of them and only leave the other connected, does it work OK? Then try the other one, solo. If they don’t work alone, then there’s some other issue.

For the expander wiring:
You can power the expander from the same 5V as PB. Each string can also be separately powered on the positive side. The negative / GND should all be connected together. Then run a data wire from an expander data output, one for each.

Thank you everyone for the help! The solution was to use an output expander so the data signals weren’t getting crossed. Here is the final product for anyone who’s interested:

This is my first pixelblaze project- I’m sure there will be many to come! Glad to see how helpful and quick the community is to lend a hand- I really appreciate it.

5 Likes