Unreliable UK caller ID on TDM400P via BT DAX / DACS line

I have found a problem with asterisk connected to a BT DACS (DAX?) line using TDM400P. Aterisk v1.2.9.1.

50% of the time there is a ‘false’ ring event picked up during the CID negotiation, after the polarity reversal. The result is that the CID is not picked up. The other 50% of the time it works fine. Oddly the false ring, when it does happen, is always at 380ms after polarity switch, but this may just be a consequence of the * event queuing system in zaptel.

Also sometines there is a timeout waiting for the ring after CID in these cases.

I have a patch a patch to fix this which basically ignores ring events until after the CID has enough fsk samples (about 8000) and also increase the 2000ms ring timeout ro 4000ms. If anyone is wants the patch, drop me a mail, asterisk1 {-At-} jedi98.co.uk.