DIGIS.TXT         AUTOMATIC PACKET REPORTING SYSTEM DIGIPEATERS
==========================================================================
Document version: 8.3.8
Document dated:   21 Mar 99
Author(s):        Bob Bruninga, WB4APR <bruninga@nadn.navy.mil>
ABSTRACT
DIGIS.TXT         Digipeaters and Paths for APRS 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Digipeaters are the most important APRS asset, our lifeline if used 
properly, but a source of QRM if not.

NOTE: In APRSdos your maximum reporting period is dependent on the length
of your digipath.  This is so that at a special event or local area, using
direct or one hop, then your net-cycle time is 10 minutes.  Two hops is
20 minutes, 3 hops is 30 minutes etc up to the maximum value in your
CFIGxxx.APR file.  Currently the MaxTime defaults to 30 minutes.

WHERE ARE THE DIGIS?   Use the MAPS-OVERLAY-DIGIS command to see the 
location and range of all APRS digis no matter where you are.  Please 
post ANY new digipeaters on the APRSSIG@TAPR.ORG to help keep this 
DIGIS.POS file up to date. 

BACKGROUND:  The range of any AX.25 packet may be extended by specifying
one or more digipeater callsigns in the UNPROTO PATH.  The packet will 
be relayed by each such digipeater in turn.  After each such digipeat, 
that callsign is marked as used up so that at any instant, only the 
"next" digipeater in the list has the potential to digipeat the packet.  
Normally this requires users to know the complete intended path for their 
packets.  

   APRS, however, satisfies its real-time, emergency tactical needs 
without prior knowledge by using generic callsigns.  ALL APRS stations 
are given the generic digipeater callsign of RELAY and all digipeaters
are aliased as WIDE.   This way any station can use any digpeater by
using an UNPROTO path of WIDE or he can use any other station as a 
digipeater by simply addressing the packet VIA RELAY.  With this generic 
digipeating, a mobile, or new station does not have to know anything 
about the network in advance in order to be seen by adjacent nodes.  
After 10 minutes and his map begins to show the location of all stations 
and digipeaters on frequency, he can  then customize his outgoing Unproto 
path to specific digipeater callsigns to cover his intended area without 
as much QRM.  

ROUTES: It is important that as APRS networks mature with fixed, known 
digipeaters, that users at FIXED stations should avoid using the generic 
RELAY or WIDE addressing.  Although it still makes sense for mobiles to 
use the path of RELAY,WIDE, the path of RELAY should rarely be used after 
the first hop by ANYONE, and never after a WIDE.  Remember, every packet
addressed via RELAY will key up EVERY APRS station that hears it.  In 
any but the sparsest areas, the result is total congestion and collisions
which block anyone from copying the packet.  The DIGIpath page in APRS lets 
you see what digipeater paths other stations are using and it also marks 
stations that you can hear direct.  Also under the OPS-DIGI command, users 
can save up to 12 different DIGIpeater paths.  Users can select any given 
path that is optimum for their present application with a single key 
stroke.  The MAPS-PLOTS-POWER command will display a range circle around 
all stations proportional to their power, and antenna.  Users can use 
these plots to estimate what paths, through what stations, might be useful.

APRS DIGIPEATERS:  Wide area APRS digipeaters should be widely separated to
provide long distance coverage with the minimum of hops.  If there is a need
for interim digipeaters to fill in weak signal areas or valleys, then they
should be installed as needed but ONLY with the RELAY alias.

MODERN APRS DIGIPEATING:  At Dayton 97, PacComm introduced their new
TNC ROMs which will substitute their callsigns in place of their generic
Aliases whenever a packet is digipeated.  The big advantage besides
tracebility is that they will also IGNORE the packet from then on
completely eliminating looping duplicate packets.  This was a great
advance for APRS!  This was followed in 1998 with Kantronics implementing
the APRS WIDEn-N algorithm which further improves multi-hop effeciency.

