# Preparing to run the demonstration programs

cdicc and cdipbx require the following setup:

- The only hardware installed in the system is a single CX 2000 or CX 2000C board and a single AG 4000, AG 4000C, AG 4040, or AG 4040C board that provides T1 trunks.

- The specific configuration files are placed in the correct directories.

- The correct system services are installed and running.

To set up and run the demonstration programs, follow these steps:

1. Build the demonstration programs.

2. Set up the board keyword and system configuration files.

3. Boot the system.

4. Run the demonstration programs.

## Building the demonstration programs

As a prerequisite for using the demonstration programs, build the ccclib component, then build the executables for the demonstration programs. To do this, go to a command prompt and issue the appropriate make command for your operating system (for example, nmake for Windows).

The CDI service demonstration programs are located in the following directories:

Program | Location
--- | ---
ccclib | Windows: \nms\ctaccess\demos\ccclib UNIX: /opt/nms/ctaccess/demos/ccclib
cdipbx | Windows: \nms\ctaccess\demos\cdipbx UNIX: /opt/nms/ctaccess/demos/cdipbx
cdicc | Windows: \nms\ctaccess\demos\cdicc UNIX: /opt/nms/ctaccess/demos/cdicc

Note: It is assumed that the NMS software was loaded in directory \nms (on UNIX, the path is /opt/nms).

## Setting up the required configuration files

Make sure that you have the correct board keyword and system configuration files in the proper directories. Follow these steps:

1. Create a board keyword file for the AG 4000, AG 4000C, AG 4040, or AG4040C board.

2. Create a board keyword file for the CX 2000 or CX 2000C board.

3. Create an oamsys.cfg system configuration file specifying these board keyword files.

4. Create a configuration file for the Point-to-Point Switching (PPX) service.

### AG 4000 and AG 4040 board keyword file

The AG 4000 keyword file resides in \nms\ag\cfg on Windows (/opt/nms/ag/cfg on UNIX) and is called agpi4000.cfg. The AG 4040 board uses the same configuration file as the AG 4000 board. For more information about configuring your boards, refer to the appropriate board installation and developer's manual.

The AG 4000 keyword file for this example follows:

#
#
# AG Plugin-in Config File for AG 4000
#
Clocking.HBus.ClockSource = OSC
Clocking.HBus.ClockMode = MASTER_A
# TCP files are shipped with the AG-CAS sub-package of Natural Access.
# Be sure that you installed the protocols that are specified below before
# trying to start a board with this configuration file.
TCPFiles[0] = nocc.tcp # "no trunk control" protocol
TCPFiles[1] = wnk0.tcp # 2-way wink protocol
# DSP (.m54) files to link in
DSP.C5x.DSPFiles = callp.m54 dtmf.m54 mf.m54 ptf.m54 tone.m54 voice.m54 signal.m54
DLMFiles[0] = gtp.leo
DLMFiles[1] = voice.leo
DLMFiles[2] = svc.leo
#--------------------------------------------------------------------------
# Other default settings may be found in your AG 4000 Installation and
# Developer's Manual.
#--------------------------------------------------------------------------
XLaw = MU-LAW

### CX 2000 board keyword file

The CX 2000 board keyword file resides \nms\cx\cfg on Windows (/opt/nms/cx/cfg on UNIX), and is called cx2000.cfg. For more information about configuring your boards, refer to the appropriate board installation and developer's manual.

The CX 2000 keyword file for this example follows:

#
# Standalone operation
#
#Clocking.HBus.ClockMode = STANDALONE
#Clocking.HBus.ClockSource = OSC
#
# Master the CT Bus (drive clock A)
#
#Clocking.HBus.ClockMode = MASTER_A
#Clocking.HBus.ClockSource = OSC
#
# Slave to the CT Bus (slave from clock A)
#
Clocking.HBus.ClockMode = SLAVE
Clocking.HBus.ClockSource = A_CLOCK
SwitchConnection = YES

### System configuration file

When your board keyword files are complete, create a system configuration file describing the overall configuration of your system and assigning a board keyword file to each board. oamsys creates records in the NMS OAM database for your boards based on this file. The system configuration file is typically named oamsys.cfg. By default, oamsys looks for a file with this name when it starts up.

The Bus and Slot values in the system configuration file are required to identify the PCI bus and slot for each board. Obtain these values using the pciscan utility, by entering the following at a command prompt:

