M5StickC PLUS microphone buffer value has an offset when compared to M5StickC



  • Hello. I have tried the basic microphone example for M5stickc. They work well and shows on the tft screen. I wanted to print the same wave form using the Arduino serial plotter. Wrote this code to print buffer values.
    ------------ code ---------------
    for(int i = 0; i < bytesread>>1; i++) {
    Serial.printf("%d\n", adcBuffer[i]);
    }
    ------------ code ---------------
    I observed that M5StickCPlus values behave differently. Same exact basic microphone code. Only difference is the include file (#include <M5StickC.h> or #include <M5StickCPlus.h>) Between M5stickc and M5stickcplus, I think there is an offset in cplus of a constant of approximately 1650. I am not sure why or if this is normal in cplus stick and if this will affect accuracy in terms of using it to detect a particular pattern of sound waves using FFT or TinyML etc.? Thanks for looking into this issue.
    0_1644107975515_Mic_M5stikC.jpg

    0_1644107993719_Mic_M5stikCPlus.jpg