Rusty Griswold Grinch

How To Animate a Magical LED Light Show

Rockin Around The Christmas Tree - ...
Rockin Around The Christmas Tree - Rusty Griswold Christmas Light Show 2021

Whether on tv or in your neighbourhood, you’ve likely seen a house with dazzling Christmas lights that change colour and dance to music. Almost every city has “that one house” that goes all out for the holidays each year with a holiday light display. In Burlington, I am one of those houses. If you’ve ever wondered how to animate an LED light show and how you can create your own display, this blog post is for you.

Three key things make up a holiday LED light show: the lights, controllers, and programming.

The bulbs are arranged to form different designs and shapes. You plug those lights into controllers, and power supplies light them up. There is specialized computer software available that provides instructions to the controllers. These instructions include signals of when to turn on and off light bulbs in sync with the music.

These mechanisms are at the heart of every LED light show, and while you won’t be able to go to a big box store and pick these items up, many companies and a large online community are eager to help.

The LED Lights

The most common lights you see at Christmas are incandescent bulbs or LEDs. When you plug them in, these strings turn on with 120V (in North America) and stay lit until you unplug them. Those are regular Christmas lights. Around 2000, though, people started connecting them to electronic switches called relays, allowing strings of lights to be turned on and off with a simple microcontroller. These relays are the same technology found in today’s smart home devices.

Using smart technology, a typical holiday light display would have a dozen or more relays driving an equal number of light strings. This lasted for a few years, but eventually, things became more elaborate as people wanted more out of their displays. The next big technological jump came around 2010 and has since transformed holiday lighting.

Pixel Bullets Rusty Griswold

More Control Over How To Animate an LED Light Show

Turning lights on and off was boring; people wanted more colours, brighter lights, and fancier effects. As a result, LED light shows had become very popular, and a new type of LED technology called Pixels started to hit the market. Pixels are modern “smart” RGB light bulbs. Each pixel has a microchip that tells the LED when to turn on and off and what colour to display. They are connected in a strand and can light up sequentially or individually to form images, complex patterns, and other effects.

There are many different types of pixels and protocols for communicating with them. The most common type of pixel is the WS2811. These pixels in a strand receive data sequentially, decipher the data intended for them, and pass through the remaining data for all remaining pixels. The transmitted data consists of a red, green, and blue signal for each bulb.

These types of LEDs were initially designed for digital signage and theatrical productions. The main difference is that holiday pixels have a waterproof coating and cost considerably less.

LED light show
Singing faces at the Rusty Griswold Christmas Light Display in Burlington, Ontario.

The pixels are arranged in props which is where the magic happens. Different props can be created using corrugated plastic, conduit, and custom structures to create almost any design imaginable. While the lights are standard, the props are unique and involve design effort to figure out where to place the pixels. Props must also be able to withstand winter elements without falling apart.

Designing The Dancing LED Light Show

Designing a magical LED light show is a lot like choreography. The lights are installed in props. Different props can be grouped together to light up as a unit with music. Choreographing the various components with music requires computer software that knows how to interface with the lighting chip.

The most flexible software is xLights which is free and open-source. Shows are developed along a timeline, and each prop can be individually controlled. The software has many different effects that can be applied to individual elements or groups. Each sequence is unique, and the various effects can be customized.

A reference photo of your home is uploaded into the software. From here, complex patterns can easily be overlayed onto the image to create the effects. For example, some effects might only light up a couple of pixels while others might move across the entire house.

Once the show sequence is finished, a data file is exported in a format that includes the colour data for each LED. A typical LED light show consists of a refresh rate between 20Hz and 40Hz, which means the output file contains the status of every individual bulb for every moment of the show.

Controllers And Power

A typical LED light show that you see will have two types of controllers. The first is a master show computer that stores the data file from the software and transmits it to all controllers. The second is the controllers that the pixels plug directly into. These controllers come in many different capabilities, but all do essentially the same thing. They convert the data from the show computer into a WS2811 readable dataset and send it to the pixels.

The controllers receive data from the main computer using a network protocol called E1.31. E1.31 is a way to transport lighting data over a traditional IP-based ethernet network. The pixels are grouped into “universes” of up to 170 pixels or 510 channels. Each pixel contains three channels, one for red, one for green, and one for blue. Therefore, one universe of 170 pixels multiplied by three channels will include the 510 channels.

It is important to note, though, that a universe can have up to 512 channels. These extra two channels have been known to cause headaches when designing light shows as it is easy to forget them, causing unwanted effects. Consult your specific controller’s documentation on how to configure your universes.

Each controller has an IP address. It’s in your best interest to assign static IP addresses. The master computer will assign universes to each IP, telling the controller what configuration of lights is connected to its output. These instructions can also be programmed directly within the controller itself. When the controller receives a data packet from the show computer, it decodes the E1.31 data within the packet, and efficiently outputs the data stream to the WS2811 pixels.

Playing The Christmas LED Light Show

Once you have all the required components connected and put together, playing the LED light show is reasonably straightforward. On the controller, you program it to identify what configuration of pixels are attached and at which output port. In addition, each controller typically has a web interface that can be accessed by pointing a web browser at its IP address. Recently, xLights provided the functionality to configure controllers via the software.

Regarding the master computer, you can use a laptop/desktop, but the Raspberry Pi is one of the most common types of show computers due to its cost and accessibility.

Every night during the show, the master machine loads the sequences play the audio associated with it, and sends the lighting data out to the controllers in the display. xLights comes with another piece of software called xSchedule. xSchedule will send out show data using a low footprint in real-time to each of your controllers.

This computer also needs to know about the specific controller setup to send data to the correct IP address. Lastly, the audio is typically sent into a short-range FM radio transmitter. This allows people in their cars to hear the show. For pedestrian traffic, you can use outdoor speakers connected to a radio tuned in to the same FM frequency as the transmitter.

Bundles of Pixels Rusty Griswold

Let’s Get This LED Light Show Started!

To summarize, light effects are in software like xLights. The software exports the results into a show file. The show file is played from a master computer which outputs the light data using the E1.31 protocol to controllers. The controllers receive packets addressed to them and output the E1.31 data to the individual pixels.

There is a lot of hardware and software behind the scenes to create these displays. As time goes on, we hope to see developers become more efficient in reducing the number of components required. Pixels are becoming more accessible and easier to set up each advancing year. Controllers are also getting more powerful and, at the same time, more user-friendly. With the right amount of patience, anyone can build an animated holiday LED light show using pixels.

Rusty Griswold Light Display Icon