CR4® - The Engineer's Place for News and Discussion®

Workbench Creations Blog

Workbench Creations

Workbench Creations is the place for conversation and discussion about do-it-yourself (DIY) projects. This DIY blog will feature projects completed by its owner as well as projects completed by other do-it-yourselfers. Workbench Creations is the place where DIYers can discuss ideas, learn about what others have done, and share their expertise.

Previous in Blog: Scrap Metal Wire Stripper   Next in Blog: Repaired Garage Foundation

Computer controlled holiday lights

Posted December 25, 2014 7:00 AM by frankd20

Holiday lights have come a long way since I was a kid and I decided to take the dive into the hobby. This isn't quite my first time working on this project, I designed and built controller boxes years ago but their function was more basic, although they were used to produce this video.

Different kinds of light strings available today.

If you want to put up holiday lights today, you have a lot more options available to you than in a number of years past. The technology has improved quite a bit although not all of it can be found in a department store. One big change is the conversion to LED lights, the obvious difference is the reduced power use but it also allows some additional control not available with incandescent lights.

While all the lights I used are LED based, there are three distinct types I used in my display this year

The first kind you can buy in the store--these are lengths of lights that simply plug in and are either on or off. For computer-controlled use, lights with built-in flickering or other functions do not work well.

LED lights can now be found in strips where the bulbs have three LEDs in one bulb, one red, one green and one blue, so the whole strip can be any color. I have not seen these on store shelves but that isn't to say they couldn't be found somewhere. These come with a bulb every inch or so but different spacing's can be found. These are typically powered with 12 volts DC and with the proper control these strips can be adjusted to be just about any color of the rainbow by varying the intensity of each primary color.

The last type is also an LED strip, but these are know as pixels. These strips or strings also consist of a bunch of LED bulbs but the difference is each bulb is individually addressable/controllable. These come in two varieties that I am aware of. In one, the addressable electronics of the bulb are built into the bulb itself, in the other, the bulb and chip are separate; either way they both work the same. These can also be purchased in either strip or single-bulb form, like a traditional string of lights. They are powered off of DC, usually 5 or 12V depending on the string. The controller for these is also very different as its output is a digital signal that the light strings recognize. This type of string is, as far as I know, the latest in lighting displays (and also the most expensive of the three). It can be used in a grid or other shapes and can be controlled like a large screen to even display pictures or video.

The Controllers

There are lots of different controllers on the market and I don't want to go into all of them, but I do want to talk about the ones I used and why. To be honest, a big part of my choice in controller was cost. I wanted to keep it as low as I could without sacrificing functionality. Because of this I went with a more DIY controller approach, where they are sold as kits or simply as blank PCB boards, and I had to populate solder assemble and program the chip on the board. Doing this brought down my cost per channel quite a bit. The controllers I went with use a protocol called Renard, you can read all about it on the linked page if you want to know the details. The end result is after you build the controller, you communicate with it via a serial signal, either RS-232 or RS-485 or with DMX for some controllers. You can even add Bluetooth or other communication methods such as WiFi and Ethernet as long as you can send serial commands over it. The controllers output a 5 volt pulse width modulation (PWM) signal that is interfaced to the appropriate solid state relay, which in turn enables you to turn on and off and dim the lights. The basic Renard controllers start with 8 channels, but can be found up to 64 channels per controller board. Multiple controllers can be daisy-chained to get higher channel counts per port. You can also use multiple ports to connect as many controllers as you want/need/can afford. I used Renard controllers that support 32 channels per controller; this was the best cost per channel tradeoff for me, although I would have preferred a lower channel count and more controllers if cost wasn't a factor. More controllers and less channels per board gives you greater flexibility in design and less wires run. I also used a Renard-type controller for my pixel strips that is not good if you have a large number of strips, but was a good way to get into the technology.

Solid state relays DC and AC

