Respeaker USB 4-mic, 2 devices, AEC fails

We have purchased two Respeaker USB 4-mic array devices for our “voice assistant” project. Respeaker is expected to support proper AEC functionality so that a user can ask questions while the assistant is still answering the previous one.

The target system is Ubuntu 22.04.

We set up and tested the Respeaker devices according to the manual provided at the following link, and used the 6_bin firmware file for flashing:

To simultaneously route the audio output from the PC to Respeaker, we used the following configuration:

Digital Stereo (EIC958) Output + Multichannel Input

and

simultaneous output
for PulseAudio as described here:

https://linuxconfig.org/how-to-enable-multiple-simultaneous-audio-outputs-on-pulseaudio-in-linux

In this configuration, the AEC function works correctly on one Respeaker device (device A). However, on the second device (device B), we encounter the following issue:
AEC works correctly for about 90–120 seconds (see file #1), and then audio from channel #5 (playback) starts leaking into the resulting channel #0. The signal is strong enough that our ASR module starts recognizing the assistant’s voice — in other words, AEC stops functioning after a while.
Device A, unlike device B, operates correctly under the exact same Ubuntu 22.04 environment and identical acoustic conditions.

We are planning to adopt the Respeaker USB 4-mic array as a permanent solution for our project, but the inconsistent behavior of devices A and B, as described above, is currently blocking that decision. Therefore, we kindly ask for your assistance in clarifying the following:

  1. What could be the reason for the different behavior between devices A and B?
  2. How can we diagnose and configure device B more deeply than described in the provided manual?
  3. Is it necessary to reflash the XMOS chipset on the Respeaker?
  4. Should we try a different firmware version (not 6_bin) that still supports AEC?
  5. Could one of your specialists connect remotely to help diagnose device B?
  6. Could the behavior of device B be due to hardware damage caused by improper transportation?
  7. Does the difference in output/input volume levels (in dB), configured via PulseAudio, affect AEC quality?

Hi there,

So I would ask a couple questions, if you could answer?

  1. Can you swap the units and what happens? A>B, B>A ?
  2. What tools do you have available, scope, programmer?
  3. It’s shouldn’t be necessary unless there’s some update. quite possible
  4. Yes, you could try it, HAve you made the distance between A & B sets larger (farther apart) ? what results?
  5. Send an Email to support and Set something up.
  6. Well if you can swap them and the problem Still exists then Logic tells me yes. YMMV
  7. Good Question, I would think So. IMO.

Post a picture if you are able.
HTH
GL :slight_smile: PJ :v:

Hello!
Thank you very much for your participation!

Sure,

  1. When changing devices for the same system, nothing changes: device B is working incorrectly, while device A is working correctly.
  2. We are using Audacity, Ubuntu 22.04, and we can modify the environment as needed.
  3. Can you tell us where to find other firmware for the device? Previously, we only used 6_channels_firmware.bin via dfu.py script.
  4. the same question, see 3
  5. Sent the information, we are in touch and waiting for the completion of testing on their side.
  6. Ok
  7. Ok

What exactly are you expecting to see? We connect the device in USB to PC format, with the Digital Stereo (EIC958) Output + Multichannel Input profile.

Thank you so much for your response. Could you please help us with questions 3 and 4? :pray:

Thank you! :slightly_smiling_face: