How to connect mic

I want to connect the microphone INMP441 MEMS-I2S to the ESP8266. But I cannot find any description how to do that. Please send me a simple PIN-lay-out (for dummies), so:
SD to D?
SCK to D?
WS to D?
L/R to GND
Thanks

I’m pretty sure that this microphone isn’t supported by our firmware. Could you please follow the instructions on our homepage? Or send us a link to a page stating that our firmware and database is supporting this microphone.
Please be aware that our project is maintained by volunteers. So we can’t give support for more than those components or sensors mentioned in our instructions or source codes.

The INMP441 MEMS-I2S is not expensive and easy to buy in The Netherlands and it uses the I2S protocol as well.

Nevertheless, I have ordered a ICS-43434 digital microphone and so my question remains the same:

|ICS-43434 |ESP8266 |
|GND |GND|
|VDD |3.3V|
|L/R |GND|
|WS |D?|
|SD |D?|
|SCK |D?|

There is a nice picture in your description how to build the air-rohr showing the connection of the air-rohr and the DHT22 to the ESP8266. It could be helpful when the microphone is added in this picture.

PLEASE READ OUR INSTRUCTIONS!!! (https://sensor.community/en/sensors/dnms/)
It’s not only to read out the microphone chip. There need to be done some calculations to get meaningful dB(A) values. Thats why there is an extra Teensy board in the instructions as the ESP8266 is too slow for this.
So nethertheless the ICS-43434 isn’t connected directly to the ESP8266.

You can do that with an ESP32, but I don’t think it’s possible with an ESP8266.

You can have a look here. There are also schematics for the microphones you mentioned. But I expect it is going to be more complicated compared to following the official guide with the teensy.

I applied INMS441 to ESP8266 D1 Board
I2SI_DATA = GPIO12 = D6
IS2I_BCK = GPIO13 = D7
I2SI_WS/LRCLK = GPIO14 = D5

The library used is #include <I2S.h> in the ESP8266 example.
#include <I2S.h>
#include <ESP8266WiFi.h>

void setup() {
Serial.begin(115200);
WiFi.forceSleepBegin();
delay(500);
i2s_rxtx_begin(true, false); // Enable I2S RX
i2s_set_rate(11025);
delay(1000);

while (1) {
int16_t l, r;
i2s_read_sample(&l, &r, true);
char withScale[256];
sprintf(withScale, “%d %d”, l, r);
Serial.println(withScale);
yield();
}

}
void loop() {

}