Solid state relays take the low voltage, low current control signal and turn it into a higher voltage and/or current signal that can control the lights. For my use both DC and AC solid state relays have very similar designs. Both start with an optocoupler to separate the control side vs. the controlled side of the circuit. In a DC solid state relay the output is typically an SCR, and in an AC design the output stage uses a Triac. Both of these are simply on/off signals but through the use of pulse with modulation it lets the controller vary the intensity of the lights. For AC lights, dimming is a little more complicated for the controller as it needs to time the on/off's with the zero crossing of the AC sign wave; luckily this was handled by the Renard controller I used but not all of them handle this. For the DC solid state relays I used, I purchased the blank PCB boards and then ordered the parts from a number of different suppliers. This allowed me to keep my costs quite low to about $4 per 4 channel board. For the AC solid state relays I also ordered the parts but I designed the circuit to fit into a power strip. I used a number of green power strips intended for holiday lights that were sold at a discount at the end of last year. The strips have 6 outlets, one is removed to allow for the data connection socket, 4 are controlled and one is always on so you can plug other stuff into it.

The Software

The software I chose to use is free to anyone, called Vixen. It can be found at, and I am using the latest version which is designed more around the idea of controlling objects rather than individual channels. While lots of other software is available, both free and pay, I find Vixen to be a good fit for what I am doing although it does lack in some aspects. I am sure some of the pay software is good and possibly better, although I have never used other software so I can't compare. You can find much more information on the software and how to use it on the website. It is even possible to use a small computer such as a Raspberry Pi to run a show and I may do that in the future.

Putting it all together

My display consists of 40 strings of normal, single-color, AC, LED strings--the type you can buy in the store, 8 RGB LED strings about 15 feet long, and 6 pixel strings. 4 of the 6 pixel strings have 150 bulbs and are about 15 feet long; the other two are 200 bulbs and are about 60 feet long. Additionally I am utilizing 10 AC SSRs which have 4 channels each, 8 DC SSRs which also have 4 channels (but I am only utilizing 3 of those channels). For the controllers, I am using 2 Renard 32 channel controllers and 6 pixel string controllers. In terms of channel count, each RGB pixel takes 3 channels. My display is quite modest to be honest and one day I plan to expand, but this is the first year I am doing it. I have but am not currently using a total of five 32 channel controllers and more DC and AC SSRs, so I have most of what I need for some expansion.

Other parts needed are a way to either play audio on speakers or transmit it on a radio frequency. Many, many feet of extension cords and network cable. Time, lots of time. And perhaps some clips to hold the lights and other ways to connect it to your house.

I used USB to RS-232 serial adapters, and then RS-232 to RS-485 adapters after those. The serial adapters, of which I used 8 for this setup, connect to two USB hubs which connect to my computer. For the pixel strips the controllers run up to 600 channels (200 bulbs, 3 channels each) so it is better to have a port per controller so that the speed of the communications doesn't become an issue. There are many options for controllers and other hardware which all have different requirements. Setting everything up is not easy, and you need to make sure everything is protected against the weather. For me this meant snow, sleet, rain, ice and wind. I made sure everything was in an enclosure of some sort and for most of the things I put the enclosure under a Tupperware container as well. Once it is all set up you need to test everything to troubleshoot. Luckily I didn't have too many issues but you never know how it's all going to work until it is set up.

Sequencing songs is the last, very important piece of the puzzle and one that you should and can start even before your lights are set up. The software allows you to take a picture of your house and decorate it with your intended light setup. You then get a virtual preview of what your display will look like as you sequence the events to the song. It can take many hours per song to get something that you are happy with, and to be honest I did this part more last minute and have been doing it whenever I can.

It has taken a while but so far I have been happy with the results, and hopefully if I decided to this next year I will be more prepared.

Here are some videos of the lights on my house with this equipment, I am still learning the nuances of sequencing with the software. My wife did a few of these sequences so this project had a good wife acceptance factor.

Wizards in winter

All I want for xmas

Dominic the donkey

Carols of the bell

Dreidel driedel driedel

The rainbow connection

Festivus song

We wish you a merry xmas

The Grinch


Interested in this topic? By joining CR4 you can "subscribe" to
this discussion and receive notification when new comments are added.

Previous in Blog: Scrap Metal Wire Stripper   Next in Blog: Repaired Garage Foundation