APRS NWS Weather Info

WX Home

Dale Huguley KG5QD developed a server application which translates the NWS feed into a useable message format for APRS. Dale's application also generated APRS objects for tropical depressions, tropical storms, hurricanes, tornados, severe thunderstorms, and special marine warnings. In 2009, Dale ended the long run of WXSVR. Pete Loveall AE5PL created a new server which is limited to issuing (NWS nomenclature) Immediate and Actual alerts which primarily include warnings that potentially affect public safety.

Extended information can be obtained by sending a finger inquiry to wxsvr.ae5pl.net. The finger capability is supported by Xastir, UI-NWS, and other APRS software. Finger information is only available for active alerts that have been sent to APRS-IS from AE5PL-WX (qAO,AE5PL-WX). The format for the finger query is the originating station callsign (FWDFFW would be for the Ft. Worth NWS office, Flash Flood Warning) followed by the first 3 characters of the message "number" (no spaces).

There is now an Australian wxsvr using different area IDs, etc. More information can be found at Australian WXSVR web site.

The databases on this site provide a way to interpret the NWS statements the weather server creates and disseminates to the Internet. APRS+SA, Xastir, UI-NWS, and WinAPRS support use of the NWS shape files to graphically depict the watches and warnings. You can download the files using the "NWS Shape Files" link to the above. The current NWS shapefiles are (AWIPS Counties) c_05mr24.zip, (Zone Forecast Areas) z_05mr24.zip, and (Coastal Marine Zones) mz05mr24.zip. If you are interested in programming with .NET to read shape files, I have updated the .NET MapTools shapelib wrapper found at http://shapelib.maptools.org to be fully compatible with .NET 2.0.  The MapTools archive found on this web site at http://www.aprs-is.net/downloads/DotNetshapelibupdate.zip has been tested with VisualStudio 2008 and is compatible with all .NET 2.0 programming languages. It does not run as unsafe so it should be usable with any .NET application. The archive includes all source and solution files. I have not tested or debugged any of the example and test applications. All applications should only be compiled in x86 mode to maintain compatiblity with the shapelib.dll. While this is compiled in x86 (32-bit) mode, it is usable on 64-bit platforms as long as the application is also compiled in x86 mode.

The format for the NWS statements generated by the weather servers is:

Area Specific:

CWAPID>APRS::NWS-TTTTT:DDHHMMz,ADVISETYPE,zcs{seq#
CWAPID>APRS::NWS_TTTTT:DDHHMMz,ADVISETYPE,compressed zcs{seq#

General/Full Text Messages:

CWAPID>APRS::SKYCWA   :DDHHMMz,ADVISETYPE,zcs{seq#

Objects:

CWAPID>APRS:;CWAPIDtta*DDHHMMzLATLONICONADVISETYPE{seq#
CWAPID>APRS:;CWAPIDtta*DDHHMMzLATLONICONADVISETYPE}multiline{seq#

CWA is the NWS office (See databases to the above).  The CWA "SEC" is the source for solar reports and is not listed in the databases as it is a nationwide CWA.
PID is the product Code (See database to the above).
TTTTT is ADVIS, WARN, WATCH, etc.
tta is the first 2 characters of the seq# (see below) and the last character of the seq#. This makes object names unique.
DDHHMMz is the expiration time.
LATLONICON is the latitude, longitude, and symbol for the object (standard object format).
ADVISETYPE is things like FLOOD, FLASHFLOOD, SVRTSM, SEVERE_WEATHER, etc.
zcs are comma separated zone codes or county codes (see the databases linked to the left to find the zone or county code for your area), or statement text.
compressed zcs is a compressed listing of zones or counties (see example below) (note underscore in To address instead of hyphen).
multiline is the enclosing line structure for the object (see Multiline Format link above).
{seq# is decoded as:

updated 21 Dec 2023 The first three characters are the P-VTEC event ID compressed by modulo 62 conversion assigning 0-9 for < 10, A-Z for < 36, a-z for 36-61. Event ids are unique to the issuing office, product (e.g. Flood), and severity (e.g. Warning) and are 4 digits reset every January 1st.

The next two characters are line numbers which (along with the "From Call") make the packet unique. Any packet with the "from Call" and the first 4 digits of the sequence matching are "associated" packets- in otherwords they are from the same product or portion of product that is defined by UGC codes.

Compressed Zones and Counties Examples:

COZ91-92-KSZ27>29-41-42
Colorado zones 91 and 92, Kansas zones 27, 28, 29, 41, and 42

TXC67-183-203-315-459-LAC17
Texas counties 67, 183, 203, 315, and 459, Louisiana county 17

US WxSrvr Feed