Demo for esp32 mic recording

Hi there,

In an earlier stage I have created a esp32 standalone voice recorder. That works pretty well
But now I have a clean Raspbian install and cloned this repo https://github.com/matrix-io/matrixio_hal_esp32

The demo’s work fine and all, but my code (unchanged) does record sound on a very low level and the framerate is not correct (too fast)
My esp32 program is recording sound and sends small wav files over mqtt
When reflashing my old image and reflashing the voice it all works perfectly fine again, so no hardware issues.

Is there a demo application available which actually records sounds?
In the mic_energy I see hal::MicrophoneCore mic_core(mics), that is new.
What is it for and should I use that somehow?

Many thanks.

Ok, now I have som very low recordings with a lot of distortion. The speed is correct and I can hear what I have recorded.

This is my snippet:

    // ---------------------------------------------------------------------------
    // SETUP MATRIX VOICE
    // ---------------------------------------------------------------------------
    hal::WishboneBus wb;
    wb.Init();
    //setup mics
    hal::MicrophoneArray mics;    
    mics.Setup(&wb);
    mics.SetSamplingRate(RATE);
    hal::MicrophoneCore mic_core(mics);
    mic_core.Setup(&wb);

Do I have to add other lines to get rid of the distortion and low recording?
RATE = 16000 is my case

Few months later. No one that got payed says anything about using a microphone array with Bluetooth as a wireless microphone. (My matrix is by now in a drawer collecting dust.)

@Romkabouter Good Job! I admire your perseverance.

I have got is working again, set the gain to 5

    hal::MicrophoneCore mic_core(mics);
    mic_core.Setup(&wb);

is not needed, but the buffersize of the Mics was doubled (it is now 4069)

So for every mic.Read, I have to send 2 messages to Snips.
You can marked this as solved :slight_smile:

About the bluetooth, I feel your pain but my focus currently is to create a esp32 standalone audioserver for Snips.
It was working fine, but then there was an update…
Anyway, BLE would be another nice project!