Digital Communications Conference – Orlando, USA
Intelligent Filtering of APRS IGATE Data

This page contains a link to my paper for the 2000 Digital Communications
Conference, as well as containing the companion software. This page also
contains the documentation for this software.

  • APRS Filtering Paper – WORD Format
  • Software – TAR’ed and GZIP’ed

    To run

        ./ VKZL.conf

    This will run the software interactively.

    Of course you may want to edit the CONF file first.


    VKZL.conf – Configuration file
    for perlFilter

    # @prefix is a list of callsign ranges that this
    filter will allow through

    # regardless of their present position. For instance
    @prefix = ("VK","ZL")

    # will let throgh VK2TDS and ZL1AMW if they are in
    their home countries or

    # if they are within range of an IGATE in ROME or


    # More prefixes may be added creating a line such

    @prefix = ("W","AA","N7","VE");

    @prefix = ("VK","ZL");

    # @grid_OK contains a list of all the GRID squares
    that are permitted through

    # the IGATE. Before letting a packet through it will
    decode the position from 

    # any of the formats understood by perlAPRS such
    as Lat/Long format into 

    # Grid Square format. 


    # The software understands 2, 4 and 6 letter GRID
    SQUARES allowing quite 

    # precise filtering whilst maintaining quick processing.
    An example is the 

    # bizzare 

    @grid_OK = ("QE", "QF55", "QA55NX");


    # For Australia and New Zealand, the following are

    @grid_OK = ("OH","PH","QH","RH","OG","PG","QG","RG","OF",


    # The next few lines are tricky, and must not be mixed
    up. The lines with the

    # variables ending with _1 are for the UP-LINK, and
    those ending with _2 are 

    # DOWN-LINK. 


    # The lines starting $telnet start a special version
    of TELNET that maintains

    # a connection to the server wherever possible. This
    version of TELNET is special

    # in that the PORT number is the first paramater,
    followed by one or more servers.

    # Whenever a connection is lost, the server will
    attempt to connect to the next

    # server. The software may not be elegant, but it


    # Future versions will contain a server program in
    place of the TELNET program so that

    # the single IGATE can connect to it directly.


    # The lines starting with $auth are the authorisation
    lines to be sent to the server. 

    # If you cannot work out how to make them work, you
    should not be using this software. 

    # The important thing to note is that my software
    will set $version to the current

    # version. Please do not edit this version of the

       $telnet_1 = "./ 23";

       $auth_1 = "user LUSER pass 12345 VERS

       $telnet_2 = "./ 10152 localhost";

       $auth_2 = "user LUSER pass 12345 VERS