Interactive LED Music Visualizer
Introduction
Let's face it: nowadays, most musical performances are complimented by some fancy light shows. Go to any concert, festival, club -- they all have a corresponding visual performance or effects. Why not add your own home to that list? Here's a simple yet effective project to make your very own son et lumière!
Required Materials
To follow along with this tutorial, you'll need the following materials. The partial wishlist on the left is for the simple circuit. It does not include the potentiometer and buttons. The full wishlist on the right is for the full circuit. You may not need everything though depending on what you have. Add it to your cart, read through the guide, and adjust the cart as necessary.
Any microcontroller with 3.3V and 5V pins will suffice. Any analog potentiometer and size momentary button should work. Depending on your intent, the trimpot and buttons may not be necessary.
- Trimpot -- The trimpot is only used to adjust the brightness threshold, so, if you want maximum brightness, you don't have to worry about incorporating it.
- Buttons -- The three buttons cycle color schemes, visualizations, and shuffle mode respectively, so, if you want to do without those features (and just use shuffle mode all the time), that's also a possibility.
If you're compiling from the Arduino IDE or similar, you'll want to snag the the NeoPixel Library since the code used is heavily based on it. The resistor and capacitor are not required, but they will help prevent possible damage to the LEDs. Any resistor between 300–500 Ω can be used.
It is also suggested that you use an Arduino and Breadboard Holder to simplify wiring and to mount the LED strip:
Recommended Reading
Before embarking upon this tutorial, you may find the following links useful:
- Arduino.cc
- How to Use a Breadboard
- Wikipedia: RGB Color Model
- WS2812 Breakout Hookup Guide
- Sound Detector Hookup Guide
- How to Power a Project
Since we're using the NeoPixel library, it may also be a good idea to get familiar with the NeoPixel Documentation.