PDM Mic data to Speaker not Working

Hi,

I am working on a project involving a PDM microphone and an I2S speaker.

Hardware:

  • PDM microphone: MP34DT01-M

  • MCU: nRF54L15

  • Speaker amplifier: I2S input

  • PDM microphone is connected to the nRF54L15 PDM interface.

  • Speaker amplifier is connected to the nRF54L15 I2S TX interface.

I am able to successfully read audio data from the PDM microphone using the Zephyr dmic_read() API. The data returned by dmic_read() is in PCM format.

However, I am facing an issue when trying to play this PCM data through the I2S speaker.

What I have tested

  1. I configured the PDM microphone and can successfully capture data using dmic_read().

  2. I wrote the PCM data returned by dmic_read() to an external flash file.

  3. I played the recorded RAW PCM file separately, but I hear only noise.

  4. I also tried sending the PCM data directly from the PDM microphone to the I2S TX interface.

  5. In both cases, the speaker produces only noise instead of the expected microphone audio.

The I2S interface is configured with the required:

  • BCLK / SCK

  • LRCLK / FCLK

  • SDOUT / DATA

What I need help with

Could you please review my source code and help identify the problem?

In particular, I would like to verify:

  • Whether the PCM data produced by dmic_read() is actually valid audio.

  • Whether the PDM microphone configuration is correct.

  • Whether the PCM sample format, sample rate, bit depth, and channel configuration are correct.

  • Whether the I2S TX configuration matches the PCM data format.

  • Whether there is an issue with signed/unsigned PCM data, sample width, channel format, or byte ordering.

  • Whether the I2S clock configuration is correct for the speaker amplifier.

  • Whether the DMA/buffer configuration could be causing corrupted audio.

  • Why the RAW PCM file contains noise even when played separately.

  • Why the direct PDM-microphone-to-I2S path also produces only noise.

I have provided my PDM microphone driver, I2S speaker driver, device-tree overlay, prj.conf, and the captured RAW PCM file in attachment .8475.Mic_POC.zip

