So you wanna make a kickass Holiday lightshow music extravaganza eh?

well u can throw one together in a couple days with hardly any expenses...

Here is what I came up with in literally less that 3 days




The most important thing you are gonna need is the controller. There are many out there, but for this tutorial (its easiest and cheapest) we are gonna use the kit74 parallel relay board. 30$, 35$ assembled.

This circuit is going to interface (plug into) with the printer port, and based on what you tell it todo (using software), it will OPEN and or CLOSE each of the relays, completing or disconnecting each of the 8 circuits. (turning things you hook into it, ON and OFF)

ok. so u got ur relay board.

If you need to assemble it, heres a guide with pictures http://halloween.sitenation.com/site/view/article/1082566342/ca

Now you need software to control it...

well there are many free tools out there to make this work. Vixen and comet (comet is not supported anymore so u can grab it from alloutchristmas.com's download section

I made my own software kinda... Ill show you how I did it this past halloween...

I first wrote a peice of software to record the music sycning... You tap the space bar to the song and it outputs the millisecond delays in between the beats. here or compiled here is the source for that (Windows/linunx). This program is used to record the delays inbetween the beats of the music you want, you will use these delays in the second program to actually turn the lights on and off.

Then I wrote/copy pasted code (credit goes to http://www.hytherion.com/beattidp/) to write those delays to the relay board. windows. This software will use the delays you recorded in the first program (along with the light configurations you tell it) to display your show! (by default I tapped out "shave and a hair cut" for the test program) (you will need this dll to run the windows version (Xp says its not safe to allowe Ring 3 to parallel ports))

I also yoinked code from http://www.epanorama.net/circuits/lptout.c to make the linux equiv here

Writing to the board is relativly simple. Its simple binary.


light   1     2    3    4    5    6    7    8
dec     1     2    4    8   16   32   64  128
hex   0x01 0x02 0x04 0x08 0x10 0x20 0x40 0x80


just add the dec (or hex) up to get what lights u want on or off. (its better if you sequence it by hand, an automated program to make the lights turn on and off may be easier, but it would look terrible compared to a hand made one)

for example, to turn lights 1 3 5 and 8 on, its 149 or 0x95 (1 + 4 + 16 + 128)

Then once you have your led light show going to your liking, you need to hook up REAL lights, there is a simple tutorial here on how todo that.


Hooking up 8 seperate lights can get messy, so what I did was buy 2 terminal strips, with jumpers accross the back so as to make connecting 8 seperate things to ONE outlet, very simple.


red=positive black=negative (altho its ac so it really doesnt matter) blue=both paired together (not bare wire obviously lol)

so to conclude, for the technically challanged... Download the sync program (compiled for windows) play your song in the background and tap the space bar to the beat (usually the melody looks more interesting) Take the output from that program, and download the windows or linux sources I made. Replace my demo thingy (scroll to the bottom) with your own Hex and delays. (obtain the delays from the sync program you ran before, and make up what ever configurations you want using the hex table above. (you can use this site to figure out what hex you need, use 1 for on, and 0 for off)

Have fun and enjoy!