NAME¶
aprsmon - monitor APRS AX.25 traffic for javAPRS
SYNOPSIS¶
aprsmon [-a] [-m] [-r] [-k minutes] [-p port] [-t title] [-i infofile]
DESCRIPTION¶
Aprsmon uses SOCK_PACKET facilities to provide a network monitor of all
AX.25 UI text traffic heard by the system. It is based on listen(1).
Aprsmon collects (-m) or displays standard AX.25 UI text frames in a
format similar to that output by a standard TNC in "Monitor ON" mode
and is intended to be used with programs like javAPRS which wish to see a TNC
data stream over a TCP connection. When the
aprsmon master has been
running for a while and a new
aprsmon slave starts up, first all saved
up reports are sent, then a title line indicating the beginning of live data
is sent, and new reports are sent as received.
Compressed position and telemetry reports as generated by the APRS Mic Encoder
are translated into the conventional uncompressed APRS Micro-Interface-Module
(MIM) telemtry format so that these stations are visible in javAPRS. Reports
containing a TheNet X1J4 beacon header are also edited to strip off the header
making these nodes visible in javAPRS as well.
OPTIONS¶
- -a
- Allow for the monitoring of outgoing frames as well as incoming ones.
- -r
- Choose "raw" mode which allows non-printable data through.
- -p port
- Monitor only those frames received on a particular port, by default all
AX.25 interfaces are monitored.
- -m
- "Master" mode. Retain monitored data for the number of minutes
specified with the -k option in a shared memory segment.
- -k minutes
- Retain monitored packets going back the given number of minutes. Default
is 30.
- -t title
- Sets the javAPRS or aprsd title string. Default is
"Live data from Linux." For use with aprsd the format must be
something like "aprsmon v2.4.4 padd padb." pada and padb can be
anything, and are ignored but you *must* have 4 words in all.
- -i infofile
- Infofile is the path to the file that the aprsmon master writes the
shared memory segment and semaphore id's into. Default is
"/var/ax25/aprsmon.info."
javAPRS CONFIGURATION¶
Set up one
aprsmon master running on your system to collect historical
data going back a while. You will probably want to set up an /etc/rc.d/init.d
script for this.
aprsmon -a -m&
Add an entry into /etc/services with the port number you want javAPRS to connect
on. For example:
aprs 14439/tcp # APRS monitor on 144.39
Add an entry into /etc/inetd.conf for this service:
aprs stream tcp nowait root /usr/sbin/aprsmon aprsmon -a
To test, simply "telnet localhost aprs". To use with javAPRS, set, for
example,
<PARAM name = "dataFile1" value = "netc:14439:localhost">
in your HTML file as described in the
javAPRS documentation, and then use
appletviewer to run javAPRS:
appletviewer mydemo.html
Mic-E to MIM Translation¶
The Mic-E reduces the duration of packet noise on a voice frequency by encoding
its data in a compressed form, some of which is binary. Some APRS-decoding
software, notably javAPRS, is unable to deal with this data. To solve this
problem
aprsmon expands the Mic-E packet into one or two MIM packets as
follows:
@ ddhhmmzDDMM.hhN/DDDMM.hhW$cse/spd/E>mon/Mm/status
T#MIC, aaabbbcccdddeeefffComments
- ddhhmm
- is the UTC day and time the packet was received by the host running
aprsmon.
- DDMM.hhN
- is the latitude.
- /
- is the symbol table selection (/ or \).
- DDDMM.hhW
- is the longitude.
- $
- is the symbol.
- cse,spd
- are course and speed.
- E
- is the type of Mic-Encoder:
-
E - TAPR Mic-Encoder
T - Kenwood TH-D7
- m
- is the status message number, and
- status
- is the status message number expanded as follows:
-
0 - Off duty..
1 - Enroute...
2 - In Service
3 - Returning.
4 - Committed.
5 - Special...
6 - PRIORITY..
7 - EMERGENCY.
- aaa,bbb,ccc,ddd,eee,fff
- are the values of the telemetry channels.
FILES¶
/etc/ax25/axports /var/ax25/aprsmon.info
SEE ALSO¶
call(1),
listen(1),
beacon(1),
ax25(4),
axattach(8),
http://www.bridge.net/~sdimse/javAPRS.html,
http://www.tapr.org, http://www.aprs.net,
MIC-E.TXT,TELEMTRY.TXT,
PROTOCOL.TXT
AUTHOR¶
Alan Crosswell, n2ygk@weca.org