[Asterisk-doc] suggested addition for Hardware Installation

Leif Madsen asterisk-doc@lists.digium.com
Thu, 27 May 2004 22:36:48 -0400


> -----Original Message-----
> From: asterisk-doc-admin@lists.digium.com [mailto:asterisk-doc-
> admin@lists.digium.com] On Behalf Of Randy Resnick
> Sent: Thursday, May 27, 2004 2:55 AM
> To: Asterisk doc
> Subject: [Asterisk-doc] suggested addition for Hardware Installation
> 
> Version two, since this wasn't added. I think it's pretty understandable.
> 
> ---- hardware installation - digium cards for a simple POTS pbx
> 
> If you are dedicating the computer to asterisk, free up the most IRQ by
> disabling USB, serial and parallel port support in the BIOS. Otherwise,
> you want to free as many as possible. You will NOT want to see a NIC
> sharing IRQ with a TDM or FXO card! It's best that these cards have
> their own IRQ.
> 
> Most BIOS will allow you to manually assign IRQ to specific slots. Go
> into BIOS and look for the IRQ area, often on the second page. If it was
> on AUTO, try setting to manual and see what happens. Chances are, a
> table will become available for manually assigning an IRQ to each slot.
> 
> Note: One thing to watch out for on some mobo is slots *sharing* IRQs.
> Look in the BIOS and check if it has an entry like "1/5" in the IRQ
> table.
> 
> Once booted, view /proc/interrupts to see the assigned IRQ:
> 
> (output below is just an example with Digium hardware flagged)
> 
> # cat /proc/interrupts
> 
>              CPU0
>     0:   41353058          XT-PIC  timer
>     1:       1988          XT-PIC  keyboard
>     2:          0          XT-PIC  cascade
>     3:  413437739          XT-PIC  wctdm <-- TDM400
>     4:    5721494          XT-PIC  eth0
>     7:  413453581          XT-PIC  wcfxo <-- X100P
>     8:          1          XT-PIC  rtc
>     9:  413445182          XT-PIC  wcfxo <-- X100P
>    12:          0          XT-PIC  PS/2 Mouse
>    14:     179578          XT-PIC  ide0
>    15:          3          XT-PIC  ide1
> NMI:          0
> ERR:          0
> 
> Above you can see the three Digium cards each on its own IRQ.
> If this is the case, you can go on to install hardware drivers.

Does anyone else think that this could be added to the current IRQ Sharing
Issues section in chapter 2?

> Here is a possible /etc/zaptel.conf for the three-card setup above :
> 
> fxsks = 1,2
> fxoks = 3,4,5
> loadzone = us
> defaultzone = us

This seems good to go in chapter 3 under zaptel.conf

> When this file is ready, you can try the following commands:
> 
> # modprobe zaptel
> # modprobe wcfxo
> # modprobe wcfxs
> 
> modprobe loads the drivers. It can also unload them [man modprobe]

This seems to fit in chapter 2 under "Using modprobe" ?

> The zaptel command will now configure the channels for us:
> 
> # ztcfg -vv
> (output of the command)
> Zaptel Configuration
> ======================
> 
> 
> Channel map:
> 
> Channel 01: FXS Kewlstart (Default) (Slaves: 01)
> Channel 02: FXS Kewlstart (Default) (Slaves: 02)
> Channel 03: FXO Kewlstart (Default) (Slaves: 03)
> Channel 04: FXO Kewlstart (Default) (Slaves: 04)
> Channel 05: FXO Kewlstart (Default) (Slaves: 05)
> 
> 5 channels configured.
> 
> This looks right. The first two are X100P FXO, each with a channel. The
> last three channels are assigned to FXS modules found on the TDM400.
> Note the FXS signaling on the first two (FXO) cards and FXO signaling on
> the three FXS channels. Now we need to configure asterisk before
> starting it.

More chapter 2 installation stuff?

> Here is /etc/asterisk/zapata.conf :
> 
> [channels]
> language=en
> 
> ; X100P modem card1 for incoming and outgoing PSTN calls
> ; incoming calls drop into [from-Line1] context in extensions.conf
> ; Dial string for this line would be ZAP/1
> context=from-Line1
> signalling=fxs_ks
> usecallerid=yes
> echocancel=yes
> echocancelwhenbridged=yes
> immediate=no
> transfer=yes
> cancallforward=yes
> echotraining=yes
> rxgain=0.0
> txgain=0.0
> musiconhold=default
> channel => 1
> 
> ; X100P modem card2 for incoming and outgoing calls
> ; incoming calls drop into [from-Line2] context in extensions.conf
> ; Dial string for this line would be ZAP/2
> context=from-Line2
> signalling=fxs_ks
> usecallerid=yes
> echocancel=yes
> echocancelwhenbridged=yes
> callwaiting=yes
> callwaitingcallerid=yes
> callprogress=no
> busydetect=yes
> busycount=7
> immediate=no
> threewaycalling=yes
> transfer=yes
> cancallforward=yes
> echotraining=yes
> rxgain=0.0
> txgain=0.0
> musiconhold=default
> channel => 2
> 
> ; Dial string for this phone will be ZAP/3
> callerid="Bernie A.H. Sales" <2005>
> signalling=fxo_ks
> context=inhouse
> immediate=no
> relaxdtmf=yes
> callgroup=1
> pickupgroup=1
> ; if there are groups other than default
> ; in voicemail.conf the voicemail context name
> ; must be given for MWI to work
> ; all users of phones on TDM400 are
> ; inhouse obviously
> mailbox=2000@inhouse
> channel => 3
> 
> ; Dial string for this phone will be ZAP/4
> callerid="Judy (Blonde)" <2006>
> signalling=fxo_ks
> context=inhouse
> immediate=no
> relaxdtmf=yes
> callgroup=1
> pickupgroup=1
> mailbox=2001@inhouse
> channel => 4
> 
> ; Dial string for this phone will be ZAP/5
> callerid="Clueless Boss Alert!" <2007>
> signalling=fxo_ks
> immediate=yes
> ; boss picks up phone and rings you!
> ; This is done in the [theboss] context
> ; of extensions.conf
> context=theboss
> relaxdtmf=yes
> callgroup=1
> pickupgroup=1
> mailbox=2002@inhouse
> channel => 5
> 
> You can remove any or all of the above channels, just make sure you
> renumber the remaining ones properly according to the channel order
> output when you ran ztcfg.
> 
> Assuming you have a coherent setup in zapata.conf you can try starting
> asterisk:
> 
> # asterisk -cvvvvvv
> 
> Since you system setup will vary, you will need to have added extensions
> in order to make calls or do anything else, but hopefully this concludes
> the hardware setup until you buy more.

OK, this is EXCELLENT, except I'm worried that we are going to continually
keep repeating the same things over and over and over.  I seem to be able to
look at this documentation and split it into different sections of the book,
but I'm not even sure splitting most of this up is appropriate?

Comments, suggestions ?

How should we be structuring this book?  Should this information be placed
in cookbook type stuff, or what?  I'd like to leave the cookbook section for
advanced configurations and special circumstances, where most of this seems
like it could fit into chapters 2 and 3.

Thanks for commenting on this :)
Leif Madsen.