DIGIS.TXT         AUTOMATIC PACKET REPORTING SYSTEM DIGIPEATERS
==========================================================================
Document version: 8.5.0
Document dated:   15 Sept 2001. (last version was 7 Jul 2000)
Author(s):        Bob Bruninga, WB4APR <bruninga@nadn.navy.mil>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Digipeaters are the most important APRS asset, our lifeline if used 
properly, but a source of QRM and incnsistencies 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 
NOTIFY Jeff of dididahdahdidit.com of any new digipeaters so
that he can update the original DIGIS.POS file.

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... But not in APRS.  

   APRS satisfies its real-time, emergency tactical needs without prior 
knowledge by using generic TO and DIGI callsigns.  ALL APRS stations 
are given the generic digipeater callsign alias of RELAY and all digi-
peaters 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 NEVER 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 a 
local RELAY should be installed as needed but ONLY with the RELAY alias.

TRACE 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.  This is called a TRACE digi.
The big advantage besides tracebility is that they will also IGNORE the
packet from then on because they can see that they already digipeated
it.  This completely eliminats looping duplicate packets.  This was a
great advance for APRS!  This was followed in 1998 with Kantronics
implementing my 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,
SS.  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 because only the TRACE Capable
                DIgipeaters have TRACE, then it is a safe way of
                setting a path that will only use these new digis.
        SS    - Useful for state wide only digipeating

HOME STATIONS should never set their MYALIAS to anything other than RELAY
without the full consent of the surrounding users and network planners.
APRS users must be able to assume that they can use anyone's station as
a RELAY digi.

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 should not be used because 
it results 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.

IMPORTANT NOTE!  Mobiles have less than HALF the range of what you expect
compared to your normal experince with VOICE repeaters.  The human ear
will not consider a QSO to fail until it gets painfully noisy.  A packet
signal will FAIL at the first even a millisecond of a single fade.  And
SINCE mobiles ALWAYS pass through 30 dB fades due to multipath ALWAYS, then
the effective range of a mobile is much less than half of what it is for
voice.  SO be sure to take this into consideration in your PATH planning.

HOPS:  Although you are tempted to set a LONG path so everyone can see
you, remember that to them, you are just QRM.  Especially since the
amount of QRM you generate grows geometrically with the number of hops
as shown in the following table.  ALSO the probability of a successful
packet also goes down greatly.  The following table shows the decreasing
probability of a successful packet if we assume a 50% probability of
collision and each WIDE can hit 4 other WIDES.

HOPS  PROBABILITY  #COPIES COMMENTS
----  -----------  ------- --------------------------------------
 1        50%         1    For local ops & special events
 2        25%         5    Routine ops
 3        12%        13    extended ops
 4         6%        25    statewide ops Heavy QRM
 5         3%        41    Nothing gets through.  Too much QRM
 6         1%        61    Useless AND totally boggs down network

PLEASE limit your hops to just your local region.  APRS *IS* designed to
assure delivery to EVERYONE in a 1 to 3 hop area for REAL-TIME nets or
events.  It was NOT designed for large extended area nets with thousands
on line...  These days you CAN QSO great distances via the IGates, but
this is still a LOCAL process with only enough hops to get to your IGate.
As MORE people come to APRS, we must begin thinking SMALLER areas...

    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

The BEST digi these days is a new Kantronics KPC-3 or 3+.  (or any of the
recent PC emulators).  Next best is a PacComm ROM in any TAPR-2 CLONE
TNC.  Please install it only at a real WIDE area site.  Set the
following minimum commands (these are KPC-3 formats):

   MYCall W3XYZ-x                       
   UIDIGI ON RELAY, WIDE, TRACE, SS
   UIFLOOD WIDE,28,NOID
   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 TRACE,TRACE3-3
   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 4 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.  The PHG equation
assumes nominal stations.  It is not good for HAAT's in the thousands
of feet.  For those digis, chose a value for H or G that gives a good
reliable PHG circle that matches actual coverage.

                                       
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.  Then activate this as an ALTERNATE PATH 50% 
of the time (For DOS, use 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 WIDE5-5 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 since it
lets recepients estimate the position of a station until a real POSIT
comes in.  This is automatic in APRSdos which will plot the station as a
QUESTION mark ICON within about 1 mile of the first DIGI.  If ID is ON at
the digipeater, then the packets arrive with the wrong DIGI field and this
capability is lost.  So Set NOID to on.


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 
solution is 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.


