Post Go back to editing

Add multiple pdm mic

Category: Software
Product Number: ADAU1467
Software Version: Version 4.7. Build 0, Rev 1831 4/5/2022

Hi,

i am working on EVAL-ADAU1467Z evaluation board. i need to connect multiple PDM mic. i connected single mic and it is working properly. can you tell me the way how i can configure multiple PDM mic.

Thank you

  • Hello harishsharma,

    Up to four PDM microphones can be connected as an audio inputs. Each pair of microphones can share a single data line(a GPIO pin for two mics); therefore, using four PDM microphones requires two GPIO pins. Any multipurpose pin can be used as a microphone data input, with up to two microphones connected to each pin. This configuration is set up using the corresponding MPx_MODE and DMIC_CTRLx registers. A bit clock pin from one of the serial input clock domains (BCLK_INx) or one of the serial output clock domains (BCLK_ OUTx) must be a master clock source, and it's output signal must be connected to the PDM microphones to provide them with a clock.

    For MPx and DMIC registers , Please refer the attached screenshots.

    In this SS , You can choose any two GPIO's for four mic (one GPIO for two mic data) and you can choose the master CLK from any of the serial input or output BCLKs .

    In this SS , Please enable the respective GPIO pins as a multipurpose by clicking the drop down menu that I circled .

    As you are using ADAU1467Z board,  " If you Choose LRCLK_IN3 and LRCLK_IN0 in the Eval board then their respective MP pins are MP10 and MP13". So each MP pin will carry two mic data, So you can use two MP pins for Four PDM mics.

    For more info, kindly refer page no 77 from the datasheet.

    Kindly reply if you need any clarification.

    Regards,

    Harish

  • Hello Harishgowtham,

    i connected pdm mic as

    clk - BCLK_IN3

    Dat - MP9

    3V - 3V3(Max rating is 3.6 V)

    GND-  GND

    SEL - GND

    and another pdm mic on same connection. that mean i am using MP9 as data pin for both mic and BCLK_IN3 as CLK for both mic. is it right way to connect two pdm mic. when i connect single mic with these pins it works properly.

    Thank you

  • Hello harishsharma,

    The connection seems okay. It is the correct way of doing it.

    when i connect single mic with these pins it works properly.

    Connecting both the mics didn't work for you? If then, could you please tell how did you connect or send a picture of your setup?

    Please describe your issue in detail and what exactly didn't work and where you are up to. It would help us to understand your end and suggest you a solution.

    Regards,

    Harish

  • Hello Harishgowtham,

    i connected two pdm mic as shown in fig. when i connect two mic. there is only noise.

    when i disconnect one mic then it works properly.

  • Hello harishsharma,

    Please try to shorten the length of the wire and give a test to see whether it solves or improves a bit. Try to increase the drive strength of the pin that is sending out the PDM clock.

    Verify that the left and right channel pins on the mic are properly set and we recommend to use a ribbon cable with a ground run on every other conductor. That will help for better signal integrity.

    Then you can put a resistor in series to provide some damping. Then some on the data lines coming back. Very small values like 10 ohms would be a good start.
     
    Then the other thing is how high of a sampling rate are you trying to run the mics? Going to a lower sampling rate will help a lot if you must have a long cable to the mics.
    Regards,
    Harish
     
  • Hello Harishgowtham,

    i reduced wire length to approx 6 inch and connected 10k pull up with clock pin. issue is still there. is there anything that  i am missing. when i remove one mic it works properly.

    Thank you

  • Hello harishsharma,

    Sorry for the delay .

    Pull up resistors on clock lines is usually not a good idea unless there is an open drain driver which is for something like I2C CLK ,Data line. So please try removing those resistors.

    If one mic works fine then you need to carefully check that one mic is set to output on the left channel and the other on the right channel. There should be a pin on the microphones that has to be tied low on one and high on the other.
    If they are both tied to the same channel then they are trying to drive the same edge of the data. One channel is the rising edge and one is the falling edge of the SDATA. Rising edge refers to the rising edge of the clock and the falling edge refers to falling edge of the clock. The data may be high or low for that edge.
    If you have an oscilloscope , Could you please send a scope shot of the PDM CLK and DATA by probing the CLK pin (BCLK_IN3) and data pin (gpio 9) from your Eval board ?
    Regards,
    Harish
  • Hello Harishgowtham,

    now both mic are working properly. issue solved. for both mic, channel was on the same edge that's why it was not working.

    Thank you