Title: BPQ32_409u_Beta_20060217
Target: BPQ32 Beta Testers
Author: Ron Stordahl, N5IN
Date: February 17, 2006
1.0 DESCRIPTION
BPQ32 software is a product of John Wiseman G8BPQ/GM8BPQ, to whom the amateur radio community owes a debt of gratitude.
BPQ32 is not in the public domain; however it may be freely used by licensed radio amateurs in amateur radio packet applications. Informal assistance in using BPQ32 can be obtained through participation in the BPQ32 Yahoo Group.
This document is intended to guide users in testing of the beta release of BPQ32_409u.
This new version, while retaining the ActiveX (OCX) interface, offers a new program interface, AGWtoBPQ, bringing the full capabilities of BPQ32 to existing user programs having an AGWPE compatible interface.
BPQ32 is an AX.25 NET/ROM switch, running under Microsoft Windows®, which interfaces via standard RS232 com ports to TNC’s supporting KISS, JKISS, multi-drop BPQKISS and NET/ROM interfaces. It also supports connections via AX/IP/UDP as well as interfacing with AGWPE. This later capability allows BPQ32 to provide AX.25 NET/ROM services via sound card modems, in fact all device supported by AGWPE.
It is expected that those who choose to test this beta release of BPQ32 are already familiar with its use and configuration. Until full documentation for BPQ32 is written, the documents in archive bpq408a.zip remain essential reading!
2.0 BPQ32 file suite:
Name Type Modified Path
AGWtoBPQ.exe Application 1/11/2006 7:54 PM
bpq32.dll
Application ... 2/17/2006 7:31 PM
Bpq32.exe Application 2/16/2006 10:46 PM
BPQ32_Users_Group_Link... Internet Sho... 1/24/2006 2:53 PM
bpqadapters.exe
Application 12/20/2005 9:49
PM
bpqaxip.cfg CFG File 2/17/2006 12:40 PM
bpqaxip.dll
Application ... 1/29/2006 3:43 PM
bpqcfg.bin BIN File 2/17/2006 12:45 PM
Bpqcfg.exe Application 1/26/2006 9:19 AM
Bpqcfg.txt Text Document 2/17/2006 11:58 AM
BPQCtrl.ocx
ActiveX Control
12/9/2005 10:33 AM
BPQEther.cfg
CFG File 12/23/2005 3:10
PM
bpqether.dll
Application ... 1/26/2006 2:43 PM
bpqmon32.exe
Application 1/2/2000 11:59 AM
BPQNODES.dat
DAT File 2/17/2006 1:11 PM
bpqnodes.exe
Application 1/26/2006 11:16
AM
BPQregsvr.exe Application 10/20/2005 7:22 PM
bpqstatus.exe
Application 1/30/2006 1:58 PM
BPQTelnetServer.exe Application 8/12/2005 8:16 PM
BPQTelnetServer.ini Configuratio... 8/9/2005 1:49 PM
bpqterm.exe
Application 2/23/2005 1:54 PM
BPQTerminal.exe Application 2/11/2006 7:51 PM
Bpqterminal.hlp
Help File 10/19/2005 2:59
PM
BPQTNC2.dll Application ... 12/8/2005 10:09 PM
BPQTNC2.exe Application 12/23/2005 8:18 PM
BPQtoAGW.dll Application ... 2/15/2006 2:37 PM
BPQVirtualCOM.sys
System file 12/8/2005 9:51 PM
bpqvsp.dll
Application ... 12/8/2005 10:05
PM
ClearRegistryPath.exe Application 2/15/2006 9:15 PM
cswsk32.ocx ActiveX Control 9/25/2003 9:00 AM
LoadDevice.exe Application 12/23/2005 3:58 PM
Mscomm32.ocx ActiveX Control 6/24/1998 12:00 PM
password.bpq BPQ File 2/17/2006 1:01 PM
RegBPQ32.bat MS-DOS Batch... 12/23/2005 10:26 AM
SetRegistryPath.exe Application 2/15/2006 9:13 PM
unloadDevice.exe
Application 12/23/2005 3:48
PM
Vb40032.dll Application ... 1/12/1996 2:00 AM
VCOMConfig.exe Application 12/21/2005 12:12 PM
agwbits.txt
Text Document 10/12/2005 3:25
PM Docs\
BPQ32_409u_Beta_200602... HTM File 2/17/2006 5:30 PM Docs\
bpqaxip.doc
Microsoft Wo... 9/2/2001 7:57 PM Docs\
BPQCtrl.txt Text Document 2/24/2005 8:40 PM Docs\
bpqether.htm
HTM File 12/23/2005 3:38
PM Docs\
BPQTNC2.htm HTM File 12/12/2005 12:13 PM Docs\
bpqtnc2.jpg
JPG File 12/12/2005 9:38
AM Docs\
G8BPQ
Virtual Serial P... HTM File 12/12/2005 11:11 AM Docs\
RS232TNC2.htm HTM File 1/21/2006 8:02 PM Docs\
VCOMConfig.jpg
JPG File 12/12/2005 9:41 AM Docs\
bpqaxip.cfg CFG File 2/17/2006 12:40 PM Example_Configurations\Example_1\
bpqcfg.bin BIN File 2/17/2006 12:45 PM Example_Configurations\Example_1\
Bpqcfg.txt Text Document 2/17/2006 11:58 AM Example_Configurations\Example_1\
BPQNODES.dat
DAT File 2/17/2006 12:54 PM Example_Configurations\Example_1\
Password.bpq
BPQ File 2/17/2006 1:01
PM
Example_Configurations\Example_1\
bpqaxip.cfg CFG File 2/17/2006 11:46 AM Example_Configurations\Example_2\
Bpqcfg.bin BIN
File 2/17/2006 12:04 PM Example_Configurations\Example_2\
Bpqcfg.txt Text Document 2/17/2006 11:58 AM Example_Configurations\Example_2\
BPQNODES.dat
DAT File 2/17/2006 1:15
PM Example_Configurations\Example_2\
Password.bpq
BPQ File 11/14/2005 4:51 PM Example_Configurations\Example_2\
bpqcfg.bin BIN File 2/17/2006 1:09 PM Example_Configurations\Example_3\
BpqCfg.txt Text Document 2/17/2006 1:09 PM Example_Configurations\Example_3\
BPQNODES.dat
DAT File 2/17/2006 1:09
PM Example_Configurations\Example_3\
Password.bpq
BPQ File 2/17/2006 1:01
PM Example_Configurations\Example_3\
61
file(s)
Before copying these files onto your system, backup your existing BPQ32 directory, so that you do not delete files specific to your configuration.
3.0 APPLICATIONS
BPQ32 has two new interfaces. The first, AGWtoBPQ, on the front end, implements an AGWPE like interface, thus existing programs which are AGWPE compatible can now immediately interface with BPQ32. The second new interface, BPQtoAGW, on the back end, as defined in the Ports section of bpqcfg.txt, allows BPQ32 to access all devices supported by AGWPE. While the principal application of BPQtoAGW is to enable BPQ32 access to sound card modems via AGWPE, in fact any device that AGWPE supports can be accessed using the BPQtoAGW interface.
All of this new flexibility means that there are multiple ways of accomplishing the same objective. If, for example, you run only AR-Cluster, then you can choose either the native BPQ32 (BPQ-OCX) interface or the new AGWtoBPQ interface. But if you are running multiple applications, you will likely need the new AGWtoBPQ interface. As an example, AR-Cluster (OCX interface) requires the BPQ32 configuration files in c:..\AR-Cluster\BPQ32\, while UIView requires them in c:..\Peak Systems\UI-View32\. Perhaps there is another way around this, but switching to the AGWtoBPQ interface is an immediate solution.
On the backend BPQtoAGW can be used to access some or all of AGWPE compatible devices. If all the devices you care to access are directly accessible by BPQ32, there is little reason to call upon BPQtoAGW. I have done so primarily to confirm that this was possible and also to exhaustively test BPQtoAGW. While there is overlap in the devices each supports, only BPQ32 can access BPQKISS multidrop and NET/ROM devices while only AGWPE can access sound card modems. Your specific hardware will guide your configuration.
BPQ32 can be used stand alone or interfaced with a user application. User applications with which I have tested it include: AR-Cluster (ARC), UIView32 , UI-DX Bridge (UIDX) and AGWPE.
The supplied bpqcfg.txt and bpqaxip.cfg files contain useful information; however please save your existing bpqcfg.txt and bqpaxip.cfg files which contain data unique to your installation.
The provided bpqcfg.txt files contains many examples of port descriptions. I know there are redundant, but harmless, parameter settings in that configuration file. I will sort these out later.
3.01 AR-Cluster
ARC V4.4.22 supports BPQ32_409u. In ARC V4.4.22 (as was also the case in earlier versions), when BPQ32 (now displayed as BPQ-OCX in V4.4.22) is selected in the I/O panel, an entry is added to the Windows® registry which defines a path of c:\Program Files\AR-Cluster\Bpq32\ to BPQ32’s configuration files. In this case the entire suite of BPQ32 files must be in that subdirectory. In such an environment, ARC will likely be the principal user of BPQ32 program services.
With the new AGW interface to BPQ32 (AGWtoBPQ)
it is likely other user programs will simultaneously share the services of
BPQ32, and for that reason you may wish to place the entire BPQ32 suite of
files in its own folder. If you choose
to do so I would recommend c:\Program Files\BPQ32\. However, ARC users, who wish to be able to
easily switch between BPQ-OCX and AGWtoBPQ should
instead place the new BPQ32 program suite in the existing \AR-Cluster\BPQ32\
folder. I have been using the AGWtoBPQ interface with AR-Cluster (plus UiView32 and
To maintain compatibility for existing users who wish to continue to use ARC with the BPQ-OCX interface, ARC V4.4.22 changes the handling of the registry key thus:
If you select the BPQ-OCX, interface in the I/O panel of ARC, the key: “HKEY_LOCAL_MACHINE\SOFTWARE\G8BPQ\BPQ32\Config File Location” will be set as “c:\Program Files\AR-Cluster\Bpq32”. Upon starting ARC, BPQ32.exe will be automatically started from ..\AR-Cluster\BPQ32\ and will expect to find its configuration files (BPQCFG.BIN and potentially bpqaxip.cfg) in that same folder. This is unchanged from earlier versions of ARC and BPQ32, thus if you wish to use the existing OCX interface simply place the new BPQ32 files in ..\AR-Cluster\BPQ32\. Then follow this sequence: 1) If you use the AX/IP/UDP interface you must have a valid bpqaxip.cfg file in the folder. 2) Execute bpqcfg.exe to compile bpqcfg.txt into BPQCFG.BIN. 3) Execute the batch file RegBPQ32.bat to update the registry.
If in ARC 4.4.22 you deselect BPQ-OCX, then the registry path information described above is nulled and the new BPQ32 will expect to find its configuration files in the same directory from which it was started, perhaps c:\Program Files\BPQ32 or c:\Program Files\AR-Cluster\BPQ32\. This will also be the case if the key is missing from the registry, which will be the case for systems which have never run ARC with BPQ32. ARC users should now start and end ARC with BPQ-OCX deselected to properly prep the registry. Follow the configuration process in the preceding paragraph. With BPQ-OCX deselected from the ARC I/O panel, ARC will no longer automatically start BPQ32, this is now up to you. Later in this document I will give a number of recommendations for auto-starting the BPQ32 system upon boot up.
With ARC 4.4.22, BPQ-OCX deselected, you should now select
AGWPE | BPQtoAGW in ARC’s
I/O panel. You will have to cancel and
restart ARC for this change to take effect.
You will be using the AGWtoBPQ interface, which
you must start by executing AGWtoBPQ.exe.
The running AGWtoBPQ has three
parameters:
In ARC select Cfg I/O Devices and confirm that you have enabled AGWPE|AGWtoBPQ. Click the button following that to open the Configure AGWPE|AGWtoBPQ via TCP window. In that window select AGWPE|AGWtoBPQ via TCPIP, check Enabled, for TCPIP Interface 1 set IP Address to 127.0.0.1 and Port to 8000. The enterprise version of ARC allows you to choose additional TCPIP interfaces 2 through 5, permitting you to serve multiple instances of AGWPE on other machines, locally or remotely. See 6.0 Known Issues for current restrictions. Click Apply, then click Exit, then click Exit on the prior window. You will receive a warning that changes you have made will not take place until ARC is closed and restarted. To get a clean start I recommend that you close both AGWtoBPQ (which closes all BPQ32 related windows) and ARC, then restart first AGWtoBPQ.exe, then ARC. After these have stabilized you will see on the ARC Connect tab a little green marker, following AGW Packet Engine, which includes the TCPIP interface port number. This indicates that ARC is getting a response back from AGWtoBPQ. Remote BPQ users now should be able to connect to ARC for DX spotting services.
On the ARC main window on the lower right hand side you will find two buttons, AGW and BPQ. If you right click on BPQ you will open a window wherein you provide a path to the BPQ Terminal Program. It’s likely to currently point to bpqterm.exe. While that program still runs, and the version in the beta package is a new version, it is depreciated and likely will be eliminated. Instead change that to the full path to bpqterminal.exe, the enhanced terminal program. That new program also includes the monitoring features of bpqmon32.exe. Bpqmon32.exe, although it still runs, is likely to be eliminated.
BPQ32 port numbers are defined by the user in bpqcfg.txt. The recommended practice is to begin with radio ports numbering from 1. The concluding port number should be for AX/IP/UDP if used. This is the practice followed in the supplied bpqcfg.txt configuration file.
3.02 UIView32
UiView32 may use BPQ32’s new AGWtoBPQ
interface, as an alternative to AGWPE.
The UIView32 setup is exactly as with AGWPE. In the supplied bpqcfg.txt file, BPQ port 2
is used for APRS (144.39 MHz). You will
need to set UIView32 to use the appropriate radio port number for your
site. This is set in the Port Mask
window,
The configuration of BPQ32 follows the same procedure described in 3.01 AR-Cluster.
3.03 UI-DX Bridge
The configuration of BPQ32 follows the same procedure described in 3.01 AR-Cluster.
3.04 BPQ32 Stand Alone Applications
BPQ32 may be run stand alone to provide AX.25 NET/ROM services via radio and AX/IP/UDP. A very useful application is described on my web page at Setting Up A Remote Access Site for AR-Cluster. That document has not yet been updated for the new version of BPQ32. The changes to it will be trivial however. It will be updated when the BPQ32 beta period is concluded.
The configuration of BPQ32 follows the same procedure described in 3.01 AR-Cluster.
3.05 AGWPE
BPQ32 implements an interface to AGWPE via AGWtoBPQ.dll. This allows BPQ32 to access all devices defined in AGWPE. See the file agwbits.txt as well as the supplied bpqcfg.txt for example port definitions. The main purpose of this interface is to allow BPQ32 access to sound card modems supported by AGWPE. However, it interfaces equally well with any device configured in AGWPE. Thus you can have AGWPE control all your devices and have BPQ32 access them via the AGWtoBPQ.dll interface.
However both AGWtoBPQ and AGWPE
default to using
4.0 New BPQ32 utility programs
BPQTerminal.exe replaces bpqterm.exe, although the later is still functional. BPQTerminal adds a monitor window (replacing bpqmon32.exe) and adds scroll bars. It is envisioned that both bpqterm.exe and bpqmon32.exe will be removed from the BPQ32 suite after the beta period. Bpqterm.exe supplied with the beta is a new version.
BPQTelnetServer.exe allows remote access to the BPQ32 switch via a telnet connection from anywhere. The defaults are defined in BPQTelnetServer.ini:
TCPPORT=8010
LOGINPROMPT=user:
LOGINRESPONSE=ron
PASSWORDPROMPT=password:
PASSWORDRESPONSE=test
HOSTPROMPT=>
LOCALECHO=NO
Chose an appropriate name and password for security should you use this utility. After starting BPQTelnetServer.exe you can connect to it using telnet with a port number as defined in BPQTelnetServer.ini, i.e. port 8010. Using the simple built in Windows® telnet client the command would be ‘telnet my-ip-address 8010’. When connected you have the full range of BPQ32 commands, and you take on the call as defined by NODECALL= in bpqcfg.txt.
BPQTNC2 is a new utility which provide a TNC2 like interface
to the switch. BPQTNC2 supports real com
ports in W95/W98/WME. Both real and
virtual com ports are supported in W2K/WXP.
As an example, from Hyperterminal, in W2K/WXP,
you can assign a virtual serial communications port created by BPQ32 and
communicate with the switch much like you could do so over a real serial port
to an attached TNC2. Programs which
previously required a real TNC2 attached to a serial port will greatly benefit
from this new capability. Better
documentation is sorely needed, but here is a quick set of steps which will
give you the idea: Assuming you have not
executed LoadDevice.exe or VCOMConfig.exe, BPQTNC2.exe will only to support
real devices. Execute BPQTNC2 to see its
screen, it may be covered by other BPQ
screens, which you will have to minimize to view it. Initially the BPQTNC2 screen will consist of
5 rows. Following 9600,N,8,1 on the
first row will be a box to enter the real com port, as an example 3, you wish to assign to BPQTNC2. Enter 3 in that box for that real com port, but
take care that it does not conflict with a com port you are using in
bpqcfg.txt. In the type field enter R
(for real). Now click ‘Save Settings’
and close the program. Restart the
program and note that it will now display COM3 immediately before 9600,N,8,1
and the
BPQEther is a new utility more fully described in BpqEther.htm and supports the “AX/25 over Ethernet” protocol used by DOS BPQCODE. It can provide a link between DOS applications and BPQ32.
BPQStatus is a utility useful while troubleshooting, and is provided for that purpose. It shows the number of frames queued on each stream, a display of the Appl mask and a stream allocated flag.
ClearRegistryPath.exe and SetRegistryPath.exe either clear or set in the registry entries which tell BPQ32 where to find it’s configuration files. Reference to this was made in 3.01 AR-Cluster, however this has undergone a change, while retaining compatibility with the method explained in that section. Now upon starting BPQ32 first looks in the registry at “HKEY_LOCAL_MACHINE\SOFTWARE\G8BPQ\BPQ32\BPQ Directory”. If a path to the configuration files is found there it is used. If it is not found, then “HKEY_LOCAL_MACHINE\SOFTWARE\G8BPQ\BPQ32\Config File Location” is examined and if a path is found, it is used. If neither is found, then BPQ32 will expect to find it’s configuration files in it’s own directory. Experienced users who wish to have multiple BPQ32 directories, each with its own configuration, should run ClearRegistryPath.exe to remove these keys from the registry, in which case each of the several BPQ32 directories will contain its own set of configuration files.
5.0 Automatically starting AGWtoBPQ
or BPQ32
If you will be using BPQ32 standalone, and without AGWPE, then BPQ32.exe may be started by adding a shortcut to BPPQ32.exe in..\Start Menu\Programs\Startup\. A quick way to get to this folder is to right click on the Windows® Start button and select Explore. Windows® Explorer will begin at the Start Menu folder, and you can then drill your way down to two levels to the Startup folder, and there add a shortcut to BPQ32.exe.
If instead you are using the AGWtoBPQ interface, but without AGWPE, then do as above, but make the shortcut to AGWtoBPQ.exe.
When AGWPE is used is may be used to start other programs. Place a shortcut to AGWPE in the Windows® startup folder, then BPQ32.exe or AGWtoBPQ.exe as well as other user programs, such as AR-Cluster, UIView32 and UI-DX Bridge can be added to AGWPE’s startup list. This is convenient and assures that AGWPE is running and stable before it is accessed.
6.0 Known Issues and Limitations
6.01 Remote access to AGWtoBPQ.
Currently AGWtoBPQ provides little input buffering. While this is not an issue where the user programs access it on the same machine or even on a LAN to a nearby machine, when accessing it on a distant machine, for example via the Internet, a slow connection could cause it to run out of buffer space with fatal results. John, G8BPQ, intends to sort this out as time allows.
BPQtoAGW.dll, which interfaces BPQ32 to AGWPE, currently allows access to an instance of AGWPE only on the same machine, no ip address option is provided. This limitation is expected to be lifted when John finds the time.
6.02
Both AGWtoBPQ and AGWPE default to
the use of
To avoid conflicts the TCP port number used by AGWtoBPQ or AGWPE must not be the same. In the example configuration bpqcfg.txt file BPQ32 talks to AGWPE via port 8001 (hex 1F41), which requires you to change AGWPE’s default port of 8000 to 8001. This is easily done by right clicking the AGWPE icon in the program tray, selecting Setup Interfaces/Winsock Interface/Setup TCP 8001. Click OK to make the change.
7.0 Revisions
Revisions of this document as well as BPQ32 will be announced on the BPQ32 Yahoo Group.
7.01 2005/09/20 AGWtoBPQ.exe revised to 0.15 Beta Sept 2005. Corrects a problem with Digi_ned concerning callsign registration discovered by Tony Hunt VK5AH.
7.02 2005/09/27 AGWtoBPQ.exe revised to 0.16 Beta Sept 2005. Additional changes needed to support Digi_ned. AGWTerminal.exe revised to Version 0.3 Beta to fit on 800x600 pixel screens. Separate batch files provided for W95/98/ME vs W2K/XP. Tnx Tony Hunt VK5AH.
7.03 2005/10/01 Tony Hunt’s recommendations resulted in changes to the batch files resulting in replacing them with RegBPQ32W2KXP.bat and RegBPQ32W9598ME.bat.
The batch files of earlier releases should be deleted.
7.04 2005/10/12 In AGWtoBPQ.exe the default values for TCP Port, Listening Sessions and Appl Mask have been changed to 8000, 20 and 1. If you have run a previous version of AGWtoBPQ you may have saved the prior values in the registry. You may enter these new values if appropriate for you and save them. See 6.02 AGWtoBPQ AGWPE Port Conflicts to resolve a port number conflict from the simultaneous useof AGWtoBPQ and AGWPE.
7.05 2005/10/21 The monitoring function of the AGW applications program interface has been added. Thus programs such as AGWTerminal and AGWTracker should work as designed.
7.06 2005/11/14 Solved a problem which occurred when the number of digipeaters in the via string exceeded the AX.25 standard.
7.07 2005/12/18 Added BPQTNC2 and associated supporting programs creating a TNC2 like interface to the switch as well as virtual com ports, however currently this is applicable only to Windows-XP. See 4.0 New BPQ32 Utility Programs for details. A scrolling problem in BPQTerminal has been corrected.
7.08 2005/12/23 BPQTNC2 now supports real com ports (W95/W98/WME) as well as real and virtual com ports (W2K/WXP). BPQEther, a new driver is added to support the “AX/25 over Ethernet” protocol used by DOS BPQCODE, providing a link to DOS applications. Users of prior beta releases must re-run RegBPQ32.bat to register MSCOMM32.OCX.
7.09 2005/12/24 BPQEther.dll is reissued to correct an error discovered by Mark Harloff K2CAN.
7.10 2006/02/17 Three additional utilities have been provided: BPQStatus.exe, ClearRegistryPath.exe and SetRegistryPath.exe. These are explained in section 4.0 above. A new configuration option, AUTOSAVE, as been added to bpqcfg.txt which when set equal to 1, causes BPQ32 to write it’s current BPQNODES to BPQNODES.dat upon going to end of task. The example configuration files include this option. As such when BPQ32 is restarted it will immediately have its nodes information which was present when it last ended. A new sysop command SAVENODES causes BPQ32 to immediately write a new BPQNODES.dat file. There have been a number of corrections and enhancements to BPQ32 modules in response to beta testing, which are not described here. A file RS232TNC2.htm has been included showing the minimum wiring between an RS232 port and a JKISS TNC2. It seems likely that this same minimum wiring (3 wires) should also work with other tncs, if someone would verify this I would appreciate it.