So lots of folks struggling getting a microphone to work with the RN-52 Bluetooth adapter.
Here’s what I’ve got working. This circuit:
I cribbed off the circuit for the eval board. I’ve run R1 at both 1K and 2.2K, both work ok. C1/C2 are 47nF and C3 is 1uF. C3 is ok for electrolytic, but C1/C2 likely need to be film (like FCP1206C473J-H3) or MLCC (like VJ0805Y473JXAPW1BC)
The MIC, the mic I used was a 25LM041. which now appears to be obsolete! But the critical stuff is:
- Sensitivity: -64 dB or better
- Operating Voltage: 3 V (or less!)
- Impedance: 1 kOhms or similar
The RN52 datasheet says you need microphones with sensitivity between –40 and –60dBV so that -64dB is about right. Better to have a little head room because the MIC Bias is probably around 2.7V or less.
Another critical note in the data sheet is that MIC_BIAS requires a minimum load to maintain
regulation and MIC_BIAS maintains regulation within 0.199 and 1.229 mA. So watch the current draw and thus the R1 size and MIC Impedance. High impedance MIC and you’ll probably not draw enough current to stabilize the MIC Bias regulator. Too small R1 + MIC Impedance and you’ll overload the MIC Bias pin. So R1 = 1K is probably pushing it as draw is going to be 1.35ma, but it seems to work OK.
Also critical is quality of the power you feed to the RN52. the delta voltage the MIC produces is about 10 or 20mv, so consider that if you have any power supply noise even close to that range it’s probably going to get into the MIC Bias and thus into the MIC inputs.
Note that the RN52 datasheet talks about the MIC pre-amp in the RN52 having adjustable gain and line and MIC mode. It does, you just can’t get to it. Looks like the RN52 uses a similar base bluetooth module to the BlueGiga WT-32. In fact the RN52 datasheet looks like some of it was cribbed from the WT-32 datasheet or both datasheets started with the same source.
I asked Microchip about the inability adjust the MIC gains even though the datasheet implies it’s there. They said it’s coming. Firmware v1.16 should expose that, but no word when v1.16 will be made available.
Actually the BlueGiga WT-32 has a better microphone circuit design that is actually differential, ie MIC- and MIC+ are opposites. the RN52 example is one sided with one side tied to MIC_BIAS. I did the RN52 on my first board, but will probably move to the WT-32 way on subsequent board.
Bah update, looks like I found a bug in the RN-52 firmware! the first time you turn on the MIC (ie the first time the RN52 enabled the MIC_BIAS output) it comes up at around 2.5V (which is ok even with a 3V mic). However…. any future times that MIC_BIAS is enabled, it only comes up around 1.1V, way not enough for a 3V mic. If you power-cycle the RN52, then again the first MIC_BIAS enable is back at 2.5V, but again 2-n is 1.1V 🙁
Ok, here’s a fix for the busted MIC_BIAS level and it’s got the added benefit of a bit higher bias voltage than the native RN52 puts out and this provides a differential signal to the RN52 mic inputs rather than the single ended example on the evaluation board.
This circuit is similar to what is in the Bluegiga WT32 manual. Be very aware of the capacitors on the output side of the LDO regulator. Don’t skimp and only put one. Multiple caps in parallel are the best. My example uses a 10uF electrolytic in parallel with a 2uF MLCC. If you hear noise in the MIC input, check the output voltage of the LDO. You want rock solid, no noise output.
btw, a hint for testing this. Get a voice/audio recorder for your android phone that works with bluetooth headsets. Makes it real easy to tweak the circuit, record audio, listen to the result. Here’s what I’m currently using: Bluetooth Voice Recorder