Post Go back to editing

How to Interface EVAL-AD2428WD1BZ A2B Master with STM32 Nucleo-L552ZE-Q Using I2S/TDM for Upstream Audio Capture?

Category: Hardware
Product Number: AD2428

Hello ADI Team,

I am currently learning Automotive Audio Bus (A2B) communication using the following hardware:

  • A2B Master: EVAL-AD2428WD1BZ
  • A2B Subordinate: EVAL-AD2428WG1BZ
  • Microcontroller: STM32 Nucleo-L552ZE-Q
  • Software: SigmaStudio+

My requirement is to capture audio received from the A2B subordinate at the A2B master and transfer it to an external STM32 controller. The STM32 will then send the received audio data to a PC through USB.
How should I connect the AD2428 master to the STM32 Nucleo-L552ZE-Q?
Which exact AD2428 pins should I use for upstream audio output?

  • Main node AD2428 requires 48 kHz frame sync as an input, along with BLCK that matches your I2S/TDM format.  Other than that just hook up the AD2428 I2S data  out to your STM data in.

    On the 'WD board though you have to fight with the ADAU1452 for access to the AD2428 I2S pins.  So you'll need to decide how you want to deal with that and where/how to tap into those signals on the 'WD board.

  • I want to tap the audio which is comming from the master transceiver in upstream data and i did connections as below:

    Setup:
    - JP5 (BCLK), pin 5 -> STM32 SAI SCK
    - JP6 (SYNC), pin 6 -> STM32 SAI FS
    - JP10 (DTX0), pin 2 -> STM32 SAI SD
    - GND from the SigmaStudio/USBi  9-pin header -> STM32 GND
    - Existing shorting caps left in place on all three jumpers; STM32 SAI is configured purely as a slave receiver (high-impedance, not driving anything)
    - Currently reading via polling (HAL_SAI_Receive), 24-bit, 2-channel, I2S protocol

    Problem: I am receiving data (not silence, not a timeout), but it does not resemble the actual audio being played into the board - it comes through as noise.
    i attached the .bin and .wav files which are collected form PC via stm32 USB.

  • I'll assume you have the right connection points; I normally don't use the 'WD board.

    You didn't say what the audio test signal was but you should use a known signal with some diagnostic value, like a sine wave.

    You didn't indicate if the output sounds correct from the 'WD board analog output.  If not, you need to solve that first.

    I'm going to guess you've set up your I2S input on the STM board is not set to match what you're feeding it.  Put a scope on the I2S lines and compare what you're sending to what the STM settings are.

    I2S is always a PITA.  I can count on one finger where it's "just worked" the first time.

    Good luck.

Before You Switch


Switching languages will make ADI Explorer unavailable. Resume your session by switching back to English and reopening ADI Explorer.