OK, here's the drill after you successfully compile Asterisk and Zaptel. I am running kernel 2.6.18-5-686, Debian 2.6.18.dfsg.1-13etch2. First of all, you need to move the Zaptel binary "ztcfg-dude" to the /sbin/ directory. The normally used "ztcfg" will NOT start the SF/MF Zaptel trunks. Next, type in "ifconfig" to get the MAC addresses of your two extra NIC cards, connected together with an Ethernet loopback cable. Note these down, along with the corresponding interface number (eth1 and eth2, in my case). Open /etc/zaptel.conf in a text editor. Replace with the following. After the two lines beginning with the word "dynamic", where the interface numbers and MAC addresses are specified, substitute the numbers you got from the "ifconfig" command. EXCEPT (VERY IMPORTANT), put the MAC address of the OTHER card in the line associated with each ethernet interface number. The other lines are needed to set the proper 2600 supervision and notch filter levels and to make the near end unresponsive to 2600 supervision to "goody" the call - make multiple blue box calls on the same originating call possible. Save the file and follow the next steps. ################################################# # Zaptel Configuration File # # This file is parsed by the Zaptel Configurator,ztcfg # # loadzone = us defaultzone=us dynamic=eth,eth1/00:03:47:73:61:E0,24,0 dynamic=eth,eth2/00:03:47:73:61:DF,24,0 sf=1-24:2600,10,normal,2600,0,inverted sf=25-48:2600,15,inverted,2600,-20.0,inverted #################################################### Now open /etc/asterisk/zapata.conf in a text editor. Replace with the following. This sets up the various trunk wink and other timing parameters: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; ; Zapata telephony interface ; ; Configuration file ; ; You need to restart Asterisk to re-configure the Zap channel ; CLI> reload chan_zap.so ; will reload the configuration file, ; but not all configuration options are ; re-configured during a reload. [channels] context=default language=en jitterbuffers=24 echocancel=no rxgain=0.0 #prewink=150 #wink=250 wink=350 context=nearend rxwink=300 signalling=sf group=1 channel=>1-24 context=from-internal ;rxwink=50 rxwink=150 stripmsd=1 signalling=sf group=2 channel=>25-48 ; How long generated tones (DTMF and MF) will be played on the channel ; (in milliseconds) toneduration=68 ; toneduration=150 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Now, you need to enter the following command, in the order I have below, to get all the modules going. Do this manually, for now. Substitute in the ethx numbers of your two extra NIC cards. Also, I have to modprobe ztdummy twice to get it to run. Don't know why. ifconfig eth1 up ifconfig eth2 up modprobe zaptel modprobe ztdummy modprobe ztdummy ztcfg-dude At this point, the lights on the two NIC cards (connected with a loopback cable) should be flashing. Type: zttool This will display the status of your two virtual T1s. There should be no alarms. You now have two trunk groups (one originating, one terminating) running that you can route calls over in your dial plan. I can help some on that. Hope this is clear! ========================================================== I forgot to mention, but obvious. Start Asterisk with an "asterisk -cvvvvvvvvv" after you verify the trunks in my last step! ========================================================== Here is a minimal extensions.conf to get a call going. This assumes you have a local SIP phone that uses the "default" context. When you dial 2600, it routes over group 1 (g1) Zaptel channels. zapata.conf sets group 1 as Zap channels 1-24, your outbound T1 over Ethernet. This terminates on paired channels 25-48, which are assigned to the "from-internal" context. When you dial 2600, Asterisk finds the first non-busy trunk in group 1. It removes 2600 to seize the far end. It gets a wink from the far end and sends the dialed digits "999" in MF tones. The call then proceeds in the "from-internal" context. It plays a recording of ringback that you provide (here named "ring_recording"). All this SF/MF is inaudible, except the ringback playing. When you play and remove 2600 from a blue box, the far end trunk disconnects the ringback recording, sends a wink, and attaches an MF receiver, wiating for digits. That IS audible! There is a 5 second timeout to start dialing MF. The number you dial in the "from-internal" context from the "default" context can be anything, not just a recording. There are other little tricks that enhance the experience, but this is the bare-bones setup to use the trunks. =================================================== [default] exten => 2600,1,Dial(ZAP/g1/999) [from-internal] exten => 999,1,Wait(1) exten => 999,2,Playback(ring_recording,noanswer) ================================================== On my previous example, when the recording in the "999" extension completes, the call hangs up, but will NOT disconnect the originating side, since the way we configured zaptel.conf makes the near end ignore the 2600 hangup from the far end. This means you can hold the line from the originating side as long as you like and play another burst of 2600 to reseize the line and MF again, even after the far end supervises and then hangs up. exten => 999,3,HangUp Best, Don