Audio circuit suggestions?

Hi Group!

I have recently started re-exploring my assortment of Arduinos and shields after being away from it for quite some time. I would like to thank everyone who has offered guidance and suggestions thus far, but I need another question answered.

Does anyone have any suggestions for a high-quality audio circuit that I can interface with the Arduino to take readings from, such as dB level or frequency? Also, is there any way to record audio using the Arduino onto, say, an SD card?

I have a bunch of those little electret microphone elements, but I would like to avoid using those. Anything that costs 4-cents can't be that high-quality. I need to be able to sample a wide tonal range and a wide frequency range, and those little things sound like you're talking into a tin can. I'm thinking about something that includes a bit of work... a bit of circuitry... and a good sample rate. I don't want to just plug one end of the element into an analog pin and one into the 3V pin. I want the circuit to have a bit to offer... a little flexibility so that I can grow into it to do other things if I want.

If anyone has links to circuit diagrams, or if anyone can paste one in, that you feel is a high-quality circuit, I would appreciate it. It will need to fit into a little plastic case along with the Atmega circuitry, so I don't have the space of a huge rack enclosure or anything to work with.



I recently got two APR9600 chips cheap off ebay for $10.

They can record and playback up to 60 seconds of audio depending on the sampling rate. And do not need an MCU to run. I'm going to try and control them with an arduino once I finish my LCD code. I haven't tested one yet so I am not sure of its quality.

pYro, thanks for the information! I will look into those.
What are you using as a microphone? A little condeser element or something a little higher quality?

To be fair, the Arduino is not a signal processor. It can be the brains of a signal processor but it is not blessed with much in the way of real time analog processing, being a primarily a digital device.

There is a whole corner of electronics devoted to this, however... known as Digital Signal Processing (DSP) and companies like Texas Instruments are heavily involved in making chips for this application.

The devices that perform these functions have far more power than an Arduino: IE; Analog | Embedded processing | Semiconductor company |

You are going to need to rely on a good amount of external parts to get good results.

Pwillard, thank you for the information. I suspected that the Arduino would be fairly limited with regard signal processing from the lack of information out there. I appreciate the information about TI and will explore that avenue as well. I was under the assumption that there would be a dualistic approach to this project, with regard to the Arduino doing one portion and another circuit doing the audio processing.... you confirmed it.

Has anyone out there ever done any kind of audio signal processing on the Arduino (or USING the Arduino as a part of it)? I would love to tap into your knowledge or resources.




For recording audio look for arduino shields, not clear how "quality" is graded in your perception, but 8 kHz most common freq. range for 8-bit microprocessor.

Magician - thank you for the links. I had run across realtime link that you provided, but I had not yet seen the spectrum analyzer. Thank you for providing that - I will look into it in further detail!