Good day. I would like to ask for help regarding the code for my project. I am using an I2S MEMS microphone breakout (SPH0645) to my Arduino Nano 33 IoT. Here are my pin configurations LRCL to A2 of the Arduino Nano 33 IoT, DOUT to D4, BCLK to A3. The code that I am using is:

#include <I2S.h>
void setup() {
  while (!Serial) {
  if (!I2S.begin(I2S_PHILIPS_MODE, 8000, 32)) {
    Serial.println("Failed to initialize I2S!");
    while (1); // do nothing
void loop() {
  int sample = I2S.read();
  if (sample) {

However, I still cannot see in the serial monitor if the microphone can detect sound. Also, every time I upload this to my Arduino, I encounter this problem:

appdata/local/arduino15/packages/arduino/tools/arm-none-eabi-gcc/7-2017q4/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/bin/ld.exe: warning: changing start of section .bss by 8 bytes

I followed the steps here. Thank you for your help.



Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.