BPQ Home   BPQ32 Home G8BPQ Node Configuration File

G8BPQ Node Configuration File

Introduction

The BPQ32 Node is configured by editing the file bpq32.cfg. Previous versions used file bpqcfg.txt, which had to be converted using program bpqcfg.exe. This is no longer necessary. There is an experimental program WinBPQCfg.exe, which provides a GUI interface to the configuration.

Most configuration statements take the form of a KEYWORD=VALUE pair. A few take the form:

NAME:
One or more lines of text
****

Comments may be included. Anything following a ; in a source line is ignored. Multiline comments may also be included, delimited by /* and */. For example:

; This is a comment line
KEYWORD=VALUE ; This is a comment on a configuration statement
/*
This is a multiline comment
Line 2
*/

C programmers please note - unlike C, /* and */ must start in column 1.

If you do not want to run any ax.25 links (ie only WINMOR or PACTOR), there is a simplified configuration option. See here

Configuration Command Categories

Environment

These set the basic software environment.

LOCATOR
This enables reporting to the node map. See here for details.

PASSWORD
This replaces the PASSWORD.BPQ file, and sets the password for the node SYSOP feature. See here for details.

BBS
This enables application support. If your system does not provide access to any application programs, then you could set BBS=0, but leaving it at 1 will do no harm.

NODE
This allows users to connect to your node, and then connect out to other stations. If NODE=0, then uses will only be able to connect to your applications, and not to the node command handler.

IPGATEWAY
Enables the IP Gateway feature. This enables you to handle IP over ax.25.

ENABLE_LINKED
This controls the *** LINKED command, which is intended for use by gateway software.
It can take one of three values:

ENABLE_LINKED=Y 	 	 Allows unrestricted use.	
ENABLE_LINKED=A 		 Allows use by application programs.
ENABLE_LINKED=N			 Disables the command

As unrestricted use could be a security problem, I suggest it is set to A unless there are good reasons to do otherwise

C_IS_CHAT
This controls whether a CONNECT command without a callsign is interpreted as a request for Application #2. If BPQTERMINAL has the option "Enable Chat" set, it accepts connections for Appl #2, allowing a user to "chat" to you by typing C.


The following set the size of internal tables. Memory for these is allocated from the same pool as used for Buffers, so if you define many more than you need you could run short of buffers.

MAXLINKS
Maximum Level 2 lines (Uplink, Downlink and Internode)

MAXNODES
Number of Nodes (L4 destinations)

MAXROUTES
Number of adjacent Nodes

MAXCIRCUITS
Number of L4 Circults. Each connection through your node uses two L4 Circuit entries, so this should be at least twice the number of simultaneous users you want to allow.

BUFFERS
Number of packet buffers to allocate - 999 means allocate as many as possible. You are unlikely to use any other value, unless testing what heppens when the node runs short of buffers.


Station Identification

NODECALL
The callsign used by the node

NODEALIAS
A symbolic name for the node.


IDMSG:
IDINTERVAL
IDMSG is sent every IDINTERVAL minutes. It is sent from the PORT Callsign if one is defined, otherwise from NODECALL. The main purpose of this is to satisfy the requrements of those administations that require a regular station identification in the same mode as used for communication.

Information for Users

CTEXT:
Text to send to a user when he/she connects. If FULL_CTEXT is set to 1, it will be sent to all connects. If FULL_CETEXT is set to 0, it will only be sent to users who connect directly to the Node Alias.

FULL_CTEXT
See above. Normally should be set to 1, unless you have problems with the CTEXT confusing a system that connects to you.

INFOMSG:
Text sent in response to the Node INFO (I) command.

BTEXT:
BTINTERVAL
BTEXT is the default beacon sent by the Node, every BTINTERVAL minutes. Note that application programs may change this, or generate their own beacons.
An APRS compatible position may be included, for example:

BTEXT:
=5828.54N/00612.69W- {BPQ32}
G8BPQ's Test Node
***

ax.25 Level 2 Parameters

Most Level 2 parametes are specified in the PORTS section.

T3
Link Validation Timer. If there is no activity for T3 seconds, an RR(P) command will be sent to make sure the other station is still there.

IDLETIME
If there is no traffic for IDLETIME seconds, the link will be closed.

