Code written to run on the Arduino Nano or Uno to drive LED strips such as WS2812B as a stereo VU meter.
- 10 VU patterns that move in time to the music.
- 7 standby patterns that move without audio input.
- Press the button to change pattern, long press to automatically cycle through patterns.
- Remembers the last pattern that you used when you power it off and returns to it on power on.
- Supports 75 LEDs per channel (150 total) on Uno and Nano. Much more on Mega etc.
- Completely open source and hackable. Create your own patterns or use it in whatever you like!
Click the image below for a low-production-value video of it in action.
If you have purchased the pre-made PCB from me, make the connections as shown below:
If you want to make this on your own, the schematic that I have used is:
- Download this repository and unzip it somewhere. The unzipped folder must be called
Uno_vu_line
. - Open the Arduino IDE then open
Uno_vu_line.ino
- You will need the FastLED library. In the IDE, go to
Sketch
->Include Library
->Manage Libraries
. Search forFastLED
and install the latest version. - On the
Uno_vu_line.ino
tab, find the line that says# define N_PIXELS
and change the number after it to the number of LEDs you have in each string. - If you have bought a PCB from me, you will need to install the USB drivers for the Nano.
- Plug in the Arduino and upload the code in the usual way, ensuring that the correct board type and com port are selected in the
Tools
menu.
- The more LEDs you have, the more power you will need to provide. Make sure your power source is able to cope.
- If the controller seems to go weird, I've found a quick reflash of the code usually clears it up quickly.
- This project is for entertainment purposes only and the output is not calibrated in any way.
- Code is written to run on the Nano / Uno or equivalent. Using an AVR with more SRAM will result in being able to use more LEDs.
Code is based on demos from the FastLED library and code from Cinelights YouTube channel.