WIDE DIGIPEATING:  ALthough in start-up areas any TNC can be used as a
WIDE digi simply by setting its MYALIAS to WIDE and its BText to include
its APRS position, this is NOT recommended today in areas within a mature
APRS environment.  Today, only TNC's with the new PacComm 4.0 and
Kantronics 8.2 Roms or later should be used.  They should be set up with
the four generic calls of RELAY, WIDE, TRACE and your state abbreviation.
The functions of each of these generic aliases are as follows:

        RELAY - The universal default for all APRS stations
        WIDE  - Provides WIDE area digipeating
        TRACE - Identical to WIDE, but helps identify only the new
                DIgipeaters capable of these advanced routing capabilities
        SS    - Useful for state wide only digipeating

HOME STATIONS should never use any alias other than RELAY without the
full consent of the surrounding users and network planners.

TRACE DIGIPEATERS:  Although all 4 aliases are treated equally, using the 
TRACE call has some important advantages.  Most important, it allows for
usage of the new anti-duping features in advance of waiting until all
WIDEs are converted to the new ROMS.  As long as there are any old WIDE
only digipeaters, anything beyond WIDE,WIDE cannot be used or it will result
in bad duplications.  But by using the equivalent TRACE,TRACE,TRACE, the
packet takes advantage of the new digis without triggering the old ones.

WIDEn-N DIGIPEATERS:  See the section below to understand WIDEn-N routing.

MOBILES:  Mobiles typically use the path of RELAY,WIDE because they may
be out of range of a WIDE digipeater but be near someone's home station
acting as a RELAY.  Even if WIDE digipeaters are 30 to 50 miles apart, as
long as every home station and local RELAY digipeater can hit at least
one WIDE, then the mobile path of RELAY,WIDE can cover as far as 100
miles!  Wider ranging mobiles can use the RELAY,WIDE,WIDE path without  
causing too much QRM because of their low antennas.  BUT CONVERSLY, 
RELAY,WIDE,WIDE should NEVER be used by a home station since he will
undoubtly hit many home RELAYS all at the same time and therefore generate
numerous dupes with every packet.

CAUTION: Fixed stations that can hit 2 or more WIDES should NEVER use 
three generic RELAY/WIDE callsigns in a row, and RELAY should NEVER be 
anywhere except the FIRST in the list.   Multiple TRACE hops are fine 
but you should not plan on QRMING beyond your immediate area except as 
needed.  Although generic paths for mobiles are the normal, special 
consideration must be given whenever there will be a great convergence 
of generic mobiles using RELAY,WIDE paths, since each of them will repeat  
each other!  In this case, they should change the path to NOT begin with
RELAY.  SUCH AS AT DAYTON!


DEDICATED WIDE AREA APRS DIGIPEATER SET UP

   To set up a WIDE area APRS digi, you should only use a TNC that has
multiple aliases and preferably the PacComm TRACE algorithm or even  
better the Kantronics implementation of my WIDEn-n algorithm. ALso it
hould be installed as high as you can get it.  Set the following minimum 
commands (these are KPC-3 formats):

   MYCall W3XYZ-x                       
   UIDIGI ON RELAY, WIDE, TRACE, SS
   UIFLOOD WIDE,30
   UITRACE TRACE
   LT 1 !DDMM.mmN/DDDMM.mmW#PHG5360/A=003456/comments
   LT 2 !DDMM.mmN/DDDMM.mmW#PHG5360/A=003456/comments)
   LT 3 !DDMM.mmN/DDDMM.mmW#PHG5360/A=003456/comments)
   LTP 1 APRS
   LTP 2 APRS VIA WIDE2-2
   LTP 3 APRS VIA TRACE5-5
   BLT 1 E 00:10:00   sends the local posit locally every 10 minutes
   BLT 2 E 00:30:00   Sends a posit out 2 hops every 30 minutes
   BLT 3 E 02:00:00   Sends out a 5 hop traceble path once every 2 hours

The exact selection for your LTPaths is determined by other digipeaters in
your area.  The examples above assume all surrounding digis area all
WIDEn-N capable.  If not, you might use LTP 2 of WIDE,WIDE and LTP 3 of
TRACE,TRACE,TRACE.


