A multitalented APRS / DPRS / APRSIS "i-gate" with following properties:
Config file (-f option) default is: /etc/aprx.conf
Other runtime options are: -v, -d, -h/-? (verbout, debug and help)
- Rx-IGate functionality works correctly
- Tx-IGate functionality works correctly
- Can do APRS New-N and generic AX.25 node digipeater functionality
- Has same-channel Viscous Digipeater functionality to not to digipeat
at all, if during initial wait period the packet is heard again.
- Has cross-interface Viscous Digipeater functionality to not to digipeat,
if during the initial wait period the packet is heard on destination
interface at least once, and at least once from other sources.
- Can receive data from multiple receivers/modems on local machine
serial ports, both classical and USB.
- Can receive data from remote TCP stream connectable serial ports
over the internet.
- Understands on serial ports (local and remote TCP ones):
- several KISS protocol variants, checksummed variants preferred
- TNC2 debug style text (Rx-iGate receive only.)
- D-STAR data side-channel "D-PRS"
- Connects with one callsign-ssid pair to APRS-IS core for all
received radio ports (the "mycall" parameter), but reports
receiving radio port at each Rx-iGated packet
- Knows that messages with following tokens in VIA fields of the
path are not to be relayed into network:
RFONLY, NOGATE, TCPIP, TCPXX
- Knows that following source address prefixes are bogus and thus
to be junked at Rx-iGate:
WIDE, RELAY, TRACE, TCPIP, TCPXX, NOCALL, N0CALL
(Actually these are string prefixes, so any WIDE*-* will block, etc.)
- Has integrated D-PRS -> APRS/APRSIS Rx-iGate.
Can even do D-PRS -> APRS RF conversion.
This is experimental quality for "GPS" packets, the "GPS-A" is OK.
- Does not require machine to have AX.25 protocol support internally!
- On Linux machine with kernel internal AX.25 protocol support, does
listen on internal AX.25 network in promiscuous form, and requires
to be running as root to do that. Does not fail to start in case
the port fails to open (running as non-root.)
- Built-in "erlang-monitor" actually counts bytes per time interval
(1 min, 10 min, and 20 min) on each receiving interface, including
all that feed internal AX.25 network.
- Telemetry reported erlang data is sent out every 20 minutes, and
contains summarized data from 10 minute round-robin memory arrays.
These are _not_ sent at exact 10 minutes of wall-clock, but exact
20 minutes from previous telemetry reporting, and first one is sent
20 minutes after program start.
- Telemetry reported erlang data can be sent also over APRS radio
port, but only for ports with valid AX.25 callsigns. See aprx-manual.pdf
- The netbeacons are distributed timewise more evenly around the interval,
and even the interval length is varied at random in between 20 and 30
minutes. Number of netbeacons are unlimited, but their minimum transmit
interval is 3 seconds making the amount of beacons sendable in 20 minutes
to be: 20*60/3 = 400. All will be sent, but the cycle will just take
- Source code is at SVN repository: http://repo.ham.fi/svn/aprx
- A Wiki page of this package: http://wiki.ham.fi/Aprx.en
- A google-group for Aprx: http://groups.google.com/group/aprx-software
- This program is also compilable as "EMBEDDED" target without
any statistics buffer required at the system disk (or RAM-disk).
See the INSTALL file.
by Matti Aarnio - OH2MQK - oh2mqk-at-sral-fi - 2007-2014