Strange Echo with sangoma PRI

Hi all,

Running into a strange issue with a Sangoma A101 PRI (on a standard (latest) FreePbx distro.
No issue on making and receiving calls. The issue is a voice quality issue.
I am getting a noticeable echo on the phones (grandstream GXP2160) ONLY when a call is connected to a landline on the far end. The “far end” is clear with no issues.
All calls going through the PRI to cell phones or VoIP lines / Cable modem lines are crystal clear.
I have tried lowering the gain both for RX and TX but it made very little improvement.

Any suggestion is highly appreciated

Have you configured any software echo canceller on the span? Oslec is a good one. Of course if you card has hardware echo canceller, you should use that.

Generally and after 150 years of AT&T experience , there will likely be very little if any echo on a PSTN connection between Your Provider and the handoff to the T1 (particularly for a TDM connection.) So any echo would likely not be between the DAHDI/WANPIPE channel driver and Asterisk but on the other side of the bridged call which could be anything , which is what you are doing :wink:

Chances are you need to NOT use any echo cancellation if using TDM but identify and hopefully resolve any ‘lag’ between your endpoint and the bridge.

Are you not using the A101D card that has hardware exho cancellation? If not you are going to struggle with trying to use software echo can is the echo on the line is severe.

Thank you all for your replies.

  1. I have tried setting echo cancellation (through the GUI) to NO and it did not help.
  2. There is no hardware echo cancellation card installed on the PRI.
  3. I am not sure how to “force” the span to use OSLEC. When running lsdahdi I can see that the FXO/FXS card is using Oslec but not the PRI
    Again, just to reiterate, the echo happen only if the call is answered on a landline. all other calls are clear.


The selection of the type of echo canceler is handled in /etc/dahdi/system.conf, e.g.:

echocanceller=oslec,1-23 ; sets OSLEC for the 23 channels available on a T1 PRI
echocanceller=oslec,25-28 ; sets OSLEC for 4 channels that would be available for an analog card

Then, the application of the echo canceler happens in /etc/asterisk/chan_dahdi.conf, e.g.:

echocancel = yes
channel => 1-23,25-28

Your exact settings are going to be different, because you probably won’t (you generally shouldn’t) have your analog and PRI channels in the same DAHDI channels grouping. And, if you’ve configured things using the DAHDI module in FreePBX, it should be doing the driving for you.

Hi Malcolm,

Thanks for the explanation.
I will commit it on the customer end and will update


Hi Malcolm,
Since I’m using a FreePbx distro, I can’t commit these settings directly to system.conf
I’ve tried entering these in GUI under global settings but it is still not showing in lsdahdi that the PRI is using oslec for echo cancellation. Also, this is a sangoma card that uses wanpipe so I’m not sure it will work.


Hi All,

I was able to update system.conf through the GUI, thanks for the assistance Malcolm.
However, when running lsdahdi I don’t see that Oslec is actually being used (see bellow)

1 PRI Clear (In use)
2 PRI Clear (In use)
3 PRI Clear (In use)
4 PRI Clear (In use)

How can I verify it is actually being used?

Hi All,

Again, thanks for all the help.
Malcolm pointed me to the right direction.
After setting echocanceller=oslec,1-23 through the GUI and restarting asterisk and dahdi I can now see oslec being used when running lsdahdi.
The end user have reported that the issue is resolved

Thanks all for your help

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.