POSIT TEXT:  The posit text above is standard APRS posit as follows:

   !                    means it is a fixed, non moving posit
   DDMM.mmN/DDDMM.mmW   is LAT/LONG in degrees and minutes
   PHGphgd              where p is power as the SQRT of P 
                              h is log2(HAAT/10)
                              G is gain in dB
                              d is directivity in deg/45
   #                    means it is a digipeater
   /                    The separator between the LAT/LONG
                        should be:  / for WIDE or RELAYS
                                    \ for WIDE-RELAYS
                                    T for TRACE digis
                                    N for WIDEn-n digis
   /A=xxxxxx            is altitude in feet for 3D

You can see by the integers in the POWER-HEIGHT-GAIN (PHG) string, there 
are only 9 plus 0 possible values for each of these fields as follows:

  DIGITS   0  1  2   3   4   5   6    7    8    9  as used in the PHG field
  -------------------------------------------------------------------------
  POWER    0, 1, 4,  9, 16, 25, 36,  49,  64,  81  watts  SQR(P)
  HEIGHT  10,20,40, 80,160,320,640,1280,2560,5120  feet   LOG2(H/10)
  GAIN     0, 1, 2,  3,  4,  5,  6,   7,   8,   9  dB
  DIR   OMNI,NE, E, SE,  S, SW,  W,  NW,   N,   .  This offsets the range
                                                   circle in the indicated
                                                   direction
           
HEIGHT ABOVE AVERAGE TERRAIN:  Going out 10 miles in all directions, write
down the elevation every mile or so.  Average all of these points and
compare your elevation to the average.  You may be at 2000 feet above
sea level and have a 150 foot tower, but if the ground around you is at
2200 feet, then your HAAT is -50 feet!!!  Be honest!  Your circle should
go no further than the distance to which you can reliably copy an HT!  
Even though you have an OMNI antenna, if the terrain favors a certain 
dierction, then put that in for your directivity.

                                       
OPERATIONS WITH RELAY AND WIDE:

     Although the GENERIC WIDE/RELAY digipeating works well to get an APRS
net going, once you have more than two WIDES, the generic calls should be
avoided by all fixed stations to minimize unnecessary duplicates and
collisions.  Or use TRACE.  Using SPECIFIC callsigns significantly reduces 
QRM.  A path of WIDE,WIDE,DIGI3,DIGI4 will get you out 2 hops in all 
directions and 4 more hops in the direction of DIGI3 and DIGI4.  If you 
want to go long distance in two directions, save another long path in the 
other direction using the OPS-DIGi-SAVE comamnd and then activate it 50% 
of the time usign the OPS-DIGI-ALT command.

SEE README.HF for setting up your UNPROTO path for HF and HF/VHF gateways..


**********     WIDEn-n ALL DIRECTION GENERIC DIGIPEATING!     ****************
          THE ULTIMATE SOLUTION FOR MOBILE POSITION REPORTING

    Since 1994 I had asked for this capability, and it was finally 
implemented in 1998 Kantronics TNC's.  The WIDEn-n digi simply repeats 
ANY packet with the VIA address of WIDEn-n; but ONLY ONCE.  It keeps a 
copy (or checksum) of the last 30 seconds of packets, and compares each 
new packet that it hears with these last ones to avoid dupes.  This 
completely eliminates the multiple looping of packets caused by multiple 
generic paths such as WIDE,WIDE,WIDE (as many as 21 copies!)  In a WIDEn-n 
network, however, there would only be three packets outward bound 3 hops.

NUMBER OF HOPS:  The "n" in the WIDEn-n path indicates the number of hops.
Each DIGI that repeats the packet decrements the WIDE-SSID by one.  So the
-n decrmenets to zero but the WIDEn portion indicates the original number
of hops so that recepients know how far it traveled.  A long distance
traveler or special event of wide interest may use up to WIDE7-7 but a 
local commuter may only want to use WIDE2-2 to limit QRM.

