It’s alive! Got first light on my 32 x 18 pixel array. Only casualty being pin 4 on the poor Uno, which was being requested to supply current for one whole strip as I forgot to wire that one to the power bus.
Weird Stuff Is Happening though, and I wanted to ask for y’all’s counsel. It’s all hooked up to a beefy 200W 5V PSU (bottom left), which should have plenty of headroom. I’m getting 5.11V across the PSU’s terminals, but something like 2.8V just about anywhere else in the system. Everything works fine when the Arduino is plugged into the computer and getting its juice over USB but it just stops when I unplug it. The LEDs look pretty bright, but when I do an all-white-ish pattern it’s quite “warm” and reddish in some places.
You can see from the photo I’ve got all the strips wired in parallel off a power “bus” up one side, but it’s only the signal pads connected at the other end. I suspect wiring another power bus up the far side of the strips will fix my problem, but can anyone explain why I’m seeing what I’m seeing?
Robert “Yesterday I couldn’t spell electrical engineer and now I are one” Atkins.
Have you joined the 0v & GNDs of the Ardunio & the PSU? Just to make sure. If they are not joined, the data can get corrupted and the wrong colours get displayed.
You also might ‘see’ slightly impure colours from the LEDs as the actual individual LED chips are spread around inside the chip and your eye will be able to see the different emitted colours - R, G & B. Try standing a few meters away. You may have to adjust your ‘white’ to correct for any differences between the LED output levels.
Can’t understand why the low 5v that you have. From what I can see in the photo, it looks like your strip is fed from the Arduino. I might be wrong. Change it so the PSU is feeding the strip and ‘tee’ off the power to the Arduino via the Arduinos 5v & GND pins. That should get rid of your dependence on the USB power.
The grounds are tied, that’s not the problem. The Arduino is being fed power from a “tee” off the PSU, into its GND and Vin pins (should I be plugging in to the Vin or the 5V pin?)
http://arduino.cc/en/Main/arduinoBoardUno
The UNO needs to be fed between 7-12 volts for operation per the specs. This is probably your problem. You at least need 6 volts to power up your UNO.
After reading more specs, it the USB port supplies the board with 5v from your computer and does not go thru voltage regulation; the VIN needs 7-12v. So, if you supplied 5v from your PSU to the USB port on the UNO, it should work!
I agree with what Jon just said. IF you use the UNO’s onboard LDO regulator then the supply needs to be 6+ volts as Jon said… bUT you can bypass the UNO’s LDO and just feed your own regulated +5vdc directly to the UNO’s +5vdc bus and power it directly from your +5vdc LED power supply. Regulated means that it must be 5v. Crazy voltage transients that go outside of the processors Vcc spec will easily destroy the uNO’s processor.
Regarding the LEDs, the reds can usually turn on down to 2-3v, but the Greens and Blues need 3-4v… This might explain a portion of your “reddish white”. Another part of the explanation is that the color quality of these cheap, cheap strips is poor and the white is never really white anyway.
…also when you power the processor from your LED power supply it is very smart to separate it from the USB power. I think Paul discusses this and explains it on his OctoWS2811 page. (Same principle for UNO)…
-frenchy
…also when you power the processor from your LED power supply it is very smart to separate it from the USB power. I think Paul discusses this and explains it on his OctoWS2811 page. (Same principle for UNO)…
-frenchy
I would inject power every other section to be honest. There’s too much of a voltage drop when you light everything. Right now you’re only injecting power on one end of that bus.
And if all you have is 5V, you can inject power to the Arduino through the 5V pin and bypass the onboard regulator. Any higher and you need to use the VIN pin.
The way you have it now is fine, except I would connect the PSU at the beginning and end of the “bus” as well as somewhere in the middle. Right now the first couple of sections will get full power but as you go down the bus, voltage starts to drop.
Think of how a computer distributes power. There isn’t just one single power plug where you connect everything to. Instead there’s a fan-like setup where all the connectors run straight from the power supply to the peripheral. If there was only one wire where everything hangs off of, the peripherals furthest from the power supply will have trouble getting enough voltage and current. You have to balance it out.
Whelp, I found the source of my problem: the wire from the power supply to the board! It was a 4.5m length of 20AWG I had lying around and it was dropping two-and-a-bit of my precious volts
I cut that down to about 30cm and plumbed some more power in at the middle and ends of the strip. I’ve dialled the trim of the PSU up to about 5.3V and I’m now consistently measuring around 4.2V at most places along all the strips. HOLY CRAP THIS THING IS BRIGHT!
I’m getting a couple of odd results at some points when I go solid colours, but that could be a flaky signal wire or maybe one problem-child LED at the end of a strip, which I can try replacing.
You may also want to ground the signals at the end of the (long) string with pull-downs. I have some custom made pieces that consists of 24 drivers with 48 LEDs per “string” and 47K pull-downs at the end for both the CLK and DATA lines.
I’d run +5 and GND as a pair from the PSU to every every 4th strip, you’ll get better colors and when you start running animations, less glitches. I’d also add a 10uF cap at the strip where you inject the +5V. It’ll help when that whole strip goes from off to full white. Another technique for distributing high current power is to use two strips of copper as bus bars and solder a +5 and GND lead from each line of LEDs to the bus bar. Then connect the bus bar to the PSU with a heavy stranded wire. You can use copper braid as the bus bar, or even a bit of bare copper house wire.
Oh, interesting idea on the bus bar. That was really the intent of my thick wires up the side (as opposed to “snaking” power through the whole shebang), I guess I just underestimated the resistance of even this short a length of wire.
Can you point me to a reference on using capacitors in this way? I don’t understand much about them. Is this necessary if each LED has a “decoupling capacitor” wired next to it on the strip already?
The little SMT decoupling caps by the LED drivers are to suppress switching noise from when the driver turns LEDs on or off, they don’t store much energy, A big electrolytic cap on the end of the string provides a local energy store for when multiple LEDs turn on and require a big inrush of current, the inductance of the wiring between the LED and power supply creates a momentary voltage drop without a capacitor. You could look at the far end of a LED strip +5 and GND with a scope and run a flashing white/black pattern and see how bad the +5 looks, as long as that rail stays above 4V or so, you should be OK. Otherwise you may see hiccups in the flashing or when you run complex patterns that have many LEDs lighting up at the same time.