Permanent Digital LED House Holiday Lighting 1

For my single story house, I decided to follow the roof line. So, it made sense to have a separate strip for each section of roof line, and on the longer runs, a couple of of the 8 foot strips end-to-end. Each strip can be taken down to make way for painting etc., or to work on the strip itself. This happens a lot since the LEDs do go bad from time to time (see the Troubleshooting section).

For the electrical wiring, the WS2812b LEDs have a +5V, Gnd, and a data line. Since the digital commands are passed down the data line from LED to LED and strip to strip, that wire needs to form one continuous circuit from the beginning to the end. You can still light up the LEDs in any order, but the single control line will connect them all.

Similarly, all the strips should have their ground wires connected to make sure the signal has the same ground reference across all the strips.

There is some great info on how to handle these LEDs at Adafruit and Pololu. In addition, the Do It Yourself Christmas site has a lot of very helpful info – especially on their wiki.


Since each strip needed to wired and tested individually, I used the same input connector for each strip, wired in the same way, even if not all the input pins were needed in normal operation. That way, I can pull and test any strip with the same signal and power connector from the Arduino controller. As mentioned before, I had a few bad LEDs, so I used this system a lot – highly recommended!

The WS27812b LED strips have three wires, and come with a variety of connectors. I ended up discarding all of those and using JST-M 4 conductor connectors on each strip. The lead-in connector only uses three of the wires for testing, and the fourth was sometimes used to bring power from the end to the start of the segment (or a separate 2 pin connector was used). Standardizing on three pin connectors would be fine too, and if I did this project again, I would probably do that, especially if the connectors had color coded wires to make wiring easier. The output connectors were wired differently for each strip – to match the power requirements for the subsequent strip.

For example, if one strip is at the end of a set on one power supply, and the next strip starts a new power supply, the output of the first strip would not connect the +5 wire across. The second strip would have a separate connector for power to come in, and also the main input connector would have the power line connected for testing only.

At the very beginning, use a small resistor in series with the signal wire from the Arduino – 200-500 ohms.

Make sure to use capacitors at the power supplies!

Generally, the female connectors are used as the input side of the strips.

So, all the ground wires for everything are connected together, and the data line runs between all the LEDs in order. The +5 lines should only be shared between sets of LEDs using that power supply – it is best to not cross the +5 lines between the power supplies since they are not all exactly the same voltage and can oppose each other a bit.

Getting enough power to all the LEDs is the hardest part of this project. Since each 5050 LED module can use 60 ma of current, 150 LEDs will draw up to 9 amps. 150 LEDs are what you would get with a single 5 meter LED strip with 30 LEDs per meter.

I highly recommend the Do It Yourself Christmas web site RGB power discussion for it’s excellent coverage of power issues with LED lights for houses. I found it after I did my initial work, and it would have saved me a lot of time debugging the system. One key piece of advice is that you should be adding power every 50 LEDs or so since the voltage drop on the strips themselves is significant. I had some runs of up to 76 LEDs, which seemed OK. It might be good to test this before wiring everything up – use bright white (all LEDs on full) to test – see the Troubleshooting section for more info.

For longer runs, power will need to be added at a few places, even if it’s from the same power supply as “power injection”. Power Injection simply means running multiple wires from your power supply to sections of the LEDs to have less voltage drop than running the power through the strip itself. So, for 150 LEDs in three sets of 50, you can use a single 10 amp 5v supply, but should run power lines to the start, two middle sections (every 50 LEDs) and the end of that string. So, that is 4 power lines – each optimally using 18-2 wire, so it’s a lot of wire and connectors. I chose to run those lines along the LEDs, adding connectors at the beginning and end of each strip so I could take them down easier. That was a lot of soldering, but the Deans style connectors are pretty easy to solder (wish I had them at the start!). There are some YouTube videos with demos on how to solder them. You could also run the power wires separately in longer runs independent of the strips. The strips would still be removable and testable individually.

So, you will see a mix of JST-M 2 and Deans style connectors in the photos since I switched in mid-project. I found the Deans style connectors easier to work with – easier to solder, and the polarity was obvious.

For my house, I only had a few locations where there were power outlets available, so I had to carefully plan out where the wall adapters were located and which LEDs they would supply. For my wiring then, I had power going in a couple directions, and the attached diagram shows where I ended up at the planning stage.

Since I had to add power over some long distances, the other technique is to use higher voltage wall adapters and DC to DC converters to convert the higher voltage to 5 volts right at the strips. This seemed to work well, and power injection was still used from the converter to the surrounding LEDs. One trick with the DC to DC converters is keeping them waterproof while allowing them to dissipate heat. I will try a pill bottle and see how it goes.

One other idea is to run separate power adapters or DC to DC converters for each set of 50 or so LEDs. The cost of the converters and power supplies would be lower since they would not need to handle as much power, but the wiring would likely end up being as complex.

The attached plans show what I was thinking before I started wiring, and what I ended up with.