Arduino RGB LED Music Visualizer

Loading...

Sign in or sign up now!
Alert icon
Upgrade to the latest Flash Player for improved playback performance. Upgrade now or more info.
7,291
Loading...
Alert icon
Sign in or sign up now!
Alert icon

Uploaded by on Feb 9, 2011

Visit http://majordecibel.blogspot.com for instructions. Arduino RGB led music visualizer with beat tracking algorithm. Original code. All processing is done on the Arduino. Simple RGB LED used.

I just put together a new blog that features electronics projects, news, and product information. Check it out here http://mdbreview.blogspot.com/, and feel free to contact me if you are interested in having your project featured!

Music used under creative commons license, found at http://www.danosongs.com. Song title: "Beautiful Straight Lines"

Category:

Science & Technology

Tags:

License:

Standard YouTube License

Link to this comment:

Share to:

Uploader Comments (majordecibel)

  • Ok, so since your blog encouraged video responses (or, at least that's how i took it :) ) I tried to add a video response, but it wigged out on me, so that may or may not work. At any rate, I'm working on a wearable visualizer, so I'm very interested in programs that are only arduino based and computationally inexpensive... so, if you decide to publish some of your code, that would be awesome! But, inspiring stuff either way!

  • @blinkylightlove I will probably publish the full code soon, but who knows. It is fairly simple and all arduino based.

  • love the project man, im working on something similar myself (though I focus on bass beat detection). i have a two part question: what is your sampling rate and what is the decay coefficient in your moving average filter? Im wondering how this digital time constant compares to the analog filters in my project. Also, you've inspired me, im gonna add a similar display mode in my project (except it'll changes color when a beat is detected). Let me know if you want to collaborate in the future

  • @electrohamLincoln Thank you and good luck! I have since designed and had a few PCBs fabricated. I also used some more vibrant Cree LEDs. I think fs was approx 10k with antialiasing filter cutoff of 1.5kHz (oversampled). Decay coef was probably 0.05 to 0.2 or so. Code isnt perfect yet and demos better with more dynamic music. Haven't touched the project in a while or updated.

  • Cool project, will you be releasing full sourcecode aswell?

  • @neigan Thank you :) I have included some information that would allow someone to control an RGB LED, along with how to read line level audio, and some general information on the algorithm already (just basic stuff), but I'm not yet sure if I will release the full source code just yet.

see all

All Comments (13)

Sign In or Sign Up now to post a comment!
  • Ha nice tread! :) I made something similar but with analog filters. At first i used a chip i programmed but it has a CPU so it has a sample rate so it misses a lot of nice pulse effects while fading that occurs in the analog region. Also like here made an 3.5mm jack input for noise reduction.

  • @majordecibel Nooo I hate FFT! But I see how it would be useful here xD

    This should get me going, thanks!

    I was working with a switched-capacitor filter, which I got working, but I'm not sure how I can get multiple different clock signals out of the Arduino while it's doing other stuff as well...

  • @petelite This is pretty simple - it's basically doing a forward moving average on the absolute value of the ADC samples, and mapping that to intensity. Colour switches when the instantaneous absolute value of the ADC exceeds the moving average by some amount. That gives you some hints to how I'm doing it :) If you want to distinguish between different frequency components, the easiest way would be to filter the input signal. To go further you could use a low pass anti-aliasing filter and FFT.

Loading...
Alert icon
0 / 00Unsaved Playlist Return to active list
    1. Your queue is empty. Add videos to your queue using this button:
      or sign in to load a different list.
    Loading...Loading...Saving...
    • Clear all videos from this list
    • Learn more