The Hippodrome – Custom Light Show

I was approached by a newly formed and renovated venue the RVA Hippodrome to commission another light show – in short time and to be totally designed by me! I planned an idea and sketched it with Google Sketchup, they liked the idea and I ran with it! I started buying materials, proving concepts, talking to Chinese and US suppliers. After countless hours of work, lacking sleep because of the Human Centrifuge build – I finished the build in time before the Sound Engineers did their sound testing. The show was a success! Everyone had a great time, Richmond discovered a brand new venue of beautiful design and new technology up there with some of the best we’ve ever seen.


Project Details

6 Arduino Megas
1 Raspberry Pi
200 Lines of code
2 Miles of Wire
800 Solenoids
126 Relays
18 Sheets of Plywood
4800 Bags of Doritos
2 Deep Cycle Lead Acid batteries
2 Buckets of Tears and Sweat
3000 Miles of Driving
0 Sleep

About the build:

With my previous experience with sub-woofer enclosures, CNC machining, and furniture design, I designed simple yet elegant light boxes to help distribute the over 750 RGB LEDs that make up this controllable display. Nine full sheets of 1/2″ birch plywood and 3 sheets of 1/4″ hardboard make up the wooden boxes, the front panels are the only things CNC’d on these boxes.

I ordered 44 LED/M 24IC/M LPD8806 strips from CLEN LED through Alibaba, 16 meters of them! With my budget we couldn’t afford to make the show awesome enough at Adafruit’s prices, so China it was. Each box consists of an 5v 5amp power supply. an Arduino UNO Rev 1, an RS485 MAX485 PCB, 86 RGB LEDs and 43 LPD8806 ICs, wall power and an Ethernet daisy-chain.

The control box has an Arduino MEGA 2560 serves as the master of the system controlling what each light box does, it is connected to several SparkFun EL Escundo Dos boards, an MSGEQ7 7-band equalizer, an adjustable electret microphone, an RS485 differential transceiver, and a 240w 12v power supply.

Several sub programs were written, combined and reprogrammed to work again. I used the PS2X and EasyTransfer library from Bill Porter, and the LPD8806 library from Adafruit. The Playstation controller is one of my favorites to use, there are many buttons to choose from, joysticks to manipulate and more if you dive deep enough. You can get the current working code here. This code relies on a PS2 controller connected to an Arduino and uses the serial ports to communicate, as well as using the hardware SPI on the Arduino UNO for controlling the LPD8806 strips. I needed that extra distance, so we used MAX485 transceivers to allow hundreds of feet between connections.