Previous PageTable Of ContentsIndexNext Page



3 Editing The AG Configuration File

3.1 Introduction

The AG configuration file lists the types, locations and roles of each of your AG boards. It also describes what software modules should be loaded to the board's memory. The AG board initialization utility agmon interprets this file when it is invoked, and configures your board as described in the file.

This chapter:

3.2 Creating an AG Configuration File for Your Setup

The easiest way to create an AG configuration file for your setup is to modify and/or combine the contents of the example AG configuration files installed with your CT Access or AG Access software and protocol software packages. By default, these files are installed in one of the following directories:

The file you create should be named ag.cfg. This is the filename agmon looks for by default. agmon uses the following algorithm to search for this file:

3.2.1 Hardware- and Trunk-Specific Settings

This section lists all AG configuration file statements that are relevant specifically to the AG-T1 and AG-E1 hardware, or are trunk-specific. Your AG configuration file must contain all statements marked "mandatory" below. All other statements listed here are optional for different configurations.

Note that there are other AG configuration file statements that you will also need to include to configure your TCP and other software components. To learn more, see the Developer's Reference Manual that came with your protocol software.

Address (mandatory)

DigitalMode (optional)

FrameType (optional)

Interrupt (mandatory)

LineCode (optional)

LineLength (optional)

RunFile (mandatory)

3.2.2 Enabling MVIP Connectivity

To enable or disable MVIP connectivity, make the following changes to your AG configuration file:

  1. Change the setting of the EnableMVIP keyword in your AG configuration file. The allowed values for EnableMVIP are:

  1. In your AG configuration file, set the ClockRef statement for each board so it indicates whether the board will be the MVIP bus clock master or a slave. The allowed values for ClockRef are:

  1. You may also wish to configure one board to drive the secondary 8 kHz bus clock (Sec8k clock). For details, see Appendix C.

3.3 Running agmon

