AnsweredAssumed Answered

Using nLMS filter for feedback cancellation

Question asked by audiolab1 on May 1, 2012
Latest reply on Nov 25, 2013 by BrettG

Hi Brett,


I have read up on the other posts regarding the nLMS filter and that you have not yet had a chance to work with it. However, you did mention hearing a demo using a "real" mic and loudspeaker that worked well. I'm trying to create a feedback canceller for PA systems and I'm having trouble getting it to work. My application is similar to using AEC for a cell phone when there is a talkback signal...i.e. the mic signal and speaker signal are the same. Only differences in the two (feedback, room noise) should be cancelled out using the nLMS filter. My problem is how to input the "target" signal to PIN 1 of the nLMS block. Simply splitting the input signal and sending it to both PIN 0 and PIN1 of the nLMS block does not work...there is no output. This is strange since if the signals are identical the filter should simply pass the signal. I'm thinking that a delay block is required on one of the inputs, but trials so far have only resulted in noise and feedback. My though it that a feed-forward technique is required. The nLMS filter needs to know what the signal was supposed to be before the mic signal arrives. Adding a delay line in the mic feed also did not work. The test process flow that you posted works fine, and I can also substitute the sine wave generator in your example with a real mic signal and it works to cancel the white noise perfectly. It's only when I try to input a "real" signal for the speaker signal that it stops working. Any ideas?