Noise on FXS ports using cheap TDM410P analogue cards
About a year ago I purchased a cheap TDM410P clone from eBay. The pricing was just too cheap to refuse.
To compare the pricing:
- Digium Card with 2 x FXO, 2 x FXS = $637.78 USD + shipping
- Chinese Card with 2 x FXO, 2 x FXS = $84.94 USD inc shipping
One good thing is that these cards work straight out of the box with the dahdi drivers. From my experience, the FXO ports seem to work perfectly. The FXS ports however gave me no end of trouble.
So finally I decided to spend some time on it to try and figure out what is going on. Now on the documentation, for using these cards in Australia, there is a opermode switch that is passed as the module is loaded (for me, in /etc/modprobe.d/dahdi.conf):
options wctdm24xxp opermode=AUSTRALIA
What I noticed is that when this was set, the noise levels on the FXS ports was unacceptably high. It was almost at a point where it started to drown out the dialtone! Interestingly enough, this ONLY happens on the receive side and the person on the other end can hear you fine.
To cut a long story short, I played around with the options available and I came across this combination:
options wctdm24xxp latency=6 companding=alaw
Now the noise is just about gone (I would swear it is CNG now) and the audio quality is much better than before. Oh - and before I forget, as this changes the impedance on the line etc, make sure you run fxotune again!
On a side note, I would love to see Digium produce a much cheaper card to compete with the chinese cards - as really, they are a victim of their own success in the home / hobby market. Maybe a suggestion could be to offer a card with no support - but a warranty service. Sadly, I’ve dealt with Digium before (yes, I actually own some completely useless G729 licenses!) so I’m not expecting much to happen.