Problem:

I bought a TDM400 card bundle with two FXS (green) modules so that I could connect two analog telephones to my Asterisk-1.2.0-rc2 server. One of these phones is a relatively new rotary-dial pulse phone in good working order. The other is a DTMF phone that can also be put into pulse mode.

Everything seems to work fine when using DTMF, but the card is unable to correctly receive dial pulses from either phone. It does pass _some_ digits to Asterisk, but it seems to misinterpret digits in something of a random manner. For instance, I tried calling the number 12693461212 (a former time-of-day line; now disconnected) three times in a row, and the Asterisk server received the following on the three tries:

1253461212
1212461112
11652461111

Obviously this is not working.


Troubleshooting Steps Taken:

I noticed that in my zaptel.h, the following constants were defined:

#define ZT_DEFAULT_PULSEMAKETIME 50     /* 50 ms of line closed when dial pulsing */
#define ZT_DEFAULT_PULSEBREAKTIME 50    /* 50 ms of line open when dial pulsing */
#define ZT_DEFAULT_PULSEAFTERTIME 750   /* 750ms between dial pulse digits */

I am of the understanding that the dial pulse make/break ratio in the USA (which is where I live, where my phones were bought, and where they work perfectly on POTS lines) is 60/40, and that 10 pulses are supposed to be dialed per second. Hence, I changed the pulsemaketime to 60 and the pulsebreaktime to 40. I then recompiled the driver (stop asterisk, rmmod wctdm, rmmod zaptel, make clean && make && make install), reloaded the new modules, and ran asterisk. The same problem happened.

I then thought that maybe 750ms was too long of a timeout between pulse digits, so I changed this value to 250 and recompiled. Again, no improvement. I left the make/break values at 60/40, changed the pulseaftertime back to 750 and recompiled.

Next, I thought that maybe my rotary-dial phone was somehow out of spec in such a manner that it would work with the phone company's equipment but not with the TDM400 board. Therefore, I switched my touch-tone phone to pulse mode in which a microcontroller in the phone generates pulses when you press buttons on the dial pad. One would think that the timing of this set-up would almost certainly be correct. However, the same type of problem occurred.

I really cannot think of anything else to try at this point. If anyone either knows how to fix this, or has any suggestions for me to try, or needs any more information about my system, I would be very glad to hear from you.

Thanks,
Rusty


System Information:

/proc/interrupts suggests that the TDM400 card is not sharing an IRQ:

           CPU0      
  0:     779469          XT-PIC  timer
  2:          0          XT-PIC  cascade
  8:          0          XT-PIC  rtc
 11:      15826          XT-PIC  libata, eth0
 12:    2702857          XT-PIC  wctdm
 14:       6235          XT-PIC  ide0
 15:         18          XT-PIC  ide1
NMI:          0
LOC:          0
ERR:          0
MIS:          0

The results of lspci -vv (which are lengthy, so I will not post them unless they are needed) also indicate that the TDM400 is the only card using IRQ 12.


Contents of /etc/zaptel.conf:

loadzone=us
defaultzone=us
fxoks=1
fxoks=2

Contents of /etc/asterisk/zapata.conf:

[channels]

signalling=fxo_ks
language=en
context=from-internal
pulsedial=yes
pulse=yes
channel => 1

signalling=fxo_ks
language=en
context=from-internal
pulsedial=yes
pulse=yes
channel => 2


Results of lsmod:

Module                  Size  Used by
wctdm                  37504  2
zaptel                220484  9 wctdm
rtc                     9720  0
raid5                  22016  1
md_mod                 58160  2 raid5
xor                    14536  1 raid5
sata_promise            8260  4
libata                 42696  1 sata_promise
via_velocity           31584  0
crc_ccitt               1696  2 zaptel,via_velocity
ipv6                  216960  10
ide_scsi               14148  0






_______________________________________________
--Bandwidth and Colocation sponsored by Easynews.com --

Asterisk-Users mailing list
[email protected]
http://lists.digium.com/mailman/listinfo/asterisk-users
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Reply via email to