Hi,
im trying to build a simple sound source localization device based on time difference with 3 microphones and one sound source at a time. the problem is i dont know much about microphones or arduinos in general (a friend of mine gave me his arduino mega).
I tried using a keyes microphone but couldnt get it sensitiv enough to detect some talking. Im not sure if thats on me but a lot of people seem to have similar problems with it.
I searched for older Threads on one guy wrote a documentation about his project but the wordpress side isnt available anymore.
Also some used this microphone, but didnt update if it worked or not.
So my question is if you guys can recommend this or any other microphones?
Big thanks in advance
You'd have to know the SPL (loudness) and the sensitivity of the microphone.
The microphone boards you're looking at are not just microphones (like you'd use for recording). They are a microphone, preamp, and maybe some other circuitry.
I don't see a gain/sensitivity control on the SparkFun board and that could be an issue. However, it does have the required bias for the Arduino board. I don't see any details for the Keys assembly.
the problem is i dont know much about microphones...
Microphones put-out signals in the millivolt range. With "normal' sounds you're probably going to get around 10mV and with mic in front of a loud guitar amp you might get more than 100mV.
Typically, you use a preamp to bring the signal up to [u]line level[/u]. Virtually every preamp has a level/gain control because the acoustic loudness varies and microphone sensitivity varies.
Electret condenser mics require power. (Dynamic mics don't need power.) A computer soundcard provides 5V to power "computer mics". Some hand-held condenser mics have a battery and some run from 'phantom power" provided by the mixer. If you build your own preamp and you want to use a "raw" electret condenser element or a computer mic, you'll need to make sure your preamp circuit provides power.
...or arduinos in general
The Arduino's analog-to-digital converter reads 0-5V (with the default +5V reference). That's about right for line level, but audio signals are AC and the Arduino can be damaged by the negative half of the audio signal. The solution is to [u]bias the input[/u] at +2.5V. (You can subtract-out the bias in software if you wish).
Tank you very much for the answer.
For what kind of SPL / sensitivity values do i have to look for? (i read somewhere that the SPL is normally about 130 dB at 100m distance)
And would you recommend using a microphone board or just a "normal" microphone and build the rest myself?