cancel
Showing results for 
Search instead for 
Did you mean: 

Digital MEMS Microphone Noise Floor

JKing.3
Associate II

Hi,

I'm using an MP23DB02MM digital mic on the CCA02M2 eval board and using the PDM2PCM library. When I have no sound into the microphone the noise floor I see in the data from the PDM2PCM output is around 1,000 counts peak to peak noise. I'm struggling to understand how to use the datasheet SNR and Sensitivity figures to get a noise floor figure. My calcs make the noise I'm getting look really high, even considering there might be a little tiny bit of acoustic noise getting in. What should I expect roughly as a peak to peak noise from this setup? I'm running at 48KHz output PCM rate with decimation of 64.

Thanks

Julian

 

8 REPLIES 8
SimonePradolini
ST Employee

Hello,

I need some further details on your software and hardware setup to replicate it and analyze the possible bug.

MP23DB02MM is not mounted on CCA02M2. Did you plug them by using the STEVAL-MIC005V1? Have you already checked the procedure described in the CCA02M2 user manual to properly setup the board in base of the number of microphones and the MCU used (see chapter 2.3.1.1)?

ST offers ready-to-use examples in X-CUBE-MEMSMIC1 package. Have you already considered to use the Microphone_Streaming example available there? If so, which demo and MCU are you testing?

 

Best regards

Simone

 

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

Hi Simone,

Thank you for your reply.

Yes I'm using a STEVAL-MIC005V1 coupon and have configured the CCA02M2 correctly. I'm using an STM32F429IZ eval board, I2S interface and PDM2PCM library function in STM32CubeIDE. The microphone is basically working OK. If I output the PCM data on the DAC I can see my test signals at the right frequency, it's just the level of noise in the raw PCM data that's concerning.

Are you able to explain how I can use the SNR and Sensitivity figures in the data sheet to get a noise floor figure? What would be a typical MEMS microphone noise floor in dBFS?

Yes I did look at X-CUBE-MEMSMIC1, but it doesn't seem to support the F429 - is that correct?

Thanks

Julian

Federica Bossi
ST Employee

Hi @JKing.3 ,

Do all the 4 STEVAL-MIC005V1 show the same behaviour?

In addition, could you look through the microscope into the microphone hole and checking if you see a damaged membrane?

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

Hi,

I have tried with two microphones and both very similar results. I don't have a microscope I'm afraid.

Are you able to give me an approximate noise floor figure for the microphones, that way I can analyse the PCM data I have captured and see if it is close to the correct value. I don't have enough experience of this devices to know what is typical.

Thanks

Julian

Federica Bossi
ST Employee

Hi @JKing.3 ,

You find the noise floor at page 6 of the datasheet:

FedericaBossi_0-1706016380727.png

 

 

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

Hi Federica,

Yes I have seen that, I've spent some time looking at the datasheet, but my problem is I don't understand how to relate those figures to actual measurable noise in the PCM data as digital peak to peak values.

For example, if I have the microphone isolated from any sound, capture the PCM data as 16 bit signed values and analyse it in a spreadsheet I can get peak to peak and RMS noise figures, but I don't know how to relate this to the specification for the microphone so that I know my system is performing roughly OK.

My figures just seemed quite large, so I'm wondering if I have some problem.

Thanks

Julian

 

Federica Bossi
ST Employee

Hi @JKing.3 ,

What integral noise value do you get (with a 20Hz-20kHz bandpass) and applying the A-weighting filter? For MP23DB02MM you should obtain noise = sensitivity - SNR = -26dBFS -65dB(A) = -91dBFS(A)

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

Hi Federica,

I will need to check my data properly, but I'm sure it's much higher than -91dBFS(A).

Around -90dBFS(A) was the calculation I made from the data sheet, but I thought it seemed like a very low level of noise, but you have confirmed that this is the correct figure - thank you.

Regards

Julian