PACLEN
PACLEN defines maximum size for packets generated by the node. Many applications will obey the PACLEN parameter, but unfortunately some do not. The ideal size depends on the link(s) over which a packet will be sent. For a session involving another node, we have no idea what is at the far end. When the node is accessed directly, things are a bit easier, as we know at least something about the link. So there are two PACLEN params, one here and one in the PORTS section. This one is used to set the initial value for sessions via other nodes, and for sessions initiated from here. The other is used for incoming direct (Level 2) sessions.

A NETROM link can only handle packets of up to 236 bytes without fragmetation, so don't go above this unless you don't have any NETROM links.

Port Configuration

This defines your external links - either to radios, or to other computers, modems, etc.

Each port is defined by a set of statements of the form:


PORT
	PARAM=VALUE
	..
	..
ENDPORT


Samples of various configurations are given later, but the full list
of PARAM values supported is given below

PORTNUM=n
Number for use in PORTS display, connects, etc. Default is next sequential number.

ID=text string
Up to 30 chars, appears on PORTS display

TYPE=ASYNC/DRSI/PC120/RLC100/INTERNAL/EXTERNAL/BAYCOM/PA0HZP
Hardware type.

ASYNC is for a normal ASYNC card.

INTERNAL defines a 'loopback' port - anything sent on it will be received. Intended to allow KISS applications (eg TCP/IP) to talk to the switch.

EXTERNAL defines a port using a driver .dll.

PC120, DRSI, RLC100, BAYCOM, PA0HZP are the internal HDLC cards, the first two support up to two channels, the others up to 4. Note that support for HDLC Cards is experimental, and requires OS-specfic hardware drivers. Contact me if you would like to try them.

DLLNAME=file.dll
The driver to use if TYPE=EXTERNAL. Many of these drivers are now built in to bpq32.dll, but they are still configured as if they were separate .dll files.
The following drivers are provided:

BPQtoAGW.dll

This allows BPQ32 to use SV2AGW's AGW Packet Engine as a virtual TNC. This allows BPQ32 to interface via sound cards, or indeed any device supported by AGWPE.

BPQAXIP.dll

Supports Node to node connections over the Internet using AX/IP or AX/UDP.

BPQETHER.dll

Supports a connection over a local Ethernet to other BPQ (DOS or BPQ32) systems, or others supporting the BPQETHER protocol (eg Linux, NOS).

BPQVKISS.dll

