FastLED, bluetooth and an audio visualizer

Hello everyone,

I was wondering if I could recreate something like calcprogrammer1 did with an audio visualizer that makes my ledstrip light up to the music. Now, I can't use his program anymore, because it uses too much CPU of my pc, so what I did to replace this program was: I hooked my HC-06 bluetooth module up to my arduino nano Programmed it to do basic stuff, make the whole led blue, red etc Made an app for it using app inventor 2 However, it doesn't have the functionality to move to the music yet.

I do not know a lot about programming, but what I want is: when I click a button in my app it switches to the audio visualizer, and when I click the green button for example, it switches back to static green. I would like to be able to change the colors of the leds indicating the music, but without this function I would be very happy too. Just nice to have. I do not want to use a microphone, but just like calcprogrammer1 did, using the USB connection of the arduino for music input

Now this probably sounds very ambitious and I want to know if this is possible, and if so, how the hell do I make something like this happen?

Greetings, Staijn

Definitely possible. I'd use a Teensy 3.2 and the Teensy Audio Library. You didn't says what kind of LED strip. APA102 shouldn't be an issue because FastLED can run them without disabling interrupts. If they're WS2812, you may want to look at the PRJC WS2812Serial library.


Thanks for your reply! Sorry, I indeed forgot to mention what type of strip I got, I have a WS2812B strip. I don't really understand how this would work, because what I saw on pictures is that the Teensy is directly connected to the ledstrip. But how would it know when to switch to the visualizer mode? Because the arduino receives the bluetooth data. Or do you connect the teensy and the arduino with each other?

And why do I need the Teensy? Because the program that calcprogrammer1 made didn't need that, it worked fine with just the arduino and the WS2812B ledstrip I've got.

Could you eleborate a bit more?


Because the program that calcprogrammer1 made didn't need that

You have not defined who/what calcprogrammer1 is, or what program he/she/it created.

when I click a button in my app it switches to the audio visualizer

We'll assume that you have a button, and an app that responds to the button press. HOW, exactly is the app supposed to respond? In other words, where, EXACTLY, is the audio data coming from?

If the audio data comes from the phone, it is useless to send that to the Arduino. Analyze the data on the phone, and send pixel number/color data to the Arduino.

If the audio data is NOT coming from the phone, then using a Teensy to capture/process the audio data IS the way to go.

Here is a video of how calcprogrammer1’s audio visualizer works. Basically it is an exe, where you define the amplitude, brightness, and colors. Here you can see it in action

Skip to 26 minutes

I want the arduino to analyze the audio over my headset, which is connected to the same pc as the arduino, and then convert the music I listen over my headset to light on the ledstrip. So I would need a Teensy for that right? And this is hooked up with the arduino right? Like a module? Or does it replace the arduino?

I want the arduino to analyze the audio over my headset

This does not make sense. The audio data is on the PC, not in the headset.

There must be some application sending audio data to the Arduino, or it must be sampling the audio data via a connection to the headphone jack.

But, the Arduino is crap at sampling audio data. The Teensy is good at it.

Or does it replace the arduino?

The Teensy REPLACES the Arduino.

Alright, I'll look into it, thanks!