Controller
I've been working on building a computer controller, so that all lights will be turned on and off, and sequenced to music. To do this, there are a number of options - you can buy a controller off the shelf that plugs into your computer's serial or parallel port - they are quite expensive - or you can build one yourself, which is what I've done (and ultimately is probably just as expensive as buying one, but isn't half as much fun!!!).
Attempt 1 - A total disaster!
Click HERE for full details on the 320 device parallel controller.
I went back to basics, and made it modular. The first board is the "router", and routes the control signals and data to the correct "port" (flip-flop) on the controller board. It has the primary flip-flop, and three 3-to-8 converters (the original design from computerchristmas.com has five 3-to-8 converters giving a total of 320 controllable devices). The three RJ45's on the top of the board connect to the "control" RJ45 on the controller boards. The 8 wires then connect to the clock pins of the eigth flip-flops on the controller boards. The three RJ45's on the bottom of the board are the databus, and connect to the output of the primary flip-flop.
Controller schematic
Again there's lots of options for the DIY controller. The one I chose uses multiple writes through the paralle (printer) port to turn the relays on or off, and can be built to control up to 320 devices.
My first attempt at contruction the controller was a total disaster! I tried to squeeze everything on to the one prototype board. It took hours and hours to solder together, and then didn't work! What's worse, there was no room for me to debug it. So I stripped the IC's off it, and started again. For anyone thinking of doing it themselves, the lesson I learned here is to build it in stages, and test it as you go.
On the controller boards, the first RJ45 provides the data bus ("D" on the photo) and connects to the input side of the 8 flip-flops. When clocked by the control wire (from the "C" RJ45), that flip-flop latches the data from the databus to the output side, and changes the state of the relays. When the output has +5 volts on it (1), the relay will be turned on, when the wire has zero volts (0), the relay is switched off.
I built the 'router' to manage up to the three controller boards, although I've only built two. Each controller board has 8 ports, each of which controls 8 relays (for a total of 64 devices per board). In theory, I can control 128 devices at the moment (although I've got a couple of dodgey ports which I can't be bothered fixing right now).
"Router" board
Controller board
The controller hardware is mounted inside an old PC (which has been modified somewhat with an angle grinder). The outer case is now hinged and lifts up, part of the drive bay was removed to make room for it all, and holes were cut in the case to mount the RJ45 connectors (which used to be a network patch panel.) I've found it has helped using the 8 colour coded wires of a cat-5 cable and RJ45 connectors rather than what was suggested in the original design.
Countroller in the computer chasis
The panel attached to the front of the computer is what I proudly call "The Crunch Panel". It is effectively a status display for the whole system. It's made up of ten-element LED bar displays wired to the output of the controller. The LED on the right just indicates that it's powered up. The LED's 1-8 indicate the status of the port (and therefore the relay). This is absolutely invaluable for debugging and working on sequencing (you can see at a glance the lights turning on and off in time with the music). Thanks to my good friend Mr Crunch who donated a significant amount of cash to make this possible! I would highly recommend a Crunch Panel to anyone contemplating building one of these. Note that there's a 220ohm resistor behind every LED. There's a LOT of soldering involved in building this gizmo!
One last bit - I wired the second control board slightly differently to the first by somehow interchanging wires 1 and 5 - I think it was when I connected up the RJ45's. Rather than re-wire the bloody thing, I've added code into the sequence player that switches the output for these two wires on board 2. Also worth noting is that building and running one of these is a combination of both hardware and software!
UNDER DEVELOPMENT
More info - Controller
More info - Relay boards

More info - Sequencing software
More info - Countdown clock
More info - Wiring / Power
More info - Mounting
More info - Videos
Home
Santa Boots
History
Controller
Contact
Relays
So, once you've got a controller, how do you turn lights on and off? You need relays, and lots of them!
The "Crunch Panel"
The controller is powered from the PC's power supply (+5 volts - which is usually the RED wire, and the yellow wire is 12 volts - useful if you use a Kit74 - see section on relays).
Power
Software
Countdown Clock