Sponsor: VoiceMeUp - Corporate & Wholesale VoIP Services

VoIP Mailing List Archives
Mailing list archives for the VoIP community
 SearchSearch 

[asterisk-users] TDM400P UK CID ISSUE


 
Post new topic   Reply to topic    VoIP Mailing List Archives Forum Index -> Asterisk Users
View previous topic :: View next topic  
Author Message
matt at mbrown.co.uk
Guest





PostPosted: Sat Apr 05, 2008 10:34 am    Post subject: [asterisk-users] TDM400P UK CID ISSUE Reply with quote

Hi,

I know this issue has raised its head so many times before, and I have
been over so many threads, bug reports, mantis and other resources and
still unable to resolve.

I was using Asterisk 1.4.13 and have upgraded to 1.4.19 and was using
Zaptel 1.4.5.1 and now using 1.4.9.2

I found a bug tracking issue where someone has posted a UK CID fix
which appeared to work under 1.4.5.1 which was:

Index: wctdm.c
===================================================================
--- wctdm.c (revision 2300)
+++ wctdm.c (working copy)

@@ -315,6 +315,7 @@
#else
int wasringing;
#endif
+ int lastrdtx;
int ringdebounce;
int offhook;
int battdebounce;
@@ -859,30 +860,29 @@
return;
#ifndef AUDIO_RINGCHECK
if (!wc->mod[card].fxo.offhook) {
- res = wc->reg0shadow[card];
- if ((res & 0x60) && wc->mod[card].fxo.battery) {
- wc->mod[card].fxo.ringdebounce +=
(ZT_CHUNKSIZE * 16);
- if (wc->mod[card].fxo.ringdebounce >=
ZT_CHUNKSIZE * 64) {
+ res = wc->reg0shadow[card] & 0x60;
+ if (wc->mod[card].fxo.ringdebounce) {
+ wc->mod[card].fxo.ringdebounce--;
+ if (res && res != wc->mod[card].fxo.lastrdtx
&& wc->mod[card].fxo.battery) {
if (!wc->mod[card].fxo.wasringing) {
wc->mod[card].fxo.wasringing
= 1;
- zt_hooksig(&wc->chans[card],
ZT_RXSIG_RING);
if (debug)
printk("RING on %d/%d!
\n", wc->span.spanno, card + 1);
+ zt_hooksig(&wc->chans[card],
ZT_RXSIG_RING);
}
- wc->mod[card].fxo.ringdebounce =
ZT_CHUNKSIZE * 64;
- }
- } else {
- wc->mod[card].fxo.ringdebounce -= ZT_CHUNKSIZE
* 4;
- if (wc->mod[card].fxo.ringdebounce <= 0) {
- if (wc->mod[card].fxo.wasringing) {
+ wc->mod[card].fxo.lastrdtx = res;
+ wc->mod[card].fxo.ringdebounce = 10;
+ } else if (!res) {
+ if (wc->mod[card].fxo.ringdebounce ==
0 && wc->mod[card].fxo.wasringing) {
wc->mod[card].fxo.wasringing
= 0;
- zt_hooksig(&wc->chans[card],
ZT_RXSIG_OFFHOOK);
if (debug)
printk("NO RING on %d/
%d!\n", wc->span.spanno, card + 1);
+ zt_hooksig(&wc->chans[card],
ZT_RXSIG_OFFHOOK);
}
- wc->mod[card].fxo.ringdebounce = 0;
}
-
+ } else if (res && wc->mod[card].fxo.battery) {
+ wc->mod[card].fxo.lastrdtx = res;
+ wc->mod[card].fxo.ringdebounce = 10;
}
}
#endif
@@ -1462,6 +1462,10 @@
reg16 |= (fxo_modes[_opermode].rz << 1);
reg16 |= (fxo_modes[_opermode].rt);
wctdm_setreg(wc, card, 16, reg16);
+
+ /* Enable ring detector full-wave rectifier mode */
+ wctdm_setreg(wc, card, 18, 2);
+ wctdm_setreg(wc, card, 24, 0);

/* Set DC Termination:
Tip/Ring voltage adjust, minimum operational current,
current limitation */

With this patch I was able to get fairly reliable CID from my TDM400P
card (Wildcard TDM400P REV I (4 modules)) , however this now fails to
patch against the latest Zaptel 1.4.9.2 and I am unable to get CID
working reliably - some calls do show the CID correctly !!!!.

This is what appears in the output more often than not:

[Apr 5 16:21:13] NOTICE[12685]: chan_zap.c:6191 ss_thread: Got event
2 (Ring/Answered)...
[Apr 5 16:21:15] WARNING[12685]: chan_zap.c:6254 ss_thread: CID timed
out waiting for ring. Exiting simple switch

So for some calls we get it, other times the CID is empty. When
plugging the DECT unit into the BT line I get CID perfectly every
time, so I am sure this is a driver/card issue.

So has anyone found a reliable way in the UK using one of these cards
on BT to show UK CID ?

I think I have all the right settings in the zapata.conf i.e
usecallerid => yes
cidsignalling => v23
cidstart => polarity
immediate => no

So where am I going wrong ? Sorry if this has been covered somewhere
else or a fix .. I am just unable to find it - and I am slowly loosing
hair !

Regards

Matt Brown
Back to top
gordon+asterisk at dro...
Guest





PostPosted: Sat Apr 05, 2008 1:31 pm    Post subject: [asterisk-users] TDM400P UK CID ISSUE Reply with quote

On Sat, 5 Apr 2008, Matt Brown wrote:

Quote:
So has anyone found a reliable way in the UK using one of these cards
on BT to show UK CID ?

Upgrade to asterisk 1.2 Wink

Quote:
I think I have all the right settings in the zapata.conf i.e
usecallerid => yes
cidsignalling => v23
cidstart => polarity
immediate => no

Thats good.

Quote:
So where am I going wrong ? Sorry if this has been covered somewhere
else or a fix .. I am just unable to find it - and I am slowly loosing
hair !

I posted about this some time back and got the same patch you posted here,
but am only using 1.2 as yet.

I got that patch over a year ago, so I find it odd that wctdm hasn't had
it properly integrated by now...

Gordon
Back to top
Display posts from previous:   
Post new topic   Reply to topic    VoIP Mailing List Archives Forum Index -> Asterisk Users All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group

VoiceMeUp - Corporate & Wholesale VoIP Services