/noaacap

Weather alert beacon exec for aprx >= 2.9 or Direwolf >= 1.3

Primary LanguagePythonOtherNOASSERTION

This software is written in python 3.4 and has been tested with aprx 2.9.x.
If you are running a version < 2.9.0 you should first update aprx.  The current
release of aprx may be found at http://thelifeofkenneth.com/aprx/debs/.

It has also been tested by N3TSZ in conjunction with direwolf.  Version 1.3
or higher is required.  The current release of direwolf may be installed on a
Debian or Raspbian system via:

sudo apt-get install direwolf

The current release of noaacap may be found at:

https://github.com/K2IE/noaacap/releases

Once you are running aprx >= 2.9 or direwolf >= 1.3, install noaacap:

Install via sudo dpkg -i noaacap-0.9.1.deb.  Then, to satisfy the dependencies,
run sudo apt-get -f install.

==> APRX CONFIGURATION <==

Add a beacon section similar to the following to /etc/aprx.conf:

<beacon>

beaconmode both
cycle-size 2m

beacon via WIDE2-1 \
   srccall N0CALL-13 \
   timeout 20 \
   exec /usr/local/bin/noaacap.py

</beacon>

The timeout was needed on my older and slower single core Raspberry Pi Model B.
The aprx default timeout is 10 seconds and the timeout may not be needed on a
RPi 2 or newer.  If you see lots of "BEACON EXEC abnormal close" messages in
aprx.log, then you likely need to add the timeout.

The program will check for a new alert or update every 2 minutes, but only
send if there is a change.

==> DIREWOLF CONFIGURATION <==

Add a line similar to the following to direwolf.conf:

CBEACON EVERY=2 VIA=WIDE2-1 INFOCMD="/usr/local/bin/noaacap.py"

==> NOAACAP CONFIGURATION <==

Edit /etc/noaacap.conf:

Do not remove the [noaacap] section header.

myTZ should be set to the Linux TZ value for the issuing office of your
preferred weather zone.  For a complete list of timezones, you may use
the following command:  timedatectl list-timezones | grep America.

myZone should be set to your county code.  A list of county codes may be found
at https://alerts.weather.gov/.  Only list one county.  The program will then
send the alert for all affected zones.  You could instead use a zone code if
you want to be more specific.

myResend should be set to 0 for no message resends or to an interval of your
choosing.  If noaacap beacons every 2 minutes, a value of 30 would provide
hourly resends.

adjZone1 and adjZone2 may be optionally specified.  If specified, those zones
are guaranteed to be retained in any messages found for myZone that have been
truncated because of length.  You must specify a Zone rather than a County.

Logging values are 0 (quiet), 1 (informational), and 2 (debug).  Logs are
written to the systemd journal.  You may view the logs in realtime using the
following command: sudo journalctl -f | grep noaacap.

USE

It would be good to hear from users of this software.  Please email
k2ie@k2ie.net with the callsign-SSID of your APRS station that is sending
weather alerts via this program.

Dan Srebnick, K2IE
02/06/2020