Sending audio over tcp using Electret Mic MAX4466

I've been using the Particle.io Microphone_PDM library to send audio over tcp to my node server (located on a live domain) with great results, already have some cool ideas for a node app...thankful for that library because without it none of that would be possible...

Regardless, I happen to pick up a "Electret Microphone Amplifier - MAX4466 with Adjustable Gain" with the MEM's mic as well just out of curiosity. So obviously I was curious if this was possible with Electret as well and found the library ADCDMAGen3_RK and got excited!

I installed the library ADCDMAGen3_RK compiled and got an error:

In file included from src/Electret-Microphone-MAX4466.cpp:1:
lib/ADCDMAGen3_RK/src/ADCDMAGen3_RK.h:9:10: fatal error: nrfx_ppi.h: No such file or directory
    9 | #include "nrfx_ppi.h"
      |          ^~~~~~~~~~~~
compilation terminated.
make[2]: *** [../build/target/user/platform-32-msrc/Electret-Microphone-MAX4466.o] Error 1
make[2]: Leaving directory `/firmware/user'

Doing some quick searches this looks like a nrfx driver? Do you think I need to install the module or library? Honestly, I have no idea though, when it comes to C++ I am totally lost. :smiley: I am using the Photon 2.

That library only works with the nRF52840-based devices like the Argon and Boron.

It should be possible implement ADC DMA on the P2/Photon 2 (RTL872x) but I haven't attempted to do it.

It would require a completely different library, or a library that has two completely different implementations in it. That's how Microphone_PDM works; there's one implementation for nRF52 and one for RTL872x in a single library with a single API.

2 Likes

Thanks for the reply back and explanation. Personally, I'm fine with using the PDM mic and Microphone_PDM library...I have plenty of other options to use the Electret Mic MAX4466 in other ways.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.