The entire Christmas lights system works around xLights, the program that controls the animations. You upload a picture of your house, then tell xLights what kinds of lights you have and how they are arranged on the house. You create animations on the lights using a simple, drag & drop system that makes animating easy!
After creating your animations with xLights, the program communicates to your lights via standard Ethernet network cables. The language that communicates the bulb color changes is called DMX.
The beauty of this system is that you do not have to buy expensive, DMX-lights or DMX light controllers. Instead, you can purchase off-the-shelf Christmas lights that are "hacked" to work with the DMX language that xLights uses. Currently, these types of lights are explained on this website:
- G.E. Color Effects (found at Lowes, Home Depot, Costco, Amazon, etc.)
- Incandescent lights (all bulbs are the same color)
- WS2811 multicolor lights (each bulb can be a different color)
- RGB "lights (the entire string can be different colors, but all at once)
You connect these lights to an Arduino that has a Ethernet board on it. The Arduino uses a special program that receives DMX commands from xLights, then tells lights to turn on and off and which colors to use.
In summary, your computer runs xLights to playback your animations, which are sent over Ethernet cables to the Arduino microcontrollers that your strings are attached to.
If that's all that you want to do, you'll have a Christmas lights show that shows fantastic animations that includes different kinds of lights.
But, you can do even more! You can save your xLights animation as a recording that can be saved to a low-cost, low-power Raspberry Pi microcomputer using a free program called Falcon Player. This is handy because you don't need to leave your computer running all night to control the light show; the Raspberry Pi can take care of that.
Falcon Player also makes it possible to allow Internet control of your lights, if you like. You can setup a webpage so that people clicking buttons can change the animations played on your house. To allow people to see your Christmas lights from the Internet, a second Raspberry Pi is placed into a dummy security camera, making it a low-cost and flexible streaming outdoor webcam.