Bluetooth Microphone output to PIN

Hi,

I'm looking for infos about how to get the Microphone from a bluetooth headset to a outputPin. I can't find info about that if that's working somehow.

Just so I understand - You want to speak into a Bluetooth headset, pick-up the Bluetooth signal wirelessly with the Arduino and put-out an analog signal (to an amplifier or something)?

That’s probably not possible. The regular Arduino probably isn’t fast enough to communicate with a Bluetooth module continuously while also continuously processing audio. It also doesn’t have a DAC (no true analog output) so you’d have to add one.

DVDdoug: That's probably not possible.

Yes, very hard indeed.

You'll either need a Bluetooth module or an ESP32 microcontroller. An ESP32 is definitely fast enough to receive, process and output audio either over a low-quality in-built DAC (8-bit) or use I2S to high quality(16-bit) external DAC. I've got examples of this on Instructables but specifically picking up the MIC output might be tricky...

Can you pair the MIC output to a regular blueooth speaker? if so, my example should work but if not you may have to start hacking...

Thanks for your thoughts. Any commercial solution just sends audio from A to B but never the Microphone. A BT Speaker juses a differend BT protocol so the mic is not supported. The idea es to connect the BT headset to a sender not to a reciever (Speaker).

Tricky task. What do you think?

cyborggarfunkel: The idea es to connect the BT headset to a sender not to a reciever (Speaker).

But the mic input has to be received somehow (wired or wireless) by the microcontroller before it can be sent anywhere. Do you know what protocol the mic on your headset uses for transmission? Is it a Hands-free protocol?

Would it be easier to mount an I2S mic connected to an ESP32 on your headset? This could pick up your speech and transmit it somewhere else. Otherwise, you may need to do some very device-specific hacks for your headset

the2ndtierney: Do you know what protocol the mic on your headset uses for transmission?

Yes. It uses the Hands-Free Profile (HFP). You think that's possible to connect?

the2ndtierney: you may need to do some very device-specific hacks for your headset

I thought I can include a HFP profile lib and just route the mic to pins or if the speed is to low add an decoder before. What do you think?

I've never done this before, but theoretically, ESP32 supports Hands-Free. I'm not sure if this will work but it's a good place to start working with the hands-free protocol. Please update the forum if you get this working. Good Luck!