pciscan

pciscan displays information on the boards that are configured in the system, including the Bus and Slot values.

Once you have used pciscan to obtain these values, you can verify them by blinking an LED on each board. For example, assume the utility indicates that there is a board at bus 2, slot 10 and another board at bus 2, slot 14. To determine which bus/slot combination contains which board, use a bus/slot combination as arguments (separated by a space) to the pciscan utility. For example:

pciscan 2 10

The utility flashes the blue Hot Swap LED on the CX 2000C board (or the board locate LED on a CX 2000 board) in the given bus/slot combination. Use this bus/slot information in your configuration file for Bus and Slot.

For more information about creating a system configuration file, refer to the NMS OAM System User's Manual. The following sample system configuration file (oamsys.cfg) is for two boards (CX 2000C and AG 4000C) configured in a system:

#-------------------------------------------------------
# oamsys.cfg
# This is the default OAM system configuration file,
# used by the oamsys tool. It describes all the NMS
# boards in a chassis.
#
# Each board is has its own section in this file.
# Each is delimited by a user-defined board name in
# square brackets. All board names and numbers must
# be unique.
#
# You will need to modify the bus and slot numbers
# for each board to match your chassis configuration.
# You may also need to add more board sections if you
# have more boards in your chassis.
#----------------------------------------------
#-------------------------------------------------------------
# Logical board number, physical bus, physical slot
#
#------------------------------------------------------------
[Board0]
Product = AG_4000C_T1
Number = 0
# This assumes that pciscan located this board on pci bus 2, slot 10
# Make the appropriate changes for your configuration
Bus = 2
Slot = 10
File = agpi4000.cfg
[Board1]
Product = CX 2000C-48
Number = 1
# This assumes that pciscan located this board on pci bus 2, slot 14
# Make the appropriate changes for your configuration
Bus = 2
Slot = 14
File = cx2000.cfg

### PPX configuration file

The Point-to-Point Switching (PPX) service requires its own configuration file, which it uses when it is started. This service must be started by the user. The PPX configuration file (ppx.cfg) must reside in \nms\ctaccess\cfg (/opt/nms/ctaccess/cfg under UNIX). The following example shows the ppx.cfg file needed to support the demonstration program configuration:

# ppx.cfg
#
# --- Point-to-Point Switching Service ---
# --- Configuration ---
#
# This file defines to the point-to-point switching service
# the available bus, timeslots, and switches it may use for
# establishing connection paths.
#
# This configuration file contains example switch definitions
# for the various NMS boards. Use this as a guide for
# configuring the PPX service to your particular hardware
# configuration.
#
# Some Reminders:
# - All switch numbers must be unique.
# - The "DeviceNumber" is the board number established
# during H/W configuration.
# - The PPX service speaks MVIP-95, not MVIP-90.
#
#
[PPX]
Fabric
IdleCode = MU_LAW # Default idle pattern [ MU_LAW | A_LAW ]
Bus H100 # H100 bus
CTBUS:0..15:0..31
CTBUS:16..23:0..63
CTBUS:24..31:0..127
End Bus
Bus MVIP_90 # MVIP-90 bus
Bus H100 (CTBUS:0..15:0..31)
End Bus
Switch 0 # AG4000
SwitchType = HMIC
DeviceName = "agsw"
DeviceNumber = 0
Bus H100 ()
Inputs
LOCAL:0..14(2):0..23 # Trunk (or ..29 for Es)
LOCAL:16..18(2):0..127 # DSP
LOCAL:20..26(2):0 # HDLC
End Inputs
Outputs
LOCAL:1..15(2):0..23 # Trunk (or ..29 for Es)
LOCAL:17..19(2):0..127 # DSP
LOCAL:21..27(2):0 # HDLC
End Outputs
End Switch
Switch 1 # CX2000
SwitchType = HMIC
DeviceName = "cxsw"
DeviceNumber = 1
Bus H100 ()
Inputs
LOCAL:0..2(2):0..47 # 48 station interfaces
LOCAL:4..6(2):0..47 # Limited DSP
End Inputs
Outputs
LOCAL:1..3(2):0..47 # 48 station interfaces
LOCAL:5..7(2):0..47 # Limited DSP
End Outputs
End Switch
End Fabric