Echo cancellation
I’m trying the echo cancellation block. I updated to version the 3.5.5 BETA 32-Bit OS version before I started. My hardware is a ADAU1761 with a speaker and microphone connected.
The results I get using the NLMS filter block are a bit disappointing. A single sinus signal is at most 6dB attenuated, experiments with noise result mostly in an increase of the output signal.
Can someone tell me how to set the alpha and TC configuration parameters. And is there an description of the NLMS filter block. Does it contain a double talk detector and that kind of features, what do I have to add to get a working AEC?
Thanks, Lukas
Hello Lukas,
I was pulled into several high-priority, time-critical projects at work over the past few weeks and unfortunately I had to de-prioritize my participation in the forum as a result. So, I apologize for making you wait so long for an answer. I am going to try to respond to everybody's questions within the next few days.
I have very little experience with the NLMS filter, so I unfortunately cannot provide much expertise in this area. The best I can offer for now is to ask our software about the features of the NLMS and how to use it, and I can post back here with my findings.
I really would like to do some kind of reference design with working AEC, complete with board schematics and PCB layout files, but at the moment, that is one of many items on my to-do list.
If anybody else has experience with the NLMS filter and/or AEC, please post here with your findings.
Hi,
any news on this subject? I just made a setup with an NLMS filter for eliminating trans-hybrid talk from a 2-to-4-wire hybrid circuit.
I attached to pin 0 the rx coil of the transformer, which bears the incoming signal from the 2-wire circuit, plus the trans-hybrid signal, which is a copy of the tx coil signal, but typically 30dB lower.
You can see a sketch of my setup in the attached drawing.
I compensated the 30dB in the capture levels to get similar signals, then I put a sine tone on the TX output of the device and turned on the "adapt" signal of the NLMS filter. I got good results, since the signal was almost completely cancelled.
However, if I spoke from the "device" my voice was not cancelled at all, only distorted. I tried tuning the filter using white noise, pink noise, different frequencies for sines, but I didn't get better results.
Is there anything else I could do?
Unfortunately I am not an expert in the use or application of the NLMS filter. I spoke with the software manager and he had these comments:
The length of the FIR filter determines the frequency range that can be canceled. The longer the FIR filter, the lower the limit of frequencies that can be canceled. So, try to make your FIR filter as long as possible.
Frequencies that are outside of this range (in the lower frequency range) will not be canceled, so it is a good idea to try to filter these out using a standard IIR highpass filter. You will lose some of the frequency range of your signal, but echo cancellation will be better.
The FIR can adapt very easily to a sine tone because it is a constant signal that does not change over time. A voice, on the other hand, is constantly changing, so the FIR needs to constantly adapt to cancel it out. You will need to experiment with the time constant controls in order to find a setting that is most efficient at canceling the signal in question.
I apologize that I cannot provide more detailed help. Due to my lack of experience in this area, I can only provide basic suggestions based on my conversations with the software team.
Thank you Brett,
I tried as you suggested:
I changed the taps from 256 to 512, but this lead to a filter that for some reason was non working anymore. Maybe one needs to adjust also the other parameters to make it work
I put a HP filter before the filter's input signals, and it got better
I tuned the filter using pink noise, then stopped the "adaptation". It did a good job of attenuating the unwanted echo, at least as good as a simple subtraction, but with added flexibility
This question has been assumed as answered either offline via email or with a multi-part answer. This question has now been closed out. If you have an inquiry related to this topic please post a new question in the applicable product forum.
Thank you,
EZ Admin
Please log in to reply.

