The project is a box with a cable which attaches to four LED strips in white, red, blue, and green. The LED strips brightnesses are controllable by a computer using the MIDI protocol. There are also two knobs on the box which control a strobe light which is fed to each of the lights. The two knobs control how long the lights are on and off for which varies from ~1 second each to ~1/100th of a second.
The purpose of the project is to be able to create a custom lights show which is synchronized to music. The MIDI protocol is used for this as MIDI is commonly used to connect musical hardware to computers, and allows easy control of the lights in many digital audio workstation software packages which support MIDI output such as Ableton Live.
Most of the control is done via an atmega328p micro-controller programmed in Arduino C, receiving the MIDI data from a connected computer. The micro-controller receives the MIDI data from a standard MIDI jack, which is connected to a computer using a USB to MIDI cable. The computer sends data regarding each of the light's brightnesses to the controller which then sets the brightness via pulse width modulation (PWM). The strobe light is controlled by a 555 timer connected directly to two potentiometers which make up the knobs. Since both PWM and the strobe light are digital signals controlling the same light, the two are ANDed together using two transistors to control the single output. This allows for both the brightness and strobe light to be applied at the same time.
The power is supplied via an external 12 volt DC plug and can be turned on and off with a switch on the top of the box. The 12 volts is stepped down to 5 volts by a buck regulator which supplies the 555 timer and micro-controller, while the full 12 volts is used to power the LED strips.