Hello Everyone! New to the forum and want to first say thank you for the assistance you have provided me and countless others. Much obliged!
I am planning an LED project that will entail using about 10m of addressable 5v WS2812B strip LEDs. I would like to control all of them with an Arduino Mega2560 REV 3 which I already have. The project is for a vehicle that will display a portion of the LEDs in front, some in the rear, as well as a few situated along the sides of the vehicle. I am no Arduino expert but have found plenty of info as to how it can/should be configured so “I believe” I’ll be able handle that part of the project. Where I am most concerned, or perplexed is perhaps a better term, is with the wiring. I understand the basic principles of how it works. I have seen many projects involving short runs (a few meters) but nothing quite like what I am trying to achieve with the particular LED type that I have. From the articles I have read, it seems as though I will need to power the strips at multiple locations. To limit the effects of voltage drop, I was thinking that each of the 4 segments (F, R, LH, and RH) would use its own power supply. Each segment is roughly the same length, about 2.5m. No two segments will be any less than three feet from the next closest LED segment so a slight variation in color/brightness would not be discernable. Here is where it gets to be a grey area for me. The LEDs use 3 wires (+, -, Data). Getting power to each segment isn’t a problem, but what about the Data lead?
Once the Data signal lead is connected from the Arduino to the first LED strip segment Data lead, does the signal just need to stay in series throughout the remaining segments? Can it, or should it, be run in parallel from a centrally located controller to each segment?
Since I would like to have each segment running off the same program, I need to maintain that Data signal throughout all 4 segments. If I need to connect segments in series, since there will be at least few feet from where one segment ends and another begins, can I just run a single wire from DO to DI to connect each segment? If so, what gauge?
Is the use of a device to boost the Data signal at various points needed? What gauge wire to use? Device?
And then what about the use of capacitors and resistors along the way?
I have read that adding capacitors is a simple way to stabilize the current and prolong the life of the LED and should be placed between the ground and power lines on the power input.
4. What size/specs cap should I use? I was thinking 1000uf, 6.3v. ???
Lastly, I understand it is good protocol to add a 100 ? to 500 ? resistor between your microcontroller’s data output and the LED strip to reduce the noise on that line.
5. Should I incorporate this and if so, would I need more than one in the scenario I am proposing? What size/specs for the resistor(s).
I am completely flexible as to any design advice to make this project as efficient and well-engineered as possible… within my limited technical abilities of course! Any suggestions would be much appreciated!
I think all you need to is distribute power along the string at various places.
0.1uF cap at each device wouldn't hurt. Signal is buffered from chip to chip so no additional buffering should be needed.
I'm currently working on a lighting project on a slightly smaller scale, about 3.5m of 60/m LEDs (about 14A/70W worth).
You might even want more than 1 point on each segment to distribute power.
I've run my entire 5m reel off a single power source and a 470uF resistor on the data line to test but I was running a low duty cycle (1/12 full power so only about 1.5A draw) but I am splitting the power into 4 segments (about 90cm/54 lights each) on the final project.
I doubt you'll have issues with internal resistance on the data line, for 22AWG data wire the voltage drop should be less than 0.1V.
Once the Data signal lead is connected from the Arduino to the first LED strip segment Data lead, does the signal just need to stay in series throughout the remaining segments? Can it, or should it, be run in parallel from a centrally located controller to each segment?
[/quote]
You could do it either way (with matching code changes if you give each segment its own data pin on the Arduino).
shack351:
can I just run a single wire from DO to DI to connect each segment?
Yes. That's what you're supposed to do.
shack351:
If so, what gauge?
The thicker the better. Really though, there's not many amps. You can probably use something in the high 20s.
shack351:
3. Is the use of a device to boost the Data signal at various points needed?
No, it's built into the chips.
shack351:
I have read that adding capacitors is a simple way to stabilize the current and prolong the life of the LED and should be placed between the ground and power lines on the power input.
The strips should have a capacitor on each LED. If so, not needed...
shack351:
Lastly, I understand it is good protocol to add a 100 ? to 500 ? resistor between your microcontroller’s data output and the LED strip to reduce the noise on that line.
Nope. If anything that will increase it.
shack351:
To limit the effects of voltage drop, I was thinking that each of the 4 segments (F, R, LH, and RH) would use its own power supply. Each segment is roughly the same length, about 2.5m.
Yes, this is needed because the strips use a LOT of current. You should also connect power at both ends of each segment (so that it meets in the middle). Do a test setup before you install it, set all the LEDs to 100% white and measure the voltage along the strips to check for losses.
nb. Don't follow instruction blindly, play around! Measure voltage drop along a single 10m strip before you cut it. Measure it without power at both ends of the 2.5m strips. Learn!
Thanks to each of you guys for the replies. Special thanks to fungus for adding a more detailed response. I believe I now have enough info to begin laying out all the pieces in my shop and test how everything will be wired to make sure there are no issues. Probably be back for more help... XD ...but will definitely post some pics along the way. Thanks again!