WP7611 Echo Cancellation not working

We are using a WP7611 module on a shipping product. Echo Cancelation is either very poor performance or not working at all. With WP7611 as “near end”, we hear strong echoes at far end. Turning EC on and off via Legato and AT commands makes no difference in what we hear at FE. Disconnecting NE microphone eliminates the echo at FE, confirming this is an acoustic feedback path (not sidetone). Readback of EC setting confirms we are (dis)enabling it (in all profiles). Potential cause may be improper gain balance between mic and playback ref, but fiddling gains on mic path makes no difference and there is no audible indication EC is doing anything at all. Another potential cause may be that the speaker is a tweeter with Fo ~ 1kHz, but playback ref is full BW (8kHz sample rate) - does adaptive filter handle BW difference between input and ref? Our current work-around is to put device into a half duplex “walkie talkie” mode by muting mic when playback signal exceeds a threshold. This is unacceptable as a long term solution. I see that other folks have had similar problems going back to 2006 in this forum, but no answers. Please share troubleshooting and tuning tips to get EC working properly.

Hi @bob.moses
Welcome you to our community
In order to troubleshoot the issue, please share with me some information as below:

  1. What firmware version is your WP7611 running? If not latest, please refer to the following link to get the latest firmware then recheck whether the issue is resolved
    Link the latest FW: https://source.sierrawireless.com/resources/airprime/software/wp76xx/wp76xx-approved-fw-package-summary/#sthash.E9cgDdtI.dpbs

  2. Have you installed the latest driver? If not, please install latest driver for your PC following the link below:
    https://source.sierrawireless.com/resources/legato/drivers-for-wp75xx_wp76xx_wp8548-series-modules---latest-release/#sthash.ycqkGrJ5.dpbs

  3. Has this issue happened before? Or is this the first time?

  4. Are you using Sierra board or custom board? If you are using custom board, Please try using the Sierra board. Do the issue still happens in this case?

  5. How many WP7611 module did you observe this issue? If It’s just only one, could you please retry on another WP7611 module?

  6. Please share with me the output of commands below:
    ATI9
    ATI8
    AT!GSTATUS?
    AT!IMPREF?
    AT!PRIID?
    AT!PCINFO?
    AT!AVSETPROFILE?
    AT!AVEC?[your profile]

Thanks,

  1. We were using version 16.1. Updated today to latest version - no change in behavior.
  2. Yes, I have latest driver installed. But I don’t see how that would affect performance of our device as no PC is in the system during operation (PC only for SSH debug)
  3. Yes, since the beginning of us using the module
  4. Customer board (our product). I will try Sierra board and confirm results.
  5. Many units - all of them.
  6. See below:
    ATI9
    Manufacturer: Sierra Wireless, Incorporated
    Model: WP7611
    Revision: SWI9X07Y_02.37.03.05 52ddef jenkins 2021/12/22 04:24:24
    IMEI: 355882100247750
    IMEI SV: 16
    FSN: ZU215630010410
    +GCAP: +CGSM

OK
ATI8
Legato Ver: 19.11.3-1-g8c030edad_d7129426fa970862d57167b82d40686a_modified
Yocto Ver: SWI9X07Y_02.37.10.02 2022-02-11_09:57:45
OS Ver: Linux version 3.18.140 (oe-user@oe-host) (gcc version 7.3.0 (GCC) ) #1 PREEMPT Fri Feb 11 09:40:40 UTC 2022
LK Ver: SWI9X07Y_02.37.10.02
RootFS Ver: SWI9X07Y_02.37.10.02 2022-02-11_09:57:45
UserFS Ver: unknown
MCU Ver: unknown

OK

AT!GSTATUS?
!GSTATUS:
Current Time: 238887 Temperature: 24
Modem Mitigate Level: 0 ModemProc Mitigate Level: 0
Reset Counter: 2 Mode: ONLINE
System mode: LTE PS state: Attached
IMS reg state: REGISTERED IMS mode: Normal
IMS Srv State: FULL SMS,FULL VoIP
LTE band: B4 LTE bw: 20 MHz
LTE Rx chan: 2300 LTE Tx chan: 20300
LTE CA state: INACTIVE
EMM state: Registered Normal Service
RRC state: RRC Idle

PCC RxM RSSI: -67 RSRP (dBm): -95
PCC RxD RSSI: -91 RSRP (dBm): -123
Tx Power: – TAC: 2C13 (11283)
RSRQ (dB): -8 Cell ID: 014B9503 (21730563)
SINR (dB): 24.0

OK

AT!IMPREF?
!IMPREF:
preferred fw version: 02.37.03.05
preferred carrier name: GENERIC
preferred config name: GENERIC_002.115_002
preferred subpri index: 000
current fw version: 02.37.03.05
current carrier name: GENERIC
current config name: GENERIC_002.115_002
current subpri index: 000

OK
AT!PRIID?
PRI Part Number: 9910285
Revision: 001.003
Customer: Qualified

Carrier PRI: 9999999_9907256_SWI9X07Y_02.37.00.00_00_ATT_002.098_003
Carrier PRI: 9999999_9907152_SWI9X07Y_02.37.03.05_00_GENERIC_002.115_002
Carrier PRI: 9999999_9908787_SWI9X07Y_02.37.03.00_00_SIERRA_001.060_003
Carrier PRI: 9999999_9907255_SWI9X07Y_02.37.06.00_00_VERIZON_002.107_003

OK
AT!PCINFO?
State: Online
LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:0, IMSWITCH:0, BIOS:0, LWM2M:0, OMADM:0, FOTA:0
LPM persistence - None

OK
AT!AVSETPROFILE?
!AVSETPROFILE: 3,0,0,0,3,0

OK

AT!AVEC?3
!AVEC: 1

OK

Update - we now have EC marginally working after adjusting RX and TX gains over and over (trial and error). It would be helpful to have documentation on recommended signal levels into the EC block (mic and ref paths), as well as into the vocoder. I’m finding that anything louder than about -40dBFS at the point a file is recorded using AT “AVAUDIO” command (where in the signal chain is that recorded?) results in distortion at the FE. This low signal level compromises SNR. As I requested in another forum posting concurrent with this one, we do not have any documentation on how to adjust the audio parameters in the signal chain - FIR, IIR, DRC, etc, which would be quite useful for optimizing speech intelligibility and general audio performance.

So the remaining question for EC is “how do we tune and optimize performance?”. Right now we get some ERLE, but more than acceptable residual echo, and I can’t improve or measure it other than by randomly turning TX and RX gains up and down.