2022-07-08 05:57 AM
I have run into problems trying to get voice data from the MP34DT05-A PDM Microphone on the BlueNRGLP eval board. Specifically, and after spending a fair chunk of time (using the BLE_Sensor_Demo_BlueMSApp demo code as a starting point), it appears the ADC register is not being updated while talking into the PDM mic. I was using the KEIL memory window to monitor ADC memory addresses and was looking at the Downsample and Decimation data output registers, which render 0x00000000 and 0xDA880000 respectively. They never change despite applying sound. This leads me to believe that either the PDM microphone or ADC is not being suitably initialized (or something else...that covers the possibilities).
Anyone have any suggestions how to slay this beast?
Update 07-11-22: Not using Downsample (DS) so that is not of concern. I am using the Decimation Filter (DF). Also learned PDM digital data comes straight from the MP34DT05-A chip and ADC performs decimation (at least I think that's how it works).
Can anyone supply any additional guidance as to why I can't see audio data(yeah I know that sounds strange. I am full of puns today...)? Even something like "Yeah I noticed that ("that" being PDM audio in BLE_Sensor_Demo_BlueMSApp) is not working and it is under evaluation", would be helpful....
Anyone?
Solved! Go to Solution.
2023-09-09 10:18 AM
I believe there is a hardware bug with certain versions of BlueNRGLP eval board. If you solder through a couple of missing resistors (i.e., there is infinite resistance but should be near 0 ohms) near the PDM microphone, then data will likely show up for you. Not a lot of room to do this on the EVAL board.
2023-09-09 10:18 AM
I believe there is a hardware bug with certain versions of BlueNRGLP eval board. If you solder through a couple of missing resistors (i.e., there is infinite resistance but should be near 0 ohms) near the PDM microphone, then data will likely show up for you. Not a lot of room to do this on the EVAL board.
2023-09-09 10:29 AM
Hello @JWill.8
I advise you to check that each and every interface or API you are using is working(use tested exemples to make it easy).
If no problem, test your MP34DT05-A is working or not (using the ADC of any other board).
If no problem, then share your code her so that our community members can maybe give you more help.
Best regards.
II
2023-09-09 10:50 AM
Hello Issamos. Thanks for replying. This was quite a while ago and I remember investing quite a bit of time and disclosure in analyzing the steps but did not get a ton of feedback from the community at that time.
The code I was using was the demo code that comes with the BlueNRGLP (v2), which does not appear to "work out of the box" for V2 boards. The hardware bug seems like the proper explanation and solution, albeit I not an easy workaround on the V2 board.
Regards
JWill.8