Arduino: TKs FFTDuino 4: Color Organ Final Form
I made a couple of circuit boards, including a “color organ shield”, and found an ideal enclosure for the Color Organ.
The project is now a stand-alone FFT Color Organ that works from ambient sound thru its built in electret condenser microphone, and is powered from a 9V battery.
Maximum current drain with all LEDs on is around 80 mV so a fresh 9V battery should last five or six hours of heavy display.
The software includes an Automatic Gain Control (AGC) routine that boosts the display sensitivity if the ambient sound level is low. This results in an interesting “glitch” that actually is a feature, not a bug: if it’s quiet, after a short time the organ begins flashing more or less randomly so makes an interesting light feature. Once it detects a sound it responds normally to the sounds.
It may take a few seconds for the display to begin when first turned on, as the AGC adjusts to the sound level.
The Arduino sketch contains the credits for the original writers of the c++ FFT routine and porting it to Arduino, and I also cited the authors in the first video describing this Color Organ.
The websites where I found the original sketch with details are here:
And my very slightly altered version (pin assignments mostly) is here:
The audio amp chip I used is the TDA7231 and the amp schematic can be found on the data sheet for that chip. Just put in the electret mic as shown in the schematic for the microphone, using a 10 uF decouple cap and a 10K resistor inline with the power to the mic. The amp output goes to the DC bias network and then into the Arduino’s ADC input at Analog0.
I’ve been wanting to make a Color Organ ever since I heard about them, when I was a kid. None of the ones I have seen were entirely satisfactory though, being too expensive, complicated, overkill or simply not working well enough for my taste. But this one finally seems to be what I’ve been looking for. It’s adaptable, expandable, portable, does a remarkably good job at the Fast Fourier Transform and the spectral purity of the colored LEDs beats color filter gels all the way around. (The FFT routine is waaay better than using notch filters in an analog system, I think.)
Next I will be making a high-current driver system so that I can use strings of bright LEDs on the output.
Arduino is really cool! Thanks for Watching!