When your AG configuration file is complete, invoke the agmon utility to initialize and configure your boards as described in the file. agmon interprets your AG configuration file and loads the appropriate files to the AG boards. If the load is successful, agmon monitors for errors until you terminate it. (For more information about this utility, see the AG Runtime Configuration and Developer's Manual.)

To use agmon to verify that the board initializes properly:

  1. (OS/2) If you have just installed the AG driver, and you have changed your config.sys file, reboot your system to activate it.

  2. Start a new command session.

  3. Run agmon. To do so, follow one of the procedures in this table:

agmon creates two files, ag.rpt and agerror.log. These files can be found in the current directory in OS/2 and Windows NT, and in /var/opt/nms/ag in UNIX.

3.4 Sample AG Configuration Files

The following are listings of several sample ag.cfg files for various configurations. Each one is annotated in detail.

3.4.1 Single AG-T1 Board, US CAS - Wink Start

The following sample ag.cfg file describes a single AG-T1 board configured for US channel-associated signaling (wink start), on a trunk using D3/D4 framing.

     [AGBOARD]

    The AG configuration file must begin with this mnemonic.

    #--- COMMON section ---

    Any statements in this section of the file will apply to all boards listed in the Board x sections below.

     Interrupt = 12

    The interrupt you specify here will be used by all AG boards in your system.

     DspFile = voice.dsp  
     DspFile = dtmf.dsp  
     DspFile = callp.dsp  
     DspFile = tone.dsp
    
     DspFile = signal.dsp

    These statements install DSP program files. They are installed on all boards listed in this file, since they appear in the COMMON section of this file. For this configuration, you will need at least the statements shown. You can add others also, if you wish. These files are for µ-law encoding. If your setup calls for a-law encoding, add an "_a" to each filename, as shown in the next example.

    RunFile = systn.run

    This line defines the runfile to be used. It is board- and protocol-specific. In CT Access or AG Access installations, for AG-T1 and AG-E1 boards with CAS protocols, use systn.run. If you have more than one board, and the boards require different runfiles, include this line in a Board x section instead of the COMMON section.

    #--- BOARDS section ---
 
    Board 0

    This mnemonic indicates the beginning of a description of a particular board. The number appearing here will be used to refer to the board in software.

       Address = 2C0 

    This is the board's I/O address. Each board must have a unique address. The address is set here and on the board's face using switches (see section 2.3).

       TCP = nocc.tcp
    
       TCP = wnk0.tcp

    These lines indicate the TCPs to load to the board. The setting here is protocol-specific.

       IdleCode = MU-LAW

    This statement defines the bit pattern transmitted on an MVIP timeslot when it is not under a TCP's control.

       CLOCKREF = NET1

    This statement configures the clock. NET1 causes the board to derive the local clock using the clock extracted from the T1 or E1 trunk.

       ENABLEMVIP = NO

    Set to YES to enable MVIP switching.

       LINECODE = AMI_ZCS

    This statement specifies the trunk coding algorithm the board is to expect. The setting made here is Alternate Mark Inversion with zero code suppression.

    End Board

    This mnemonic indicates the end of the description of Board 0.

3.4.2 Single AG-T1 Board, ISDN

The following sample ag.cfg file describes a single AG-T1 configured for ISDN (USA variant), on a trunk using extended superframe framing (ESF). The application will access ISDN services in ACU configuration, using the AG ISDN Messaging API.

     [AGBOARD]

    The AG configuration file must begin with this mnemonic.

    #--- COMMON section ---

    Any statements in this section of the file will apply to all boards listed in the Board x sections below.

     Interrupt = 12

    The interrupt you specify here will be used by all AG boards in your system.

     DspFile = voice.dsp  
     DspFile = dtmf.dsp  
     DspFile = callp.dsp
    
     DspFile = tone.dsp

    These statements install DSP program files. They are installed on all boards listed in this file, since they appear in the COMMON section of this file. For this configuration, you will need at least the statements shown. You can add others also, if you wish. These files are for µ-law encoding. If your setup calls for a-law encoding, add an "_a" to each filename, as shown in the next example.

    RunFile = systiust.run

    This line defines the runfile to be used. It is board- and protocol-specific. In CT Access or AG Access installations, for AG-T1 boards using ISDN in the US, use systiust.run, the terminal equipment runfile for the US. If you have more than one board, and the boards require different runfiles, include this line in a Board x section instead of the COMMON section.

    #--- BOARDS section ---
 
Board 0

    This mnemonic indicates the beginning of a description of a particular board. The number appearing here will be used to refer to the board in software.

       Address = 2C0 

    This is the board's I/O address. Each board must have a unique address. The address is set here and on the board's face using switches (see section 2.3).

       TCP = nocc.tcp

    This line indicates the TCP to load to the board. The setting here is protocol-specific. When accessing AG ISDN services in ACU configuration, specify nocc.tcp.

       DIGITALMODE=PRI

    This statement determines how voice and signaling information is routed to and from the T1 or E1 trunk and processing resources. For details, see Chapter 6.

       CLOCKREF = NET1

    This statement configures the clock. NET1 causes the board to derive the local clock using the clock extracted from the T1 or E1 trunk.

       ENABLEMVIP = NO

    Set to YES to enable MVIP switching.

       LINECODE = B8ZS

    This statement specifies the trunk coding algorithm the board is to expect. The setting made here is Binary 8 Zero Suppression (the default for AG-T1 boards when DigitalMode is PRI or RAW).

       FRAMETYPE = ESF

    This statement specifies the framing method the board is to expect. The setting made here configures the board for Extended SuperFrame for USA.

    End Board

    This mnemonic indicates the end of the description of Board 0.

3.4.3 Single AG-E1 Board, MFC-R2

The following sample ag.cfg file describes a single AG-E1 configured for an MFC-R2 protocol.

    [AGBOARD]

    The AG configuration file must begin with this mnemonic.

    #--- COMMON section ---

    Any statements in this section of the file will apply to all boards listed in the Board x sections below.

     Interrupt = 12

    The interrupt you specify here will be used by all AG boards in your system.

     DspFile = voice_a.dsp  
     DspFile = signal_a.dsp  
     DspFile = dtmf_a.dsp  
     DspFile = callp_a.dsp  
     DspFile = tone_a.dsp
    
     DspFile = mf_a.dsp

    These statements install DSP program files. They are installed on all boards listed in this file, since they appear in the COMMON section of this file. For this configuration, you will need at least the statements shown. You can add others also, if you wish. The "_a" following each filename indicates that these files are for A-law encoding. If your setup calls for µ-law encoding, remove the "_a" from each filename, as shown in the previous example.

    RunFile = systn.run

    This line defines the runfile to be used. It is board- and protocol-specific. In CT Access or AG Access installations, for AG-T1 and AG-E1 boards with MFC-R2, use systn.run. If you have more than one board, and the boards require different runfiles, include this line in a Board x section instead of the COMMON section.

    #--- BOARDS section ---
 
    Board 0

    This mnemonic indicates the beginning of a description of a particular board. The number appearing here will be used to refer to the board in software.

       Address = 2C0 

    This is the board's I/O address. Each board must have a unique address. The address is set here and on the board's face using switches (see section 2.3).

       TCP = mfc0.tcp

    This line indicates the TCP to load to the board. The setting here is protocol-specific. For MFC-R2 protocols under CT Access or AG Access, specify mfc0.tcp.

       IdleCode = 0xD5,0x9

    This statement defines the bit pattern transmitted on an MVIP timeslot when it is not under a TCP's control. The setting of this line is country-specific. The sample .cfg file installed with the protocol software for a country will have the correct setting for that country.

       CLOCKREF = NET1

    This statement configures the clock. NET1 causes the board to derive the local clock using the clock extracted from the T1 or E1 trunk.

       ENABLEMVIP = NO

    Set to YES to enable MVIP switching.

       LINECODE = HDB3

    This statement specifies the trunk coding algorithm the board is to expect. The setting made here is high-density bipolar 3, which is the default setting for the AG-E1.

    End Board

    This mnemonic indicates the end of the description of Board 0.

3.4.4 AG-E1 and AG-8 Boards, MFC-R2, MVIP Connectivity

The following sample AG configuration file describes one AG-E1 board set up at I/O address 2C0, IRQ 12, using an MFC-R2 protocol, and one AG-8 board at I/O address 22C0 using a loop start protocol. The boards are connected via the MVIP bus.

    [AGBOARD]

    The AG configuration file must begin with this mnemonic.

    #--- COMMON section ---

    Any statements in this section of the file will apply to all boards listed in the Board xsections below.

     Interrupt = 12

    The interrupt you specify here will be used by all AG boards in your system.

     DspFile = voice_a.dsp  
     DspFile = signal_a.dsp  
     DspFile = dtmf_a.dsp  
     DspFile = callp_a.dsp  
     DspFile = tone_a.dsp
    
     DspFile = mf_a.dsp

    These statements install DSP program files. They are installed on all boards listed in this file, since they appear in the COMMON section of this file. For this configuration, you will need at least the statements shown. You can add others also, if you wish. The "_a" following each filename indicates that these files are for A-law encoding. If your setup calls for µ-law encoding, remove the "_a" from each filename, as shown in the next example.

    #--- BOARDS section ---
 
    Board 0

    This mnemonic indicates the beginning of the description of board 0, the AG-E1 board. The number appearing here will be used to refer to the AG-E1 board in software.

       RunFile = systn.run

    This line defines the runfile to be used. It is board- and protocol-specific. In CT Access or AG Access installations, for AG-T1 and AG-E1 boards with MFC-R2, use systn.run. Since there is more than one board in this setup, and the boards require different runfiles, this line is included in a Board x section instead of the COMMON section.

       Address = 2C0 

    This is the board's I/O address. Each board must have a unique address. The address is set here and on the board's face using switches (see section 2.3).

       TCP = mfc0.tcp

    This line indicates the TCP to load to the board. The setting here is protocol-specific. For MFC-R2 protocols under CT Access or AG Access, specify mfc0.tcp.

       IdleCode = 0xD5,0x9

    This statement defines the bit pattern transmitted on an MVIP timeslot when it is not under a TCP's control. The setting of this line is country-specific. The sample .cfg file installed with the protocol software for a country will have the correct setting for that country.

       CLOCKREF = NET1

    This statement configures the clock. NET1 causes the AG-E1 board to derive the clock using the clock extracted from the E1 trunk.

       ENABLEMVIP = YES

    MVIP switching is enabled. The AG-E1 is the clock master, since its ClockRef statement is set to NET1, and the AG-8's is set to MVIP.

       LINECODE = HDB3

    This statement specifies the trunk coding algorithm the board is to expect. The setting made here is high-density bipolar 3, which is the default setting for the AG-E1.

    End Board

    This mnemonic indicates the end of the description of Board 0.

    Board 1

    This mnemonic indicates the beginning of the description of Board 1, the AG-8. The number appearing here will be used to refer to the board in software.

       RunFile = sysan.run

    This line defines the runfile to be used. sysan.run is the runfile for analog trunk interface boards such as the AG-8. Since there is more than one board in this setup, and the boards require different runfiles, this line is included in a Board x section instead of the COMMON section.

       Address = 22C0 

    This is the board's I/O address. Each board must have a unique address. The address is set here and on the board's face using switches.

       TCP = lps0.tcp

    This line indicates the TCP to load to the board. lps0.tcp is the loop start TCP.

       IdleCode = A-LAW

    This statement defines the bit pattern transmitted on an MVIP timeslot when it is not under a TCP's control.

       CLOCKREF = MVIP

    This statement configures the clock. MVIP causes the AG-8 board to derive the local clock from the MVIP bus. The AG-E1 is driving the clock in this case, so the AG-8 is the clock slave.

       ENABLEMVIP = YES

    MVIP switching is enabled. The AG-E1 is the clock master, since its ClockRef statement is set to NET1, and the AG-8's is set to MVIP.

    End Board

    This mnemonic indicates the end of the description of Board 1.

3.4.5 Two AG-T1 Boards, One AG-8 Board, ISDN

One way to test your application with a "live" trunk connection is to install two boards in your system in "standalone" configuration (that is, not connected to each other via the MVIP bus), and connect the boards' trunk ports to one another. You can use one board to make calls and the other to receive calls, so each board simulates trunk traffic for the other.

The following configuration file example is for a setup in which one AG-T1 (Board 0) simulates the T1 line, another AG-T1 board (Board 1) runs the application, and an AG-8 (connected to Board 1 via the MVIP bus) is used as a handset. The protocol is ISDN (USA variant). Board 0 also simulates the network clock, driving the clock to the other AG-T1 board using its on-board oscillator. The application is designed to access ISDN services in NCC configuration, using the AG ISDN Natural Call Control API.

    [AGBOARD]

    The AG configuration file must begin with this mnemonic.

    #--- COMMON section ---

    Any statements in this section of the file will apply to all boards listed in the Board x sections below.

     Interrupt = 12

    The interrupt you specify here will be used by all AG boards in your system.

     DspFile = voice.dsp  
     DspFile = signal.dsp  
     DspFile = dtmf.dsp  
     DspFile = callp.dsp
    
     DspFile = tone.dsp

    These statements install DSP program files. They are installed on all boards listed in this file, since they appear in the COMMON section of this file. For this configuration, you will need at least the statements shown. You can add others also, if you wish. These statements are for µ-law encoding. If your setup calls for a-law encoding, add an "_a" after each filename: tone_a.dsp.

    #--- BOARDS section ---
 
    Board 0

    This mnemonic indicates the beginning of the description of Board 0, the first AG-T1 board. This board is completely stand-alone, connected to the other AG-T1 only via its trunk interface.

    The number appearing in this statement will be used to refer to the board in software.

       RunFile = systiust.run

    This line defines the runfile to be used. It is board- and protocol-specific. In CT Access or AG Access installations, for AG-T1 boards acting as ISDN terminal equipment in the US, use systiust.run, the terminal equipment runfile for the US. Since there is more than one board in this setup, and the boards require different runfiles, this line is included in a Board x section instead of the COMMON section.

       Address = 2C0 

    This is the board's I/O address. Each board must have a unique address. The address is set here and on the board's face using switches (see section 2.3).

       TCP = isd0.tcp

    This line indicates the TCP to load to the board. The setting here is protocol-specific. Specify isd0.tcp when accessing AG ISDN services in NCC configuration.

       DIGITALMODE = PRI

    This statement determines how voice and signaling information is routed to and from the T1 or E1 trunk and processing resources. For details, see Chapter 6.

       CLOCKREF = NET1

    This statement configures the clock. NET1 causes the AG-T1 board to derive its clock signal from the T1 trunk.

       ENABLEMVIP = NO

    MVIP switching is disabled for this board.

       LINECODE = B8ZS

    This statement specifies the trunk coding algorithm the board is to expect. The setting made here is Binary 8 Zero Suppression (the default for AG-T1 boards when DigitalMode is PRI or RAW).

    End Board

    This mnemonic indicates the end of the description of Board 0.

    Board 1

    This mnemonic indicates the beginning of the description of Board 1, the second AG-T1 board. This board is connected to the other AG-T1 via its trunk interface, and connected to the AG-8 via the MVIP bus.

    The number appearing in this statement will be used to refer to the board in software.

       RunFile = systiusn.run

    This line defines the runfile to be used. It is board- and protocol-specific. In CT Access or AG Access installations, for AG-T1 boards acting as ISDN network equipment, use systiusn.run, the network equipment runfile for the US. Since there is more than one board in this setup, and the boards require different runfiles, this line is included in a Board x section instead of the COMMON section.

       Address = 2A0 

    This is the board's I/O address. Each board must have a unique address. The address is set here and on the board's face using switches (see section 2.3).

       TCP = isd0.tcp

    This line indicates the TCP to load to the board. The setting here is protocol-specific. When using the ISDN layer 3 messaging API under CT Access or AG Access, specify nocc.tcp.

       DIGITALMODE = PRI

    Include this statement for ISDN installations.

       CLOCKREF = NET1

    This statement configures the clock. NET1 causes the AG-T1 board to derive its clock signal from the T1 trunk. This board is the clock master, since the AG-8 board (Board 2) is set to MVIP.

       ENABLEMVIP = YES

    MVIP switching is enabled. This board is the clock master, since its ClockRef statement is set to NET1, and the AG-8 is set to MVIP.

       LINECODE = B8ZS

    This statement specifies the trunk coding algorithm the board is to expect. The setting made here is Binary 8 Zero Suppression (the default for AG-T1 boards when DigitalMode is PRI or RAW).

    End Board

    This mnemonic indicates the end of the description of Board 1.

    Board 2

    This mnemonic indicates the beginning of a description of Board 2, the AG-8. The number appearing here will be used to refer to the board in software.

       RunFile = sysan.run

    This line defines the runfile to be used. sysan.run is the runfile for analog trunk interface boards such as the AG-8. Since there is more than one board in this setup, and the boards require different runfiles, this line is included in a Board x section instead of the COMMON section.

       Address = 22C0 

    This is the board's I/O address. Each board must have a unique address. The address is set here and on the board's face using switches.

       TCP = lps0.tcp

    This line indicates the TCP to load to the board.lps0.tcp is the loop start TCP.

       IdleCode = A-LAW

    This statement defines the bit pattern transmitted on an MVIP timeslot when it is not under a TCP's control.

       CLOCKREF = MVIP

    This statement configures the clock. MVIP causes an AG-8 board to derive the local clock from the MVIP bus. Board 1 is driving the clock in this case, so the AG-8 is a clock slave.

       ENABLEMVIP = YES

    MVIP switching is enabled. Board 1 is the clock master, since its ClockRef is set to NET1, and this board is set to MVIP.

    End Board

    This mnemonic indicates the end of the description of Board 2.


Natural MicroSystems, Inc.
100 Crossing Boulevard
Framingham, MA 01702

Contact Developer Support

Previous PageTable Of ContentsIndexNext Page