This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TAS2557: How to enable ech reference output on ASI2

Part Number: TAS2557

We are trying to configure the TAS2557 to output an echo reference signal to an external acoustic echo cancellation (AEC) DSP.

- The ASI1/2 audio format is WCLK=48KHz, BCLK=3.072MHz, Left Justified.

- ASI1 is clock slave to a MCU, ASI2 is a clock master to AEC DSP.

- MCU only provide BCLK (no MCLK).

- All other audio format/clock settings are default.

- We are able to hear playback sound on TAS2557 EVM Device A (0x98) and Device B (0x9a). That means playback setting are correct.

We added the following setting and able to get correct audio, but the volume is very low.

w 98 00 00 #Page 0

w 98 7f 00 #Book 0

w 98 00 01 #Page 1

w 98 20 39 #ASI2_DOUT output is ASI1_DIN loopback

w 98 41 12 #GPIO5 is ASI2_BCLK_OUT

w 98 42 11 #GPIO6 is ASI2_WCLK_OUT

w 98 43 15 #GPIO7 is ASI2_DOUT

w 98 22 82

w 98 23 A0

With the above settings, we jumper ASI2 of Device A to ASI1 of Device B. The audio from DEVICE B is correct but volume is very Low that we need to put our ear near the speaker to hear the sound.

What could be wrong?

I believe “w 98 20 39” is not the echo reference data.

How to enable echo reference?

  • Additional information:
    - When Feedforward Protection is enabled, at DEVICE B (data from DEVICE A ASI2), we heard noise when PC volume >30%.
    - When Feedforward Protection is disabled, at DEVICE B (data from DEVICE A ASI2), we heard good sound at any volume level.
    - However, with Feedforward Protection enabled we can get 2.7W at 100% PC volume.
    - With Feedforward Protection disabled we can get only 0.65W at 100% PC volume.

    Note: ASI1 of DEVICE B is connected to ASI2 of DEVICE A.

  • Hi,

    Echo reference is sent to ASI1 DOUT by default.
    I'll verify on how to send echo reference to ASI2 DOUT and use it as input to device B. I'll provide a detailed guide on how to test this once I've completed testing from my side.

    Best regards,
    -Ivan Salazar
    Applications Engineer - Low Power Audio & Actuators
  • Dear Ivan,

    We have tried setting Book 0, Page 1, Register 0x20.
    We get correct echo reference when FEEDFORWARD PROTECTION is disabled.

    There might be something else we need to set for FEEDFORWARD PROTECTION enabled.

    Regards
    CK
  • CK,

    I tried the following procedure on a TAS2557EVM:
    - Connect TAS2557EVM USB to PC
    - Power up EVM with 5V
    - Open PPC3 and TAS2557 app
    - From top right corner, switch from Mono to Dual Mono
    - Run System Checks
    - Remove J3 and J32 jumpers, connect DOUT (J3) from Device A to DIN (J32) of Device B
    - Open Tuning & Audio Processing tab
    - Select Device A from top right corner, then select Left Playback Channel
    - Select Device B from top right corner, then select Left Playback Channel (different results obtained if selecting Left Channel)
    - Open Smart Amp tab and enable/disable Feed Forward Protection

    From this test, I can see the same amplitude on Device A and B, if FFP (Feed Forward Protection) is checked there is still the same amplitude. When the FFP is un-checked, the amplitude of Device B is reduced momentarily, but it then rises again to the same as Device A.

    Best regards,
    -Ivan Salazar
    Applications Engineer - Low Power Audio & Actuators
  • Dear Ivan,

    Thank you for your advice. We managed to get echo reference for both FeedForward Protection enables and disabled modes.

    We still got high distortion when FeedForward Protection is enabled. We suspect this might be caused by incorrect Measured Speaker  Characterization was used.

    Hopefully once the Measured Speaker  Characterization is ready, the distortion will go away.

    Regards

    CK

  • Dear Ivan,

    We noticed that the echo reference is much lower than the actual output level.

    Using your settings on EVM, when the output level is 600mW, the echo reference is only 38mW (-24dB). This is tested with the speaker some with EVM and input 1KHz sinewave at 0dB.

    In this way, we noticed that when we set PC volume to 20%(-24dB), there is no data output (BCLK and WCLK still present).

    Is this the correct signal we should see?

    If this is correct, when normal music with crest factor -12dB will have much much lower than -24dB echo reference.

    Will this be too Low for AEC DSP to process?

  • CK,

    The echo reference includes the processing applied to the input signal, so what I think is happening is that the original signal is being processed by the algorithm two times, the first one on device A and then this processed signal is sent to device B, which also adds more processing.
    I'll try on the EVM by sending a loopback of DIN to DOUT for device A, this should allow both devices to have the same input signal.

    Best regards,
    -Ivan Salazar
    Applications Engineer - Low Power Audio & Actuators
  • CK,

    After further testing I verified my assumption from last post.
    If you write the following commands to change DOUT from Device A to Loopback of DIN, enabling or disabling any processing for Device A will not affect Device B, because it is directly routed from DIN to DOUT. Echo reference takes all the processing effects and if you set this signal as input to Device B, the signal will be processed again.
    Commands for DIN->DOUT routing on Device A:
    w 98 00 00
    w 98 7f 00
    w 98 00 01
    w 98 0C 61

    Echo reference signal should be good after output of Device A, it will be the signal applied to the speaker, after all necessary processing by Device A, if you use DIN as echo reference it will not be processed thus it will be different than the actual signal applied to the speaker.

    Best regards,
    -Ivan Salazar
    Applications Engineer - Low Power Audio & Actuators