SHORT PACKETS!  THe biggest advantage of the WIDEn-n routing is that
every packet still only has one DIGIpeater call.  THis means only 7 bytes
of overhead no matter how far the packet goes...   This saves 21 bytes 
in every packet for a 4 hop example.

WIDEn-n ID FUNCTION:  Kantronics included an ID function that can be enabled
at the digipeater that will insert the previous DIGI call into the path
so that the previous digi can be identified.  But in APRS, the ID function
should be OFF.  This is because it is MORE IMPORTANT to know the FIRST
digipeater that a packet hit, not the last.  Users therefore begin all
packets with WIDE,WIDEn-n so that the first DIGI does callsign substitution
and the packet arrives as FIRST,WIDEn-n.  This is very userful in the
"Vicinity Tracking" usde by APRSdos to estimate the position of a station
until a real POSIT comes in.  If ID is ON at the digipeater, then the
packets arrive with the wrong DIGI field.


TRACEn-n.  Notice, however, that WIDEn-n packets arrive as WIDEn-0, 
showing that it took n hops, but the receiver has no idea how it got 
to him.  If the WIDEn-n digis also support TRACEn-n, however, then at 
each hop, not only does the digi decrement the n, but it also INSERTS 
its MYCALL.  This way a TRACEn-n packet arrives as DIGIa,DIGIb,DIGIc,
DIGId etc.  Although this is very powerful, it also makes the packets 
grow significanly in length as they propogate and should only be used 
when messaging or when you need to know the return path.

NEW TNC WIDEn-N COMMANDS:  To make this work, there are three new TNC
commands:

   UIFLOOD  WIDE, 28, NOID - Sets up WIDEn-n routing.  The "28" saves
        all digipeated packets for 28 seconds and will ignore dupes.
        Notice "28" so that 30 second trackers will get through.
               
   UITRACE  TRACE          - Same as WIDEn-n but does callsign insertion

***** WARNING:  These KPC-3 and Paccomm algorithms are so powerful, that 
they should never be enabled at homes, but ONLY at HIGH WIDE sites.
If it is enabled at any  home stations, this will SEVERLY QRM the network...
Only UIDIGI RELAY can be used at user stations.

LEVEL FOUR NETWORK CONSIDERATIONS:

     Since NODES are so much smarter than digipeating, the ultimate 
solutionis to have the NODES do all UI frame routing via high speed 
backbones.  The APRS station simply sends his UI frame TO APRS VIA HOME;  
Any NODE hearing that transmission that has knowledge of the route to 
HOME, will send the single packet via the NODE network (level 4) to the 
HOME node!  When it arrives at the HOME node, it is transmitted once as 
a UI frame.  With this arrangement, a mobile only has to specify his one 
intended destination, no matter where he travels!


DIGI/NODE COMPATIBILITY:  Mobiles should be able to specify a path that is 
compatible with both nodes and digipeaters.  The nodes should only look at 
the LAST digi field in an UNPROTO list for the final NODE destination.  
Any preceeding fields are assumed to be DIGI's only.  This way a path of
APRS VIA WIDE,HOME would be repeated by any WIDE that heard it, but any
level 4 node that heard it would forward it to the HOME NODE.  If only one 
field is included in the digipeater string, it would be interpreted as 
both a digi and a HOME destination without any difficulty.  Digi's and 
NODEs would digipeat it, and nodes (hearing it direct) would forward it at 
level-4.

EXAMPLE:  A typical mobile just wanting to keep his spouse informed of his
whereabouts might want to just use the UNPROTO path of APRS VIA HOME.  Then
his UI frames will be digipeated by the local HOME node or digi and will
also be routed back to HOME by all NET-NODES along his travels.  If he also
wants to be seen by most HAMS in the areas of his travels, then he sets
his path to APRS VIA WIDE,HOME.  If he travels through a region that has
both DIGIs and NODES, he might choose APRS VIA WIDE,WIDE,HOME.  This way any
areas with digis would digipeat via WIDE,WIDE and if he gets to an area with
nodes which are aware of the path to HOME, then they will forward his packet
there.