Provides a virtual KISS TNC via an emulated serial port. Allows applications written to talk to a KISS TNC (such as UI-View (16bit), G7JJF's WINTNC, WinAPRS) to use BPQ32.

AEAPactor.dll

This allows BPQ32 to use a AEA/Timewave PK232 Controller in Pactor Mode.

HALDriver.dll

This allows BPQ32 to use a HAL Controller in Clover or Pactor Mode.

KAMPactor.dll

This allows BPQ32 to use a Kantronics KAM Controller in Pactor Mode.

SCSPactor.dll

This allows BPQ32 to use an SCS PTC Controller in Pactor Mode.

Winmor.dll

This allows BPQ32 to use the Winmor Virtual TNC.

PROTOCOL=HDLC/KISS/NETROM/PACTOR/WINMOR
Protocol to be used on the link.

NETROM is to connect to the async port of a real NETROM KISS is to connect to a KISS TNC

IOADDR=xxxH
The COM Port Number for Async Cards. The base I/O address for HDLC cards. In hex.

INTLEVEL=n
The interrupt level to be used for HDLC cards. Any spare level may be used, up to 7 on an 8 bit card, or 15 on a 16 bit card. More than one card may share a level if the hardware has the necessary logic.

SPEED=nnnn
The radio speed for HDLC cards, or the async link speed for KISS and NETROM links. If set to zero, the modem must supply a 1x clock. (TXC on RTXC pin, RXC on TRXC pin.)

CHANNEL=A/B/..
Selects port on HDLC cards, dual port KISS (eg KPC4) or Multidropped KISS

BBSFLAG=NOBBS
Stops direct connects to the BBS on this port.

NOKEEPALIVES=0/1
If set, causes Nodes heard on this port to be added to the ROUTES table with the "No Keepalives" flag set. Locked Routes will still have the Keepalive setting definded in the ROUTES: section.

QUALITY=nnn
Default quality for nodes heard on this port. Set to zero to suppress all level 3/4 activity (including NODES broadcasts) on this port.

MAXFRAME=n
Maximum outstanding frames.

TXDELAY=nnn
TX Keyup delay in milliseconds

SLOTTIME=100
CSMA interval timer (milliseconds)

PERSIST=nnn
'Probability to transmit' value (1-255)

FULLDUP=0/1
Passed on to TNC if using KISS. Used to allow transmission whilst DCD is active on HDLC cards, and to allow connection of a NETROM cluster via a diode matrix.

SOFTDCD=0/1
If set to 1, system uses the detection of a valid frame to indicate that the channel is busy, rather than the DCD signal from the modem. Used only for HDLC cards.

TXTAIL=nnnn
TXTAIL timer in ms. Used only by KISS TNCs. If running on HF at 300 baud, the default is probably too short. If others have trouble copying your frames, try a value of 50 - 100.

FRACK=nnnn
Level 2 timout in milliseconds

RESPTIME=nnnn
Level 2 delayed ack timer in milliseconds

RETRIES=n
Level 2 maximum retry value

PACLEN=nnn
Default maximum packet length for this port

CWID=CALL
Only used on HDLC cards. CWID is sent every 29 mins.

CWIDTYPE=ONOFF
Send CWID using ON-OFF Keying. Without this param, the CWID will be sent using normal modem tones. This is fine for low speed links, but faster modems (eg the G3RUH) include scramblers which make it impossible to read the CW. Note that the TX must have a pretty fast keying characteristic to work with ON-OFF keying - certainly < 20mS.

PORTCALL=CALL
PORTALIAS=ALIAS
PORTALIAS2=ALIAS2
Additional callsign/alias for level 2 connects to the node for this port. Should not be the same as BBSCALL

BCALL=CALL
Call used as the origin for beacons on this port

ALIAS_IS_BBS=0/1
If set then PORTCALL and PORTALIAS access the BBS instead of the node.

VALIDCALLS=CALLS
Up to about 40 callsigns, separated by single commas. If present, only stations in the list will be allowed to connect to you on this port. The SSID should not be specified, and multiple VALIDCALLS lines may be included. End all but the last line with commas. The total length of the list, including commas, is 256 bytes.

MINQUAL=NNN
Defines the minimum quality for a destination to be included in a 'Nodes' broadcast on this port.

QUALADJUST=NNN
Percentage to reduce the quality of a NODE in the NODES broadcast, if the best neighbour is on the same port as the broadcast. Designed to improve throughput if more than one channel is available, by discouraging routes which cause a node to send a packet on the same port that it received it on.

NODESPACLEN=NNN
The maximum length of a NODES broadcast packet.

DIGIFLAG=0/1/255
Digipeat control flag for this port. 0 = dont digi, 1 = digi everything, 255 = digi UI frames only.

DIGIPORT=N
Port to send digied frames on. Zero means the port it was received on, any other number means send on that port.

DIGIMASK=XXXX
If set, a packet to be digipeated will be sent to all ports that have the corresponding bit set in DIGIMASK. This should only be used in conjunction with DIGIFLAG=255 - sending other than UI frames to more than one port is not a good idea!

MAXDIGIS=N
Limits the number of digipeaters that can be used to access this port

USERS=N
This limits the number of L2 sessions to the supplied number. Zero means no limit. The limit applies to all L2 sessions (even those with other nodes), but is only checked for incoming connects (ie you can make outgoing connects even when the limit is reached). Intended mainly to control the number of users on busy user access ports (especially 2m).

UNPROTO=
Unproto destination and digi string for this port. Use commas between calls, and dont include the VIA.

L3ONLY=0/1
If set, will stop users (but not HOST sessions) issuing downlink connects on this port.

INTERLOCK=n
Used with Pactor or WINMOR ports to prevent two ports being active at the same time (for example if using WINMOR and Pactor on the same radio).
Also used with HDLC cards to allow groups of ports to be defined which will not transmit at the same time. A value of zero indicates no locking, if any other value is specifed the code will make sure that no two ports with the same value can transmit at the same time.

TXPORT=n
Allows frames for this port to be transmitted on a different port. This is for use when you are operating a central node, with a single transmitter, and a number of receivers.

MHEARD=Y/N
Enables or disables the MHEARD function on this port. There is a slight overhead in maintaining the MHEARD list, so if it is not needed (eg on an internode port) it may be disabled. Default is enabled.

KISSOPTIONS=POLLED,CHECKSUM,ACKMODE,SLAVE,D700
These select my extended KISS mode.

These extended KISS options are supported by my BPQKISS EPROM for the TNC2 and clones, and by special EPROMS for the KPC2, KPC4 and KAM, available from Kantronics.

POLLED selects multi-dropped mode, where the TNC only transmits when requested (Polled) by the PC. This allows several TNCs to share an async port without any risk of collisions.

CHECKSUM selects a mode where a checksum byte is appended to each data message, and checked by the other end. This reduces the risk of data corruption if errors occur on the link from PC to TNCs. It may be used on its own, but should always be used if POLLED mode is selected.

ACKMODE enables the transmission of 'ACK required' frames. These cause the TNC to send a reply when the frame has been transmitted. This will improve link performance by avoiding the possibility of a retry being sent before the original frame has even left the TNC. This mode should always be used if the TNC support it.

SLAVE allows a PC to be multidropped along with one or more KISS TNCs on a multidropped link. If you use SLAVE, you shouldn't set POLLED, and you shouldn't use ACKMODE on either end.

D700 removes the risk of accidentally taking D700/D710 radios out of KISS Mode

CONFIG
Some drivers require additional configuration (see the docs for each driver for details). Although the software still supports uising a separate config file, it is now recommended that it is included in bpq32.cfg. If included here, it must be preceeded by the CONFIG statement, and come immediately before ENDPORT.

NETROM Networking Parameters

OBSINIT
Initial Obsolescence value

OBSMIN
Minimum Obsolescence value to be included in NODES broadcasts.

NODESINTERVAL
Time between NODES broadcasts (seconds)

L3TIMETOLIVE
Maximum Level 3 hops

L4RETRIES
Level 4 Retries

L4TIMEOUT
Level 4 Timeout

L4DELAY
Level 4 Delayed ACK timer

L4WINDOW
Level 4 Window

MINQUAL
Minimum Quality to add to NODES table.

HIDENODES
Suppresses the display of NODES with an Alias that starts with a # sign.


MAXRTT
Used for INP3 routing. The largest Round Trip Time to be added to your IMP3 routing table

MAXHOPS
Used for INP3 routing. The largest hop count to be added to your IMP3 routing table

AUTOSAVE
Causes the NODES and ROUTES tables to be saved to file BPQNODES.DAT when the switch closes. They will be reloaded when the program is restarted.

Application Configuration

You can define additional Node commands that are available to your users. These may connect to applications running on you computer, or be aliases or 'shortcuts' to other node commands. For example you can define the command "BBS". This can either be set up to connect to a BBS running on your computer, or to be an alias for a command that connects to a BBS on another system. You can set up a callsign that if connected to will select the command, and if required cause the call to be added to your NODES list.

There are two ways of defining this:

"New" Method

APPLICATION n,CMD,New Command,Call,Alias, Quality

n Application Number. You can define up to 32.
CMD The command the user types
New Command (optional) The Node command to be run
Call (optional) The call which directly invokes CMD
Alias and Quality (optional) If specified, causes an entry for Call and Alias to be added to your NODES table with the specified Quality
For example: APPLICATION 1,BBS,,G8BPQ,BPQBBS,200 APPLICATION 2,CHAT,,G8BPQ-1,BPQCHT,255 APPLICATION 3,DX,C DXCLUS

Legacy Method

APPLICATIONS=BBS,CHAT,DX/C DXCLUS

APPL1CALL=G8BPQ
APPL1ALIAS=BPQBBS
APPL1QUAL=200

APPL2CALL=G8BPQ-1
APPL2ALIAS=BPQCHT
APPL2QUAL=255

Note that only the first eight applications can be defined using the Legacy method.

The following three parameters are obsolescent. They are aliases for APPL1CALL, APPL1ALIAS and APPL1QUAL. They are still accepted for compatibility with old config files.

BBSALIAS
BBSCALL
BBSQUAL

Locked Routes

Normally routes to other nodes are learned from NODES braodcasts, but routes can be locked if you want to use other than the normal port quality, change some of the L2 parameters, or enable INP3 Mode.

Format is

CALLSIGN,QUALITY,PORT[,MAXFRAME,FRACK,PACLEN,INP3Flag]

MAXFRAME, FRACK and PACLEN if stated override the port defaults.

INP3Flag = 1 enables INP3, 0 or null disables. If using INP3 you should normally disable normal Quality based routing by setting QUALITY to 1 - eg HISCAL-12,1,1,0,0,0,1

Normally the node will try to keep links open to all its neighbours. This can be disabled by setting INP3Flag to 2.

Note that locking a route with QUALITY=0 will prevent the station connecting to you.

Obsolete Parameters

The following six parameters were used by DOS BPQCODE, but are not used by BPQ32. They are accepted, but will be ignored

EMS
DEDHOST
DESQVIEW
HOSTINTERRUPT
TRANSDELAY
TNCPORT


The following two parameters are no longer used by BPQ32.

L4APPL
UNPROTO
  (in the main section of the config file - it is still a PORT configuration parameter)

"Simple" Configuration Mode

The configuration command SIMPLE sets the following values:

BBS = 1
BTINTERVAL = 60
BUFFERS = 999
C_IS_CHAT = 1
FULLCTEXT = 1
HIDENODES = 0
IDINTERVAL = 10
IDLETIME = 900
IPGATEWAY = 0
L3TIMETOLIVE = 25
L4DELAY = 10
L4RETRIES = 3
L4TIMEOUT = 60
L4WINDOW = 4
LINKEDFLAG = 'A'
MAXCIRCUITS = 128
MAXDESTS = 250
MAXHOPS = 4
MAXLINKS = 64
MAXNEIGHBOURS = 64
MAXRTT = 90
MINQUAL = 150
NODE = 1
NODESINTERVAL = 30
OBSINIT = 6
OBSMIN = 5
PACLEN = 236
SAVENODES = 1
T3 = 180

The following is an example of a configuration using SIMPLE mode.

;	 WINMOR to RMS configuration using SIMPLE Mode

SIMPLE

NODECALL=G8BPQ

INFOMSG:
G8BPQ's WINMOR to RMS Gateway
***

PORT
 ID=WINMOR Port 1
 TYPE=EXTERNAL
 DLLNAME=WINMOR.dll
 PROTOCOL=WINMOR
 CONFIG                 ; Driver-Specific Configuration
 ADDR 127.0.0.1 8500 PATH C:\Program Files\bpq32\Winmor\Winmor TNC.exe
 CWID True
 BW 1600
 DRIVELEVEL 100
ENDPORT

APPLICATION 1,RMS,,G8BPQ-10

Alphabetic list of all configuration commands

APPLnALIAS    where n can be 1 to 8
APPLnCALL
APPLnQUAL
APPLICATION
APPLICATIONS
AUTOSAVE
BBS
BBSALIAS
BBSCALL
BBSQUAL
BTEXT:
BTINTERVAL
BUFFERS
C_IS_CHAT
CTEXT:
DEDHOST
DESQVIEW
EMS
ENABLE_LINKED
FULL_CTEXT
HIDENODES
HOSTINTERRUPT
IDINTERVAL
IDLETIME
IDMSG:
INFOMSG:
IPGATEWAY
L3TIMETOLIVE
L4APPL
L4DELAY
L4RETRIES
L4TIMEOUT
L4WINDOW
LOCATOR
MAXCIRCUITS
MAXHOPS
MAXLINKS
MAXNODES
MAXROUTES
MAXRTT
MINQUAL
NODE
NODEALIAS
NODECALL
NODESINTERVAL
OBSINIT
OBSMIN
PACLEN
PASSWORD
PORT
ROUTES:
SIMPLE
T3
TNCPORT
TRANSDELAY

Typical Configuration File

The following is a typical configuration file with embedded comments.


;
;
;	CONFIGURATION FILE FOR G8BPQ SWITCH SOFTWARE
;
;	The order of parameters in not important, but they
;	all must be specified - there are no defaults
;
PASSWORD=ABCDEFGHILKLMNOPQRSTUVWXY	  	 ; SYSOP Passord

LOCATOR=IO68VL		; Enable Map Reporting
;
;
;	BBS enables the Application support system. If you have specified any of the APPLnCALLS,
;	you should set BBS to 1.
;
BBS=1		; INCLUDE BBS SUPPORT
;
;	NODE
NODE=1		; INCLUDE SWITCH SUPPORT


; The NODES and ROUTES tables can be saved, so that they can be reloaded when the software is restarted,
; rather than having to wait for the tables to be rebuilt. There is a program SAVENODES.exe and a command
; to the BPQ32 console to to this. By Setting AUTOSAVE=1, the tables will be saved each time the softare closes

AUTOSAVE=1		; Save Nodes File before exiting

;
;	Station Identification.
;
;	If a user connects to the NODE Callsign or Alias, he is linked
;	to the switch code, and can use normal NetRom/TheNet commands
;
;	If he connects to an Application Callsign or Alias he will be connected
;	directly to the corresponding application. If not available, the connect will
;	be rejected. See the section on Application Calls towards the bottom of the file for
;	more information.
;
;	Note that for compatibility with the DOS version, and older versions of BPQ32, BBSCALL is an alias for APPL1CALL,
;	and BBSALIAS is an alias for APPL1ALIAS. If both BBSCALL and APPL1CALL are specified, the BBSCALL will be ignored.	
;

NODECALL=G8BPQ-2	; NODE CALLSIGN
NODEALIAS=BPQ

;	'ID' MESSAGE - SENT EVERY IDINTERVAL MINS
;
;	WILL BE ADDRESSED FROM THE PORT CALLSIGN (IF DEFINED)
;	     ELSE FROM THE NODE CALL
;
;	The main purpose of this is to satisfy the requrements of those administations that require a regular station 
;	identification in the same mode as used for communication. 

IDMSG:
Network node (BPQ)
***
;

;	'I' COMMAND TEXT
;
;
INFOMSG:
G8BPQ Win32 Test Switch, Skigersta, Isle of Lewis.
***

; BTEXT is the default beacon sent by the Node. Note that application programs may change this, or
; generate their own beacons.

; An APRS compatible position may be included. 

BTEXT:
=5828.54N/00612.69W- {BPQ32}
G8BPQ's Test Node
***

IDINTERVAL=15		; 'ID' BROADCAST INTERVAL (UK Regs require an AX25 ID every 15 mins)
BTINTERVAL=15		; BTEXT is sent at this interval

;
;	CTEXT - Normally will only be sent when someone connects to 
;	the NODE ALIAS at level 2. If FULL_CTEXT is set to 1, it 
;	will be sent to all connectees. Note that this could confuse BBS
;	forwarding connect scripts. 
;
CTEXT:
Welcome to G8BPQ's Test Switch in Skigersta
Type ? for list of available commands.
***

FULL_CTEXT=0		; SEND CTEXT TO EVERYBODY


;	Network System Parameters. 
;
;	These are my values. Many other node sysops use other values. If in doubt, liase with
;	those running nodes that you link to

OBSINIT=5		; INITIAL OBSOLESCENCE VALUE
OBSMIN=4		; MINIMUM TO BROADCAST
NODESINTERVAL=60		; 'NODES' INTERVAL IN MINS

L3TIMETOLIVE=25		; MAX L3 HOPS
L4RETRIES=4;		; LEVEL 4 RETRY COUNT
;
L4TIMEOUT=60;		; LEVEL 4 TIMEOUT
L4DELAY=10		; LEVEL 4 DELAYED ACK TIMER
L4WINDOW=4		; DEFAULT LEVEL 4 WINDOW
;
MINQUAL=140		; MINIMUM QUALITY TO ADD TO NODES TABLE	


;	The following MAX params set the limits for various tables. 
;
;	Although significantly larger values can be used, a common area is used
;	for these tables and the buffer pool, so don't increase them more than 
;	necessary.

MAXLINKS=100		; MAX LEVEL 2 LINKS (UP,DOWN AND INTERNODE)
MAXNODES=300; 		; MAX NODES IN SYSTEM
MAXROUTES=30		; MAX ADJACENT NODES
MAXCIRCUITS=150		; NUMBER OF L4 CIRCUITS

	

BUFFERS=999		; PACKET BUFFERS - 999 MEANS ALLOCATE AS MANY
				; AS POSSIBLE - NORMALLY ABOUT 600, DEPENDING
				; ON OTHER TABLE SIZES
;
;	TNC DEFAULT PARAMS
;
PACLEN=236		; MAX PACKET SIZE
;
;	PACLEN is a problem! The ideal size depends on the link(s) over
;	which a packet will be sent. For a session involving another node,
;	we have no idea what is at the far end. Ideally each node should have
;	the capability to combine and then refragment messages to suit each
;	link segment - maybe when there are more of my nodes about than 'real'
;	ones, i'll do it. When the node is accessed directly, things are a
;	bit easier, as we know at least something about the link.
;	So there are two PACLEN params, one here and
;	one in the PORTS section. This one is used to set the initial value
;	for sessions via other nodes, and for sessions initiated from here.
;	The other is used for incoming direct (Level 2)	sessions. In all cases
;	the Node PACLEN command can be used to override the defaults.
;
;	236 is the largest that can be sent over a NETROM link without fragmetation.
;	so don't go above this unless you don't have ant NETROM links.
;
;	Level 2 Parameters
;
; 	Most Level 2 parametes are specified in the PORTS section'
;
T3=180	 	   	 	; LINK VALIDATION TIMER (3 MINS)
IDLETIME=900		; IDLE LINK SHUTDOWN TIMER (15 MINS)	
;
;
HIDENODES=0		; IF SET TO 1, NODES STARTING WITH # WILL
				; ONLY BE DISPLAYED BY A NODES * COMMAND
;
;	THE *** LINKED COMMAND IS INTENDED FOR USE BY GATEWAY SOFTWARE, AND
;	CONCERN HAS BEEN EXPRESSED THAT IT COULD BE MISUSED. I RECOMMEND THAT
;	IT IS DISABLED IF NOT NEEDED.
;
ENABLE_LINKED=A		; CONTROLS PROCESSING OF *** LINKED COMMAND
				; Y ALLOWS UNRESTRICTED USE
				; A ALLOWS USE BY APPLICATION PROGRAM
				; N (OR ANY OTHER VALUE) DISABLE
;
;

IPGATEWAY=1			; Enables IP over ax.25 <> IP over Ethernet Gateway
;
;
;	AX25 PORT DEFINITIONS
;
;	These define the external links - normally to radios, but possibly
;   to other computers, modems, etc. 
; 

;	The KISS protocol supports dual port TNC's such as the KAM and KPC4.
;	You should define two port entries with the same IO addr
;	and SPEED - set CHANNEL=A for the first and B for the second.
;
; 	Note that all timer values are in ms intervals. Most TNC's
;	use different units for the various timers, so be careful!
;
;	All parameters should be set for all ports, but not all
;	drivers support all features. For instance, the NETROM driver
;	does not use the TXDELAY, SLOTTIME and PERSIST values. The NETROM
;	driver only works in FULL DUPLEX mode, and the HDLC only in
;	HALF DUPLEX.
;;
;	CWID works only on DRSI and PC120 cards, and can be suppressed 
;	by omitting the parameter.
;
;	BECAUSE OF OUR ODD LICENCING CONDITIONS YOU MAY WISH TO BAN
;	CONNECTIONS TO THE BBS CALLSIGN ON SOME PORTS - USERS MAY STILL
;	CONNECT USING L4, OR CONNECT TO THE NODE ADDR, AND USE BBS
;	COMMAND. PUT 'BBSFLAG=NOBBS' TO ACTIVATE THIS FUNCTION.
;	'BBSFLAG=BBSOK', OR NO PARM, MEANS BEHAVE AS NORMAL
;
;	You can have an extra callsign and alias for each
;	port for user access only. The callsigns defined in NODECALL and
;	BBSCALL are used for all networking activity.
;

PORT
 ID=LOOPBACK
 TYPE=INTERNAL
 PROTOCOL=KISS
 CHANNEL=A
 QUALITY=0
 MAXFRAME=6
 FULLDUP=0
 FRACK=10000
 RESPTIME=3000
 RETRIES=10
 PACLEN=200
 TXDELAY=500
 SLOTTIME=100
 PERSIST=64
 DIGIFLAG=1
 UNPROTO=FBB
ENDPORT

PORT
 ID=AXIP Link
 TYPE=EXTERNAL
 DLLNAME=BPQAXIP.DLL
 QUALITY=200
 MAXFRAME=4
 FRACK=5000
 RESPTIME=1000
 RETRIES=10
 PACLEN=236
 MINQUAL=150
 UNPROTO=FBB		; DEFAULT UNPROTO ADDR
 BCALL=GM8BPQ		; Call for Beacons

ENDPORT

PORT
 ID=BPQEther Link
 TYPE=EXTERNAL
 DLLNAME=BPQETHER.DLL
 QUALITY=200
 IOADDR=2
 CHANNEL=A
 MAXFRAME=7
 FRACK=5000
 RESPTIME=1000
 RETRIES=10
 PACLEN=236
 MINQUAL=255
 UNPROTO=MAIL		; DEFAULT UNPROTO ADDR
ENDPORT

;
; WINMOR Port with config included here, instead of BPQtoWINMOR.cfg
;
PORT
 ID=WINMOR Port 1
 TYPE=EXTERNAL
 DLLNAME=WINMOR.DLL
 INTERLOCK=4
 CONFIG
 ADDR 127.0.0.1 8506 PTT DTR
 RIGCONTROL COM61 4800 ICOM IC718 5E 5 3.573/u1nA1 7.077/u1 10.133/u1 10.146/u1wA3 14.1105/u1w
 CWID True
 BW 1600
 DRIVELEVEL 100
 BUSYLOCK False

ENDPORT

PORT
 ID=KAM PACTOR COM 100
 TYPE=EXTERNAL
 PROTOCOL=PACTOR
 IOADDR=64
 SPEED=9600
 DLLNAME=KAMPACTOR.DLL
 QUALITY=0
 INTERLOCK=4
ENDPORT

PORT
 ID=SCS PACTOR COM 103
 TYPE=EXTERNAL
 PROTOCOL=PACTOR
 IOADDR=67
 SPEED=38400
 DLLNAME=SCSPACTOR.DLL
 QUALITY=0
 PORTCALL=GM8BPQ
ENDPORT

PORT
 ID=HDLC Link
 TYPE=DRSI	
 IOADDR=300H
 INTLEVEL=7
 SPEED=1200
 CHANNEL=A
 QUALITY=200
 MAXFRAME=4
 FRACK=7000
 RESPTIME=1000
 RETRIES=10
 PACLEN=120
 CWID=G8BPQ
 UNPROTO=ID
 TXDELAY=500
 SLOTTIME=100
 PERSIST=64

ENDPORT

PORT
 ID=KISS COM53
 TYPE=ASYNC
 PROTOCOL=KISS
 IOADDR=35					; Remmber this is hex - 35 = 53 decimal
 SPEED=9600
 INTLEVEL=4
 CHANNEL=A
 QUALITY=0
 MAXFRAME=6
 FULLDUP=0
 FRACK=10000
 RESPTIME=3000
 RETRIES=10
 PACLEN=200
 TXDELAY=500
 SLOTTIME=100
 PERSIST=64
 DIGIFLAG=1
;
;	KISSOPTIONS=ACKMODE
;	KISSOPTIONS=POLLED,CHECKSUM

 UNPROTO=FBB
ENDPORT

PORT
 ID=VKISS COM2 Link to MIXW
 TYPE=EXTERNAL
 DLLNAME=BPQVKISS.DLL
 QUALITY=200
 IOADDR=2
 CHANNEL=A
 MAXFRAME=4
 FRACK=5000
 RESPTIME=1000
 RETRIES=10
 PACLEN=120
 DIGIFLAG=1
 DIGIMASK=65535		; Digi UI Frames to all ports

ENDPORT


PORT
 ID=AGW Port 1
 TYPE=EXTERNAL
 DLLNAME=BPQtoAGW.DLL
 QUALITY=0
 IOADDR=1F41
 CHANNEL=A
 MAXFRAME=4
 FRACK=7000
 RESPTIME=1000
 RETRIES=10
 PACLEN=120
 UNPROTO=MAIL		; DEFAULT UNPROTO ADDR
;
ENDPORT

PORT
 ID=AGW Port 2
 TYPE=EXTERNAL
 DLLNAME=BPQtoAGW.DLL
 QUALITY=0
 IOADDR=1F41
 CHANNEL=B
 MAXFRAME=4
 FRACK=7000
 RESPTIME=1000
 RETRIES=10
 PACLEN=120
 UNPROTO=MAIL		; DEFAULT UNPROTO ADDR

ENDPORT




ROUTES:
;
;	ROUTES TO LOCK IN
;
;	specify Callsign, Quality and Port. You can now also specify
;	MAXFRAME, FRACK, PACLEN (in that order) to override the port
;	defaults.
;
;
AE5E-14,200,2,0,0,0,2     ; No Keepalives
;G4RFG,0,1                ; Marginal, So lock out by setting QUALITY = 0
;G0GDR-1,100,2,1,6000,100 ; not always very good, so MAXFRAME = 1
***
;
;	APPLICATIONS SUPPORTED
;
;	NAMES STARTING WITH * ARE NOT INCLUDED IN 'VALID COMMANDS' DISPALY
;

APPLICATION 1,RMS,,GM8BPQ-10,BPQRMS,0
APPLICATION 2,CHAT,,G8BPQ-4,BPQCHT,255
APPLICATION 3,FBB,,GM8BPQ-3,BPQFBB,0
APPLICATION 4,BBS,,G8BPQ,BPQBBS,255



John Wiseman G8BPQ
October 2010