Wall Tetris LED Board
Music visualizer I wrote for the LED board, running on a Teensy 3.1 microcontroller. Each row is a frequency band, higher frequencies at top. The background brightness is controlled by bass frequencies. Check out the drop at 0:17.
I built a 2-foot-by-4-foot wall-mounted LED matrix, with 20x10 LEDs, and wrote various visual effects for it. I was inspired by several other LED builds like the PixelBrite.
- It contains 200 daisy-chained WS2801 LED modules.
- Custom wood frame and foamcore grid to isolate pixels from each other and diffuse the lighting.
- Controller started off as an Arduino, upgraded to a Teensy, later moved to a Raspberry Pi.
Here’s a photo gallery of the build.
I drew a cutting template for the foamcore grid in OmniGraffle and printed it on a plotter. The foamcore grid was cut out with a hot knife at first; later switched to a bandsaw later when I got lazy. Laser cutting would have been ideal!
At various points, it’s been capable of:
- Playing my own implementation of Tetris
- Visual simulations: fire simulation; simplex noise simulations (clouds); metaballs visualization (blob effect)
- Video loop playback
- Real-time audio visualizer
- Streaming video over serial connection, for use with the GLEDIATOR matrix control software.
- Hand-coded graphics libraries to draw lines and shapes (with anti-aliasing!).
- Arduino-based text rendering from a bitmap font. To overcome the storage limitations of the Arduino, I wrote a small Python utility to take my own font designed in BitFontMaker and store them into a dense bit vector, which is then compiled into the C program.