I know for ws2812 strips (60ppm) you can ground the data line at the far end to reduce the chance for "echos" and improve performance.
My question is can you:
- Short the data tab to the ground tab at the end of the strip (with a resistor I assume?)?
- Or do you have to run a line back up to the ground wire going into the strip?
- Or does it have to be a seperate line all the way back to the ground on the power source?
For a bit of background I have a Pi3 running 18 x 1m strips in parallel. The strips are powered by 2 x 40A PSU, one is powering 8 strips, the other 10. Everything works if I only attach the data line to the collection of 8, or the collection of 10, but connect both sets and flickering occurs. I've common grounded the Pi3 and both PSU, but still getting flickering. In case it's relevent, when all connected it's the collection of 8 which flicker.
I feel this is more to do with grounding 2 PSU that are supplying different loads? But grounding the data lines is an easy(ish) possibility to rule out.
Additional The pins are driven by the D18 pin on a Pi3, although i have tried this with a nano with the same result.
When I say flickering I mean that with a changing colour-wheel animation, one set is flicking between inconsistant colours, not matching the other room until i disconnect one or the other.
Solved In addition to @CrossRoads answer, it turned out that using pygame's mixer at the same time as the led strips causes issues on a Pi3. I noticed that after loading the strips the audio would degrade drastically.
Moving the strips to an Arduino solved both problems: - Arduino supports multiple strips on multiple digital pins, where the Pi can only use D18. - Removing the strips from the Pi3 solved the audio issues
Now the PI3 sends serial commands, via USB, to the arduino which in turn controls the strips.
Thanks all for your help.