Electrical – Bluetooth sound streaming with arduino

arduinobluetoothsound

I have started a project in which I'm supposed to build some sort of a bluetooth headset. This bluetooth headset is suppose to be connected to any smart phone (basically android). I'm thinking about using some eval board like Arduino and also to use RN52 bluetooth breakout board.

The reason I'm using Arduino is that the bluetooth module should receive the sound signal from the main board (Arduino) and then stream it, as audio, to the smart phone. Same story about receiving audio from the smart phone and passing it back to the main board.

In other words I can not use the mic/speaker in/out pins of the bluetooth breakout board itself. I know to pass digital data between bluetooth breakout and the main module, I have to use PCM ports on the breakout.

So now here is my question: if I use the PCM pins on the breakout, when sending and receiving the data to/from the smartphone, will the smartphone be able to understand this is a sound signal? because if I use mic/speaker pins of the bluetooth breakout, the android device will recognize the bluetooth module as a true wireless headset and will communicate all the sound data to it.

But I'm not sure if this is the case when the bluetooth module is receiving/sending sound signal from/to the main board.

P.S: in case you are wondering why I want to generate/get the sound signal on the main board (e.g. Arduino) its because I want to do some sort of signal processing on the digitized sound signal.

Best Answer

What you are describing will not realistically be practical with a classic AVR-based Arduino. You would need at least one of the ARM or ESP8266 based varieties, or a DSP architecture, or even one of the cheap orders of magnitude more powerful SoC systems.

However, to answer your literal question, the phone would know that the data is an audio signal, because to get the phone's stock software to treat the signal as audio, you would have to be operating the your creation's Bluetooth system in an audio specific profile. In the case of the RN52, the firmware of the module restricts you to choosing between these modes; without changing that firmware, you can't for example use that module for some other type of Bluetooth operation like being a keyboard or a serial device.