Voice Streaming with Arduino

Hi all,

I'm trying to understand if it's possibile to send voice in real-time between 2 Arduino via wireless. Something like a unidirectional Walkie Talkie. Something like that:

Microphone - Arduino - TX ---------------> RX - Arduino - Speaker

I would like to use this mic: http://www.sparkfun.com/products/9964 I see the AUD pin and I assume I should connect it to the PWM pin on board, but I really don't know what kind of values are read and how to send it in real-time.

Assuming that is easy to find a AD/DA converter to be connected on the PWM, the other problem is the wireless transmission. The first solution was Zigbee, but we concluded in other posts that is not a solution for the problem. Any other ideas ?

Thanks in advance for your answers.

BYE !

PWM uses an output pin!

You could connect the microphone unit to an ADC input and transmit the digitised speech to the other Arduino via Sparkfun nRF24L01+ modules.

One thing that makes people cross on this forum is cross posting. Please don't do it if you want any friends.

Thanks for replies.

To Leon: can’t PWM be configured also for input ?

To Grumpy_mike: you’re almost right, I’m trying to make some order in different aspects of the project, voice sampling and transmission.

PWM is output only! Look it up.

Thank you Leon.

I think I'll try the Sparkfun module you suggested me, looks perfect.

What do you mean with "digitsed" ? Do you think I can just write raw values to the RX of module ?

If your ADC sampling rate is low enough (say 8 kHz) you should be able to do that.

Ok I'm looking at an ADC sampling at 8khz.

Basically what's sampled ? Electrical values ? What is read by the Arduino sketch ?

Thanks :)

Interface an electret microphone and amplifier to an analogue input.

Ok this is what I've figured for the project.

I'll do exactly this and than I'll post back !

Thank you very much !

You connect AUD to Analog Input 1 (A1) and do something like this: value = analogRead(A1); Them you need to send that value to your wireless connection. In the other Arduino, you receive the value and do analogWrite(....) and a PWM output.

Wk