NeoPixels acting funny with long runs/wiring

General project help for Adafruit customers

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
redsholdrd
 
Posts: 18
Joined: Sat Jan 28, 2017 5:51 pm

NeoPixels acting funny with long runs/wiring

Post by redsholdrd »

Hello,

I'm working on a project where I have a bunch of individual through-hole NeoPixels (https://www.adafruit.com/product/1734) hanging from the ceiling controlled by an Arduino. I like the individual NPs for this project: soft individual hanging lights vs. a strip.

There are a number of long hookup wire (3-10ft) runs connecting the power and data between the NPs. The first three work fine with power and data, the ones after that act erratically (flashing or non responsive)

I'm powering them all in parallel, with a large 5V, 10A power supply (with a ground connection to the Arudino).

As suggested by the NP Uber Guide (https://learn.adafruit.com/adafruit-neo ... -practices), I have:
-Added a 1000uF capacitor across the main power terminals
-Added a 300-500 Ohm resistor across the data output from Arduino
-Added small 0.1uF (104s) decoupling caps across each NP at the site of the NP (soldered across the + and - terminals of the NPs)

But still I start getting erratic behavior after 3 of them.

Any suggestions?

Some possible issues:
Does the data signal degrade after wire long runs? If so is there a way to boost it?
I'm using thin, stranded wire for the runs (26 AWG) would a different wire be better?

Thanks!
Jacob

User avatar
adafruit_support_bill
 
Posts: 88096
Joined: Sat Feb 07, 2009 10:11 am

Re: NeoPixels acting funny with long runs/wiring

Post by adafruit_support_bill »

There are a number of long hookup wire (3-10ft) runs connecting the power and data between the NPs.
Long runs between pixels can be a problem. Much beyond 3 feet is difficult. One solution is to wire in some 'blind' pixels every couple of feet to serve as signal relays. These can be actual pixels with LEDs, or just a bare WS2812 chip. You will need to account to the extra pixels in your code.

User avatar
redsholdrd
 
Posts: 18
Joined: Sat Jan 28, 2017 5:51 pm

Re: NeoPixels acting funny with long runs/wiring

Post by redsholdrd »

Thanks Bill, i'll try that now.

I did happen to try something like that after the 3rd, working, NP.
To test the 4th NP i just ran short jumper wires from the data out, and short wires for power, to 2 more NPs in a board, but those 2 still don't respond .

Do you think i would need to add the blind NPs before that point in the circuit?
So that even though NP 3 is working, I would need to add them before?

Thanks!
J

User avatar
adafruit_support_bill
 
Posts: 88096
Joined: Sat Feb 07, 2009 10:11 am

Re: NeoPixels acting funny with long runs/wiring

Post by adafruit_support_bill »

If #3 is working, it must be getting a good signal. So you should not need to add any more before it. Try swapping out the #3 pixel with another and see if it behaves any better.

User avatar
redsholdrd
 
Posts: 18
Joined: Sat Jan 28, 2017 5:51 pm

Re: NeoPixels acting funny with long runs/wiring

Post by redsholdrd »

Hi Again,
I tried a few different things out:
-Swapping out NP 3 in case its Data out was bad
-Cutting a few of the long data wire runs in half and adding "blind" NPs there (which were both powered and run data in/out, but I just didn't assign them a value in the coding).

Still the behavior was very unpredictable. The first two work consistently, the third mostly, but any after most often didn't read input or set color consistently, and would flicker when other NP's values were changed. Things seemed to work in the breadboard (with similar lengths of connecting wire runs to make sure i could test that) but when I soldered them in they wouldn't >:X

For now I think I'm going to just cut my installation project idea to just 3 hanging NPs (I was hoping for 17 :..( ) which I'm setting up a prototype for this weekend.

The effect is lovely, you can get get close to one or another glowing independent light and IMO it's a more intimate experience than the wash of pixel color strips. Do you have any further suggestions for this project in my next crack at it (multiple, distanced, individual NPs)?

As an aside, for years I've been periodically asking questions here about physical computing/media projects that are clear in my imagination, but very hard for me to realize with my abilities at this point. You've always gotten back to me quickly with great info, and helped me get unstuck multiple times (at least until i get stuck again), and I wanted to say thanks!

-J

User avatar
adafruit_support_bill
 
Posts: 88096
Joined: Sat Feb 07, 2009 10:11 am

Re: NeoPixels acting funny with long runs/wiring

Post by adafruit_support_bill »

Sounds strange. Usually breadboard connections are much less reliable than soldered. If you post some photos of your setup we can take a look and try to spot the problem.

User avatar
redsholdrd
 
Posts: 18
Joined: Sat Jan 28, 2017 5:51 pm

Re: NeoPixels acting funny with long runs/wiring

Post by redsholdrd »

I've attached a pic of one of the wired NPs.
Their leads from left to right are: data out, ground, +5V, data in (with a 104 cap between ground and V).
These multicables will be gathered and hung from the ceiling with a pingpong as a diffuser. I'm taping between the NP through holes legs to prevent shorting and housing that end of the cable in a rigid tube. Not perfectly safe, but ok for now and i haven't had trouble with shorting yet.

Here is a video of what I'm working on in action with more description.
https://youtu.be/UzRpVP23eEM

Thanks!
Jacob
Attachments
neopixel test feb23_small.jpg
neopixel test feb23_small.jpg (939.47 KiB) Viewed 118 times

User avatar
adafruit_support_bill
 
Posts: 88096
Joined: Sat Feb 07, 2009 10:11 am

Re: NeoPixels acting funny with long runs/wiring

Post by adafruit_support_bill »

There are a couple of issues that can affect long runs. There is potential 'ringing' on the lines due to the propagation delay of the longer run. There is also increased potential for interference to get picked up along the way.

Looks like in your test setup you have fairly long lengths of unshielded wire running more-or-less parallel to each other in close proximity. Wires are basically antennae for both transmitting and receiving electromagnetic waves. So when the runs get long, you need to take care with both the quality and routing of the wires.

I'd start by stretching things out so that the wires are not running so close together and see if that makes a difference. I'd also consider using something like Ethernet cable for your wiring.

Ethernet cable consists of 4 twisted pairs of wires. If wired correctly the twist helps to minimize the antenna effect. I've had good luck wiring as follows:

Pair 1: twist GND and Signal.
Pairs 2, 3 & 4: twist GND and 5v on each.

Shielded cable is another option. But it tends to be more expensive as well as bulky.

Locked
Please be positive and constructive with your questions and comments.

Return to “General Project help”