I've been trying to make my LED strip work but with no success. It is a 5 meter WS2812B RGB LED strip (60 LED's per meter).

I did some research and it turns out that one LED draws around 60mA at full brightness, so the entire strip would take around 18A at full brightness. I use an old PSU from my computer which is capable of delivering 20A at 5V. The controller for the strip is an Arduino Uno. Below is the circuit I have: enter image description here

The problem is, when I execute a program that sets all LED's to WHITE, the further away from the start of the strip, the leds become yellow and red at the end. If I set them all to WHITE but at less brightness, the first 20-30 LED's glow white while others just blink random colors. Same thing happens with any other script, for example the rainbow fade works on first few LED's while others flash random colors.

Now I suspect that's due to the voltage drop, I measured the voltage at the end of the strip (~5V) and at the end it was only around 3.5V.

My question is, how do I inject voltage into the strip without making the design look like overhead power lines? Do I need to inject the data line too?

I bough a 2.5mm^2 wire but it looks too overkill, can I use something a lot thinner to use the strip as an actual flexible strip?

  • \$\begingroup\$ First of all, if the voltage drop is cumulative then your LEDs are at least partially in series. This means that you do not need 18A. Current stays the same throughout a series loop. Best way to combat voltage drop would be to provide a source with a voltage high enough to handle the number of LEDs in series. If the forward voltage of an LED is, for example, 2V (check the datasheet for your LED strips), then you'll need to be sure that your voltage is high enough to supply the entire string. \$\endgroup\$
    – DerStrom8
    Commented May 11, 2020 at 16:04
  • \$\begingroup\$ @DerStrom8 the forward voltage of this specific strip is 2V, shouldn't it be working fine at 3.5V at the end of the strip? \$\endgroup\$
    – nedas1234
    Commented May 11, 2020 at 16:19
  • 2
    \$\begingroup\$ @DerStrom8 - The LED strip in use here has every LED connected across the 5V and GND busses of the LED strip. The LEDs are the digital logic type that are addressable via a particular protocol. As such your comment is rather off base here. \$\endgroup\$ Commented May 11, 2020 at 16:20
  • \$\begingroup\$ Thanks for the clarification. I missed the part number the first time \$\endgroup\$
    – DerStrom8
    Commented May 11, 2020 at 17:02
  • \$\begingroup\$ @der the voltage drop is cumulative due to the cumulative current through the relatively high resistance FPC. Not the diode drops. \$\endgroup\$
    – Passerby
    Commented May 11, 2020 at 17:57

1 Answer 1


how do I inject voltage into the strip without making the design look like overhead power lines?

Run secondary 5V and GND wires that you connect to the far end of the strip. You can route them however you like to hide them; no need to go alongside the strip.

In the general case, you can add power connections at several points along the strip — this is similar in effect to making the LED strip's power conductor thicker, thus having less voltage drop — but when your problem is "the far end is noticeably dimmer or discolored" then connecting both ends to the same power supply is a simple way to get more even brightness without having to make possibly ugly connections in the middle.

An additional trick is that if you make sure the two power wires are the same length and diameter (most convenient if you place your power supply near the middle of the strip while the wires go to the ends) then the two ends will always have the same brightness and the darkest point will be in the middle, which will be less noticeable since it's symmetric.

Do I need to inject the data line too?

No; the chips on the strip take care of repeating the data signal as it goes along.

In fact, the data signal is also delayed as it goes along the strip (due to the shift-register nature of the WS2812 system), so you couldn't just wire the data in at multiple places; you'd have to break the data line in the strip and control the sections as if they were several separate strips.

  • \$\begingroup\$ This is the correct answer and the best the OP can do given what's on-hand. \$\endgroup\$
    – jonk
    Commented May 11, 2020 at 16:17
  • 1
    \$\begingroup\$ The OP can still also tie intermediate points along the LED strip into the heavier duty 5V/GND wiring. No need to confine to feeding from just the near and far ends. \$\endgroup\$ Commented May 11, 2020 at 16:24
  • \$\begingroup\$ @MichaelKaras Yes. Most of these "strips" have at least one connection point, inside (from my experience.) That's because they cannot trouble themselves to find a 5m long piece without them (also my experience, because sometimes I get lucky and really do get a full 5m without any breaks.) But you make a good point, as the strips can usually be cut at periodic points. (A point I'd considered adding and decided against saying, though.) \$\endgroup\$
    – jonk
    Commented May 11, 2020 at 16:38
  • \$\begingroup\$ @MichaelKaras could I run a heavier cable alongside the strip and connect the strip to this wire every 0.5m (the strip has solder joints every 0.5m) with jumper wires? do I need thicker wires? \$\endgroup\$
    – nedas1234
    Commented May 11, 2020 at 17:20
  • \$\begingroup\$ @ned yes that's the idea. You dont need to do it ever 0.5 meters though. Typically for standard rgb strips not these smart ones, its suggested at every 2.5m. Or both ends or just power from the middle. And yes you probably want thicker wire. Jumper wire is thin. \$\endgroup\$
    – Passerby
    Commented May 11, 2020 at 17:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.