Audio Input

Hi All,

I'm attempting to make a spectrum equaliser, but having some problems and wondered if I've done something wrong.

I'm using this (SparkFun Electret Microphone Breakout - BOB-12758 - SparkFun Electronics) which is a microphone and opamp combined. It's connected to vcc, gnd and analog0. I've tried 5v and 3.3v from the arduino, and connected 3.3v to AREF but nothing seems to make any difference. The output is almost just random. I increases slightly when I clap, but only by maybe 20% or so.

Following the instructions in the thread on sparkfun, I've tried samping fast for 50ms, and then using the difference between the max and min, but this value seems pretty random. I'm also trying a FFT library (Arduino FFT – Get your freq. on! | Open Music Labs), which has a Puredata patch so you can see the output. I've attached a screenshot of the output when there is silence. The FFT shape changes slightly when I clap, but it's not a significant change.

Have I missed something, or could this microphone just not be any good? It's really frustrating!

I'm attempting to make a spectrum equaliser

I bet you are not, there is no such thing. Spectrum display - yes, graphics equaliser - yes spectrum equaliser - no

Following the instructions in the thread on sparkfun, I've tried samping fast for 50ms, and then using the difference between the max and min, but this value seems pretty random.

That is for detecting the envelope, you want the real signal.

and connected 3.3v to AREF

Doh!

Says:-

If you're using an external reference on the AREF pin, you must set the analog reference to EXTERNAL before calling analogRead(). Otherwise, you will short together the active reference voltage (internally generated) and the AREF pin, possibly damaging the microcontroller on your Arduino board.

With only a X100 gain it looks like it is not enough. I would couple it in like in this page:-
http://interface.khm.de/index.php/labor/experimente/arduino-realtime-audio-processing/