Skip to main content
Visitor II
March 11, 2022
Question

With NUCLEO-F401RE, X-NUCLEO-CCA02M2, and STEVAL-MIC006V1, how do I set it up for 4-mic input?

  • March 11, 2022
  • 3 replies
  • 1014 views

As per UM2631, I closed SB8 and SB10, and I opened SB9 on the CCA02M2.

In the software, I changed AUDIO_IN_CHANNELS to 4 in cca02m2_conf.h.

When AUDIO_IN_CHANNELS is 2, the two channel input works as expected (I get acoustic signals from the first 2 mics of the MIC006V1 board). With AUDIO_IN_CHANNELS set to 4, the device appears as a 4-channel input device, but all 4 channels remain 0 (there are no signals coming from the USB device).

The clock and data signals on all 4 mics look similar, regardless of the AUDIO_IN_CHANNELS value in the code.

Is there some other configuration necessary in the software? I don't see that documented anywhere. As far as I can tell, I have followed the documentation for configuration of the hardware.

Any help would be appreciated.

    This topic has been closed for replies.

    3 replies

    ST Employee
    March 14, 2022

    Hi @Precisely​ ,

    Are you using the X-CUBE-MEMSMIC1 firmware function pack? In the cca02m2_conf_template.h the audio channels are already configured as 4 acquisition channels:

    #define AUDIO_IN_CHANNELS 4

    #define AUDIO_IN_SAMPLING_FREQUENCY 16000

    -Eleon

    PreciselyAuthor
    Visitor II
    March 14, 2022

    I'm building the HP_Microphones_Streaming project from STM32CubeExpansion_MEMSMIC1_v5.6.0 (your link doesn't work, but it appears to be the same version).

    cca02m2_conf_template.h is just a template file. It needs to be edited for specific hardware support, renamed to cca02m2_conf.h, and copied into the project. The HP Microphone Streaming project already had a version of cca02m2_conf.h (for F401RE), with the following:

    #define AUDIO_IN_CHANNELS 2

    #define AUDIO_IN_SAMPLING_FREQUENCY 48000

    I assumed that setting AUDIO_IN_CHANNELS to 4 would have the desired effect, but it does not (even though it looks like the code is set up to automatically configure the I2S and SPI busses to handle 2 channels, each, when AUDIO_IN_CHANNELS > 2).

    I would like to know what I am missing, since I would expect that working sample code exists for this 4-mic configuration.

    Ultimately, I would like to be able to stream 6-8 channels at 48 kHz, but I have not yet determined precisely which STM32 device I would need for that.

    Visitor II
    May 30, 2022

    Hello,

    I have the same behavior for the AMICAM1 with 4 mems mic !

    Any suggestion ??

    Thanks