Please analyze the complete code and identify the exact issue, if possible, and provide the required code/configuration changes to get clean microphone audio through the speaker.

  • What I²S codec is your output? Most of them require configuration on a secondary interface like TWI before they bother turning any output on.

  • There was a typo in my previous response.

    We are using an I²S-based audio amplifier, PN: MAX98357, not an audio codec.

    The MAX98357 does not require any I²C/TWI configuration to enable the amplifier output. It receives the audio data directly through the I²S interface.

    So there is no secondary control interface or codec initialization involved.

    Also, for your information, we are using P1.03 as the amplifier LRCLK/WS signal.

    On the nRF54L15 DK, we configured this routing by:

    • Mounting R33
    • Mounting R34
    • Leaving R21 and R22 DNP (Do Not Populate)

    So, could you please review the issue we are facing and guide us on how to resolve it?

  • Hi Nikul,

    Please attach the PDM file raw. It's not in the .zip file.
    Please note that you can use software on PC to play it. For example Audacity (version <4) 
    Do File->Import... -> Raw data and select the configuration that you used . 
    I did the test with the \zephyr\samples\drivers\audio\dmic sample and it seems to works fine after I exported the dmic_read() data out and import it to Audacity (need at least maybe 0.5 sec of recording to be able to hear something useful) 

  • I have also attached the PDM microphone RAW audio file for your reference.

    I tried playing this RAW file using Audacity, but it contains only noise and I cannot hear the expected microphone audio.

    I also tested the standard Zephyr DMIC example:

    zephyr/samples/drivers/audio/dmic

    The example successfully calls the dmic_read() API and prints the first few bytes of the returned buffer, but it does not include any logic to save the captured PCM data to a file.

    Could you please review the attached RAW file and help us determine whether the captured data looks like valid PCM audio?

    Our intended configuration is 16-bit, mono, 16 kHz PCM.
    The complete audio path is:
    MP34DT01-M PDM microphone → nRF54L15 DMIC → `dmic_read()` → PCM buffer → external flash RAW file → I²S → MAX98357 → speaker

    Since the RAW file itself produces noise when played independently, we would like to first confirm that the data returned by dmic_read() is valid PCM audio before continuing with the I²S speaker debugging.

    00000000  BD 03 B4 03 B4 03 B4 03 B1 03 AB 03 AE 03 AB 03  ................
    00000010  A5 03 A5 03 9F 03 9F 03 9C 03 9C 03 99 03 96 03  ................
    00000020  93 03 90 03 8A 03 8D 03 8A 03 87 03 84 03 84 03  ................
    00000030  84 03 7E 03 7E 03 7E 03 7E 03 78 03 75 03 78 03  ..~.~.~.~.x.u.x.
    00000040  6F 03 6C 03 72 03 6C 03 66 03 66 03 60 03 66 03  o.l.r.l.f.f.`.f.
    00000050  5D 03 5D 03 5A 03 57 03 54 03 54 03 4E 03 51 03  ].].Z.W.T.T.N.Q.
    00000060  4B 03 4B 03 48 03 42 03 42 03 42 03 3C 03 3C 03  K.K.H.B.B.B.<.<.
    00000070  39 03 33 03 3C 03 36 03 2D 03 2A 03 2D 03 2A 03  9.3.<.6.-.*.-.*.
    00000080  2D 03 27 03 27 03 24 03 24 03 24 03 1E 03 1E 03  -.'.'.$.$.$.....
    00000090  1B 03 18 03 18 03 12 03 12 03 12 03 12 03 09 03  ................
    000000A0  09 03 0C 03 06 03 0C 03 06 03 06 03 03 03 FD 02  ................
    000000B0  FD 02 FD 02 F4 02 FA 02 F4 02 F1 02 EE 02 EB 02  ................
    000000C0  EB 02 E8 02 E8 02 E8 02 E5 02 E2 02 E2 02 DF 02  ................
    000000D0  DF 02 D9 02 D9 02 D6 02 DC 02 D3 02 D6 02 D3 02  ................
    000000E0  CA 02 CD 02 CA 02 C4 02 C7 02 C4 02 C1 02 C1 02  ................
    000000F0  BB 02 B8 02 B8 02 B5 02 B8 02 B5 02 B5 02 B2 02  ................
    00000100  B2 02 AF 02 B2 02 AF 02 A6 02 A9 02 A9 02 A6 02  ................
    00000110  A6 02 A3 02 A3 02 9D 02 9D 02 9A 02 97 02 9A 02  ................
    00000120  97 02 94 02 94 02 8E 02 8E 02 8E 02 85 02 85 02  ................
    00000130  85 02 7F 02 82 02 7F 02 82 02 82 02 7C 02 7C 02  ..........|.|.
    00000140  79 02 79 02 79 02 79 02 76 02 70 02 70 02 70 02  y.y.y.y.v.p.p.p.
    00000150  70 02 70 02 6D 02 67 02 6A 02 6A 02 64 02 67 02  p.p.m.g.j.j.d.g.
    00000160  61 02 64 02 61 02 61 02 5B 02 5B 02 5B 02 5B 02  a.d.a.a.[.[.[.[.
    00000170  58 02 5B 02 55 02 52 02 52 02 55 02 4F 02 4F 02  X.[.U.R.R.U.O.O.
    00000180  4C 02 46 02 46 02 49 02 43 02 43 02 43 02 40 02  L.F.F.I.C.C.C.@.
    00000190  3D 02 3D 02 3D 02 37 02 37 02 3A 02 3A 02 34 02  =.=.=.7.7.:.:.4.
    000001A0  3A 02 2E 02 31 02 2E 02 2B 02 2B 02 2B 02 28 02  :...1...+.+.+.(.
    000001B0  2B 02 25 02 1F 02 25 02 22 02 22 02 1F 02 22 02  +.%...%."."...".
    000001C0  1F 02 1C 02 1F 02 19 02 19 02 16 02 16 02 13 02  ................
    000001D0  19 02 0D 02 13 02 0D 02 0D 02 0D 02 0D 02 07 02  ................
    000001E0  01 02 07 02 04 02 FE 01 FB 01 FB 01 FE 01 FB 01  ................
    000001F0  F8 01 FB 01 FB 01 F8 01 F8 01 F5 01 F2 01 F5 01  ................
    00000200  EF 01 EF 01 EC 01 EC 01 EF 01 E9 01 EC 01 E6 01  ................
    00000210  E9 01 E6 01 E3 01 E3 01 E0 01 E0 01 E0 01 DA 01  ................
    00000220  DD 01 DA 01 DA 01 DA 01 D4 01 DA 01 D1 01 D1 01  ................
    00000230  D7 01 D1 01 D1 01 D1 01 D1 01 D1 01 CE 01 CE 01  ................
    00000240  CE 01 CB 01 CB 01 CB 01 C8 01 C8 01 C8 01 C5 01  ................
    00000250  BF 01 C2 01 BF 01 C5 01 BF 01 C2 01 BF 01 BC 01  ................
    00000260  BF 01 B6 01 B9 01 B9 01 BC 01 B6 01 B0 01 B6 01  ................
    00000270  B0 01 B0 01 B0 01 AA 01 B0 01 B0 01 AD 01 B0 01  ................
    00000280  AD 01 AA 01 AA 01 A7 01 A7 01 A7 01 A4 01 A7 01  ................
    00000290  A7 01 A1 01 A1 01 A1 01 9E 01 9B 01 9E 01 98 01  ................
    000002A0  95 01 98 01 92 01 95 01 95 01 95 01 92 01 8F 01  ................
    000002B0  8C 01 8C 01 89 01 89 01 89 01 89 01 86 01 86 01  ................
    000002C0  89 01 80 01 83 01 83 01 7D 01 83 01 83 01 7D 01  ........}.....}.
    000002D0  80 01 80 01 7D 01 7D 01 80 01 7A 01 7A 01 7A 01  ....}.}...z.z.z.
    000002E0  7A 01 77 01 74 01 77 01 71 01 6E 01 71 01 6B 01  z.w.t.w.q.n.q.k.
    000002F0  6B 01 68 01 68 01 6B 01 6B 01 6B 01 6E 01 6B 01  k.h.h.k.k.k.n.k.
    00000300  6E 01 68 01 6B 01 6B 01 65 01 68 01 6B 01 62 01  n.h.k.k.e.h.k.b.
    00000310  62 01 62 01 62 01 62 01 5C 01 5F 01 59 01 5C 01  b.b.b.b.\._.Y.\.
    00000320  59 01 59 01 59 01 56 01 5F 01 53 01 59 01 59 01  Y.Y.Y.V._.S.Y.Y.
    00000330  56 01 50 01 53 01 53 01 50 01 53 01 50 01 50 01  V.P.S.S.P.S.P.P.
    00000340  4D 01 4A 01 4D 01 47 01 4A 01 47 01 4A 01 41 01  M.J.M.G.J.G.J.A.
    00000350  47 01 47 01 4A 01 47 01 44 01 44 01 3E 01 41 01  G.G.J.G.D.D.>.A.
    00000360  44 01 41 01 41 01 44 01 3E 01 41 01 41 01 3E 01  D.A.A.D.>.A.A.>.
    00000370  3E 01 3E 01 3E 01 41 01 3B 01 38 01 3B 01 3B 01  >.>.>.A.;.8.;.;.
    00000380  3B 01 35 01 38 01 38 01 38 01 35 01 35 01 32 01  ;.5.8.8.8.5.5.2.
    00000390  32 01 32 01 2C 01 2F 01 2F 01 2F 01 29 01 2C 01  2.2.,./././.).,.
    000003A0  2F 01 26 01 26 01 26 01 29 01 26 01 26 01 20 01  /.&.&.&.).&.&. .
    000003B0  26 01 23 01 23 01 26 01 20 01 23 01 20 01 20 01  &.#.#.&. .#. . .
    000003C0  1D 01 17 01 1D 01 17 01 1D 01 1A 01 1A 01 17 01  ................
    000003D0  1A 01 17 01 14 01 11 01 14 01 14 01 0E 01 11 01  ................
    000003E0  11 01 14 01 0B 01 0E 01 11 01 14 01 11 01 0E 01  ................
    000003F0  0B 01 0E 01 0B 01 0B 01 0B 01 0B 01 0B 01 08 01  ................
    00000400  02 01 02 01 02 01 05 01 02 01 FF 00 02 01 05 01  ................
    00000410  05 01 02 01 02 01 FF 00 FF 00 FC 00 FC 00 F9 00  ................
    00000420  FC 00 FC 00 F9 00 FC 00 F6 00 F6 00 F9 00 F3 00  ................
    00000430  F6 00 F6 00 F6 00 F6 00 F9 00 F3 00 F6 00 F6 00  ................
    00000440  F9 00 F6 00 F0 00 F3 00 F0 00 F6 00 F0 00 F3 00  ................
    00000450  F0 00 F6 00 F0 00 ED 00 F0 00 F0 00 ED 00 E7 00  ................
    00000460  EA 00 EA 00 EA 00 ED 00 EA 00 EA 00 EA 00 E7 00  ................
    00000470  E7 00 EA 00 E4 00 E1 00 E4 00 E4 00 E4 00 E4 00  ................
    00000480  E4 00 E4 00 E4 00 E1 00 DE 00 DE 00 DE 00 DB 00  ................
    00000490  DE 00 D8 00 D8 00 D8 00 DE 00 D8 00 DE 00 D8 00  ................
    000004A0  DB 00 DB 00 D8 00 DE 00 D8 00 D8 00 DB 00 D8 00  ................
    000004B0  DB 00 D5 00 D8 00 D5 00 D5 00 D5 00 D2 00 D2 00  ................
    000004C0  D5 00 D2 00 D2 00 CF 00 D8 00 D2 00 CC 00 D2 00  ................
    000004D0  CC 00 D2 00 CF 00 CC 00 CC 00 C9 00 C9 00 C9 00  ................
    000004E0  C6 00 C3 00 C3 00 CC 00 C3 00 C6 00 C6 00 C0 00  ................
    000004F0  C0 00 C0 00 C6 00 C6 00 C9 00 C0 00 C0 00 C0 00  ................
    00000500  C3 00 C0 00 BD 00 BD 00 BD 00 BD 00 C3 00 BD 00  ................
    00000510  BD 00 BD 00 BA 00 C0 00 BD 00 BD 00 B7 00 C0 00  ................
    00000520  BA 00 BA 00 BA 00 BD 00 BA 00 B7 00 B4 00 BA 00  ................
    00000530  B4 00 B1 00 B1 00 B4 00 B7 00 B1 00 B4 00 B1 00  ................
    00000540  B1 00 AE 00 B4 00 AE 00 AE 00 AE 00 AB 00 B1 00  ................
    00000550  AB 00 AE 00 A5 00 AB 00 AB 00 AE 00 AB 00 AB 00  ................
    00000560  AB 00 AB 00 AE 00 AE 00 A8 00 AB 00 AB 00 A8 00  ................
    00000570  A8 00 A8 00 A5 00 A5 00 A5 00 A8 00 A2 00 A2 00  ................
    00000580  A8 00 A2 00 A5 00 A2 00 A5 00 9F 00 A5 00 9F 00  ................
    00000590  9F 00 9C 00 9C 00 9C 00 99 00 A2 00 9C 00 9C 00  ................
    000005A0  99 00 9C 00 9C 00 99 00 99 00 9C 00 96 00 96 00  ................
    000005B0  93 00 99 00 99 00 96 00 96 00 96 00 93 00 90 00  ................
    000005C0  93 00 93 00 96 00 93 00 96 00 96 00 96 00 93 00  ................
    000005D0  99 00 99 00 96 00 93 00 96 00 99 00 8D 00 90 00  ................
    000005E0  90 00 90 00 90 00 8D 00 90 00 90 00 8A 00 90 00  ................
    000005F0  90 00 8D 00 8A 00 90 00 93 00 8D 00 8D 00 8A 00  ................
    00000600  8A 00 8D 00 90 00 8A 00 8D 00 8A 00 8A 00 8A 00  ................
    00000610  8A 00 87 00 8A 00 87 00 8A 00 87 00 87 00 84 00  ................
    00000620  81 00 87 00 87 00 87 00 87 00 84 00 84 00 87 00  ................
    00000630  81 00 81 00 81 00 84 00 81 00 81 00 84 00 81 00  ................
    00000640  81 00 7B 00 78 00 78 00 7B 00 7B 00 7B 00 7E 00  ..{.x.x.{.{.{.~.
    00000650  7E 00 7E 00 7E 00 75 00 78 00 78 00 78 00 78 00  ~.~.~.u.x.x.x.x.
    00000660  75 00 7B 00 78 00 78 00 75 00 72 00 75 00 78 00  u.{.x.x.u.r.u.x.
    00000670  72 00 78 00 72 00 75 00 72 00 75 00 72 00 6F 00  r.x.r.u.r.u.r.o.
    00000680  72 00 72 00 75 00 6F 00 7B 00 6F 00 72 00 72 00  r.r.u.o.{.o.r.r.
    00000690  72 00 6C 00 6C 00 6C 00 6F 00 6F 00 6F 00 6F 00  r.l.l.l.o.o.o.o.
    000006A0  6F 00 6F 00 6C 00 72 00 6F 00 69 00 69 00 69 00  o.o.l.r.o.i.i.i.
    000006B0  6C 00 6C 00 69 00 6C 00 6C 00 69 00 6C 00 6F 00  l.l.i.l.l.i.l.o.
    000006C0  69 00 69 00 66 00 69 00 69 00 69 00 6C 00 66 00  i.i.f.i.i.i.l.f.
    000006D0  69 00 66 00 69 00 63 00 66 00 63 00 63 00 60 00  i.f.i.c.f.c.c.`.
    000006E0  63 00 66 00 69 00 66 00 63 00 63 00 63 00 63 00  c.f.i.f.c.c.c.c.
    000006F0  5D 00 5D 00 60 00 63 00 63 00 66 00 63 00 63 00  ].].`.c.c.f.c.c.
    00000700  66 00 63 00 63 00 60 00 60 00 63 00 60 00 63 00  f.c.c.`.`.c.`.c.
    00000710  5D 00 5D 00 60 00 60 00 63 00 66 00 63 00 5D 00  ].].`.`.c.f.c.].
    00000720  60 00 5D 00 60 00 63 00 63 00 60 00 60 00 60 00  `.].`.c.c.`.`.`.
    00000730  60 00 5A 00 60 00 60 00 63 00 5A 00 60 00 5A 00  `.Z.`.`.c.Z.`.Z.
    00000740  5D 00 5D 00 57 00 60 00 5A 00 5A 00 60 00 57 00  ].].W.`.Z.Z.`.W.
    00000750  57 00 54 00 5A 00 57 00 5A 00 5A 00 5A 00 5A 00  W.T.Z.W.Z.Z.Z.Z.
    00000760  57 00 57 00 57 00 5A 00 5A 00 54 00 54 00 5A 00  W.W.W.Z.Z.T.T.Z.
    00000770  54 00 57 00 54 00 57 00 57 00 57 00 57 00 54 00  T.W.T.W.W.W.W.T.
    00000780  57 00 57 00 54 00 54 00 54 00 4E 00 54 00 51 00  W.W.T.T.T.N.T.Q.
    00000790  51 00 4E 00 51 00 4B 00 51 00 51 00 51 00 51 00  Q.N.Q.K.Q.Q.Q.Q.
    000007A0  51 00 4E 00 4E 00 4E 00 51 00 51 00 4E 00 4E 00  Q.N.N.N.Q.Q.N.N.
    000007B0  51 00 4E 00 4E 00 4E 00 4B 00 4E 00 4E 00 4E 00  Q.N.N.N.K.N.N.N.
    000007C0  4E 00 4E 00 48 00 4E 00 4E 00 4E 00 4E 00 4E 00  N.N.H.N.N.N.N.N.
    000007D0  51 00 4B 00 4E 00 4E 00 51 00 4E 00 4B 00 4B 00  Q.K.N.N.Q.N.K.K.
    000007E0  48 00 4B 00 48 00 4E 00 48 00 4E 00 45 00 4B 00  H.K.H.N.H.N.E.K.
    000007F0  4B 00 48 00 45 00 48 00 4B 00 4B 00 4B 00 3F 00  K.H.E.H.K.K.K.?.
    00000800  45 00 45 00 45 00 42 00 42 00 45 00 45 00 45 00  E.E.E.B.B.E.E.E.
    00000810  45 00 45 00 48 00 42 00 42 00 45 00 45 00 42 00  E.E.H.B.B.E.E.B.
    00000820  42 00 3F 00 3F 00 3F 00 3F 00 42 00 3F 00 3F 00  B.?.?.?.?.B.?.?.
    00000830  42 00 3F 00 42 00 42 00 3C 00 42 00 3F 00 42 00  B.?.B.B.<.B.?.B.
    00000840  42 00 42 00 45 00 3C 00 42 00 42 00 42 00 3F 00  B.B.E.<.B.B.B.?.
    00000850  3F 00 42 00 42 00 45 00 42 00 42 00 3F 00 42 00  ?.B.B.E.B.B.?.B.
    00000860  42 00 42 00 42 00 3C 00 3F 00 3F 00 3C 00 3C 00  B.B.B.<.?.?.<.<.
    00000870  3F 00 3F 00 42 00 3F 00 3F 00 3C 00 3F 00 3C 00  ?.?.B.?.?.<.?.<.
    00000880  3C 00 42 00 3F 00 3F 00 3F 00 3C 00 3F 00 39 00  <.B.?.?.?.<.?.9.
    00000890  3C 00 3F 00 39 00 3F 00 3F 00 3C 00 3F 00 3C 00  <.?.9.?.?.<.?.<.
    000008A0  3C 00 3C 00 3C 00 3F 00 42 00 3C 00 3C 00 39 00  <.<.<.?.B.<.<.9.
    000008B0  3F 00 39 00 3C 00 3C 00 36 00 3C 00 3C 00 39 00  ?.9.<.<.6.<.<.9.
    000008C0  39 00 39 00 39 00 39 00 39 00 39 00 39 00 39 00  9.9.9.9.9.9.9.9.
    000008D0  39 00 36 00 36 00 39 00 36 00 3C 00 39 00 39 00  9.6.6.9.6.<.9.9.
    000008E0  36 00 30 00 39 00 33 00 39 00 33 00 36 00 30 00  6.0.9.3.9.3.6.0.
    000008F0  36 00 33 00 39 00 33 00 39 00 36 00 36 00 33 00  6.3.9.3.9.6.6.3.
    00000900  36 00 39 00 33 00 30 00 33 00 33 00 36 00 36 00  6.9.3.0.3.3.6.6.
    00000910  33 00 30 00 33 00 36 00 30 00 30 00 33 00 30 00  3.0.3.6.0.0.3.0.
    00000920  30 00 30 00 33 00 33 00 33 00 33 00 33 00 33 00  0.0.3.3.3.3.3.3.
    00000930  33 00 33 00 33 00 36 00 33 00 36 00 33 00 2D 00  3.3.3.6.3.6.3.-.
    00000940  30 00 33 00 30 00 30 00 33 00 33 00 33 00 30 00  0.3.0.0.3.3.3.0.
    00000950  2D 00 30 00 33 00 30 00 2D 00 36 00 30 00 30 00  -.0.3.0.-.6.0.0.
    00000960  30 00 33 00 33 00 33 00 33 00 2D 00 30 00 2D 00  0.3.3.3.3.-.0.-.
    00000970  30 00 2D 00 2D 00 30 00 2D 00 2D 00 2D 00 2D 00  0.-.-.0.-.-.-.-.
    00000980  2D 00 33 00 27 00 30 00 2A 00 30 00 30 00 30 00  -.3.'.0.*.0.0.0.
    00000990  30 00 2D 00 30 00 30 00 30 00 2A 00 30 00 2A 00  0.-.0.0.0.*.0.*.
    000009A0  2A 00 2A 00 2A 00 2D 00 2D 00 30 00 2D 00 2A 00  *.*.*.-.-.0.-.*.
    000009B0  2D 00 2A 00 2D 00 2D 00 30 00 2D 00 2D 00 30 00  -.*.-.-.0.-.-.0.
    000009C0  2D 00 2D 00 2A 00 2D 00 2D 00 2D 00 2D 00 27 00  -.-.*.-.-.-.-.'.
    000009D0  2A 00 27 00 24 00 2A 00 27 00 24 00 27 00 27 00  *.'.$.*.'.$.'.'.
    000009E0  2A 00 24 00 2A 00 27 00 2D 00 27 00 27 00 21 00  *.$.*.'.-.'.'.!.
    000009F0  24 00 21 00 24 00 27 00 27 00 2A 00 21 00 2A 00  $.!.$.'.'.*.!.*.
    00000A00  2D 00 27 00 27 00 2A 00 27 00 2A 00 24 00 27 00  -.'.'.*.'.*.$.'.
    00000A10  27 00 24 00 27 00 24 00 27 00 24 00 27 00 27 00  '.$.'.$.'.$.'.'.
    00000A20  24 00 27 00 27 00 24 00 24 00 21 00 27 00 27 00  $.'.'.$.$.!.'.'.
    00000A30  27 00 27 00 27 00 27 00 24 00 24 00 27 00 2A 00  '.'.'.'.$.$.'.*.
    00000A40  2A 00 2A 00 24 00 27 00 21 00 24 00 27 00 24 00  *.*.$.'.!.$.'.$.
    00000A50  21 00 21 00 24 00 21 00 24 00 24 00 24 00 24 00  !.!.$.!.$.$.$.$.
    00000A60  27 00 24 00 24 00 24 00 27 00 24 00 27 00 24 00  '.$.$.$.'.$.'.$.
    00000A70  24 00 24 00 27 00 24 00 24 00 24 00 24 00 24 00  $.$.'.$.$.$.$.$.
    00000A80  21 00 21 00 21 00 21 00 21 00 1E 00 1E 00 21 00  !.!.!.!.!.....!.
    00000A90  1B 00 24 00 1E 00 24 00 21 00 24 00 1E 00 21 00  ..$...$.!.$...!.
    00000AA0  24 00 21 00 21 00 21 00 21 00 21 00 1E 00 1E 00  $.!.!.!.!.!.....
    00000AB0  1E 00 21 00 21 00 1E 00 1E 00 1E 00 1E 00 1B 00  ..!.!...........
    00000AC0  1E 00 21 00 24 00 24 00 1E 00 1E 00 18 00 1E 00  ..!.$.$.........
    00000AD0  1B 00 1B 00 1E 00 1E 00 18 00 1B 00 1B 00 1E 00  ................
    00000AE0  1B 00 21 00 1B 00 1E 00 18 00 1B 00 1B 00 1B 00  ..!.............
    00000AF0  1E 00 1E 00 1B 00 1B 00 18 00 1B 00 18 00 18 00  ................
    00000B00  18 00 12 00 18 00 15 00 12 00 18 00 18 00 15 00  ................
    00000B10  15 00 12 00 18 00 15 00 12 00 15 00 12 00 15 00  ................
    00000B20  12 00 18 00 18 00 15 00 15 00 15 00 12 00 15 00  ................
    00000B30  18 00 12 00 12 00 15 00 18 00 15 00 18 00 18 00  ................
    00000B40  12 00 15 00 12 00 12 00 0F 00 0F 00 0F 00 12 00  ................
    00000B50  0F 00 0F 00 12 00 0F 00 0F 00 15 00 12 00 15 00  ................
    00000B60  12 00 18 00 12 00 15 00 12 00 0F 00 0F 00 12 00  ................
    00000B70  12 00 0F 00 0F 00 12 00 0F 00 0F 00 0F 00 0F 00  ................
    00000B80  12 00 0F 00 12 00 0F 00 0F 00 12 00 0F 00 0F 00  ................
    00000B90  0F 00 12 00 12 00 12 00 12 00 12 00 0F 00 0F 00  ................
    00000BA0  0C 00 0F 00 12 00 0C 00 0F 00 0F 00 0C 00 0F 00  ................
    00000BB0  0F 00 12 00 0F 00 09 00 0C 00 0F 00 0C 00 0F 00  ................
    00000BC0  0F 00 0C 00 0C 00 09 00 0F 00 09 00 0F 00 0F 00  ................
    00000BD0  0F 00 12 00 0F 00 12 00 0F 00 12 00 12 00 0F 00  ................
    00000BE0  0F 00 0C 00 0F 00 0F 00 0C 00 0C 00 0C 00 0F 00  ................
    00000BF0  0F 00 12 00 0F 00 12 00 0F 00 0F 00 0F 00 0C 00  ................
    00000C00  0C 00 12 00 0F 00 0F 00 0F 00 0F 00 0F 00 0F 00  ................
    00000C10  0C 00 0F 00 0C 00 0C 00 0F 00 0C 00 0F 00 0F 00  ................
    00000C20  0F 00 0F 00 0F 00 12 00 0F 00 12 00 12 00 0F 00  ................
    00000C30  0F 00 12 00 0C 00 0F 00 0C 00 0C 00 0C 00 0C 00  ................
    00000C40  0C 00 0C 00 0C 00 09 00 06 00 09 00 09 00 09 00  ................
    00000C50  09 00 09 00 09 00 09 00 09 00 09 00 09 00 09 00  ................
    00000C60  09 00 09 00 09 00 06 00 09 00 06 00 03 00 06 00  ................
    00000C70  09 00 09 00 09 00 06 00 09 00 09 00 09 00 0C 00  ................
    00000C80  09 00 06 00 06 00 06 00 09 00 09 00 09 00 09 00  ................
    00000C90  06 00 09 00 09 00 09 00 09 00 09 00 0C 00 0C 00  ................
    00000CA0  09 00 09 00 09 00 09 00 0C 00 09 00 0C 00 09 00  ................
    00000CB0  0C 00 0C 00 09 00 09 00 0C 00 0F 00 0C 00 0C 00  ................
    00000CC0  0C 00 09 00 0C 00 0C 00 09 00 0C 00 09 00 0C 00  ................
    00000CD0  09 00 09 00 0F 00 09 00 09 00 0C 00 0C 00 09 00  ................
    00000CE0  09 00 0C 00 09 00 0C 00 09 00 0C 00 0F 00 0C 00  ................
    00000CF0  09 00 0F 00 09 00 09 00 09 00 0C 00 06 00 0C 00  ................
    

  • below is zephyr/samples/drivers/audio/dmic logs:


    *** Using Zephyr OS v4.4.0-bf801e4e3d19 ***
    [00:00:00.002,058] <inf> dmic_sample: DMIC sample
    [00:00:00.002,065] <inf> dmic_sample: PCM output rate: 16000, channels: 1
    Live Mic Amplitude Output: 0
    [00:00:00.101,783] <inf> dmic_sample: 0 - got buffer 0x20001fd0 of 3200 bytes
    Live Mic Amplitude Output: -14564
    [00:00:00.201,361] <inf> dmic_sample: 1 - got buffer 0x200038d0 of 3200 bytes
    Live Mic Amplitude Output: -9854
    [00:00:00.300,957] <inf> dmic_sample: 2 - got buffer 0x200051d0 of 3200 bytes
    Live Mic Amplitude Output: -6667
    [00:00:00.400,550] <inf> dmic_sample: 3 - got buffer 0x20001fd0 of 3200 bytes
    Live Mic Amplitude Output: -4518
    [00:00:00.500,148] <inf> dmic_sample: 4 - got buffer 0x200038d0 of 3200 bytes
    Live Mic Amplitude Output: -3059
    [00:00:00.599,773] <inf> dmic_sample: 5 - got buffer 0x200051d0 of 3200 bytes
    Live Mic Amplitude Output: -2002
    [00:00:00.699,376] <inf> dmic_sample: 6 - got buffer 0x20001fd0 of 3200 bytes
    Live Mic Amplitude Output: -517
    [00:00:00.798,984] <inf> dmic_sample: 7 - got buffer 0x200038d0 of 3200 bytes
    [00:00:00.798,996] <inf> dmic_sample: PCM output rate: 16000, channels: 2
    Live Mic Amplitude Output: 0
    [00:00:00.898,718] <inf> dmic_sample: 0 - got buffer 0x20001fd0 of 6400 bytes
    Live Mic Amplitude Output: -4316
    [00:00:00.998,351] <inf> dmic_sample: 1 - got buffer 0x200051d0 of 6400 bytes
    Live Mic Amplitude Output: -5451
    [00:00:01.097,999] <inf> dmic_sample: 2 - got buffer 0x200038d0 of 6400 bytes
    Live Mic Amplitude Output: -5090
    [00:00:01.197,625] <inf> dmic_sample: 3 - got buffer 0x20001fd0 of 6400 bytes
    Live Mic Amplitude Output: -4219
    [00:00:01.297,268] <inf> dmic_sample: 4 - got buffer 0x200051d0 of 6400 bytes
    Live Mic Amplitude Output: -3440
    [00:00:01.396,894] <inf> dmic_sample: 5 - got buffer 0x200038d0 of 6400 bytes
    Live Mic Amplitude Output: -2739
    [00:00:01.496,518] <inf> dmic_sample: 6 - got buffer 0x20001fd0 of 6400 bytes
    Live Mic Amplitude Output: -2146
    [00:00:01.596,137] <inf> dmic_sample: 7 - got buffer 0x200051d0 of 6400 bytes
    [00:00:01.596,149] <inf> dmic_sample: Exiting

Related