APRS-IS and Weather Reports

by Dave - [email protected]

My first exposure to APRS (Automatic Position Reporting System) involved configuring my home VHF station to send periodic weather data to the APRS weather servers. My station configuration includes a Peet Bros. Ultimeter 2100 home weather station, a Kantronics KPC 3+ TNC, and an ICOM IC-910 all mode transceiver.

The 2100 can be configured to send formatted 'records' out an RS232 serial port at 2400 baud. Of the many record formats available, two of them are APRS compatible: the Packet Mode record (Table 1) and the Data Logger record (Table 2).

I am using the Data Logger record primarily because the fast update rate allows the system to send the most timely weather data independent of the VHF transmission rate.

The serial stream of weather records is routed to the TNC via the GPS input port. The TNC reads each data record and is configured to periodically transmit this data via a VHF radio link. The VHF radio link in my area is one or two digipeater hops to a station with an Internet Gateway to the APRS servers.

The RF method requires a dedicated TNC and VHF radio to implement. Uploading weather data to the APRS system via the RF link works just fine as long as the RF path is good and all stations are up and running.

The same weather data could be formatted and delivered direct to the APRS weather servers -- without tying up a TNC and radio -- by using a computer and available software to collect, format, and periodically upload the data to the servers.

The 'direct to internet' project was conceived when I wanted to participate in the Citizen Weather Observer Program (CWOP) and not tie up a computer and/or a radio/TNC setup.

My initial objective was to use a PIC microprocessor to condition the data from the 2100 weather station, then add the APRS header and telnet the data to the WX server.

The device I chose to interface to the internet is a Siteplayer Ethernet to RS232 adapter. Once I had the device in hand I realized it would be much easier to insert the PIC processor into the adapter module; this saved the expense of extra interface circuitry, a power supply, etc.

The modifications to the SitePlayer include breaking the serial data and control lines between the RS232 level converter and the adapter processor, wiring the PIC processor between these lines and supplying power to the PIC.

The PIC processor now reads the 2100 'Data Logger' output stream continuously and performs the data conversion from the Data Logger format to APRS format including:

  1. Converting 'kph' to 'mph' for all wind speed data
  2. Adjusting tenth degree temperatures to whole degrees
  3. Converting wind direction to a 0-359 degree value
  4. Calculating a rolling nine minute peak wind speed value (gust)
  5. Calculating a rolling average 1 hour rain rate (1 minute resolution)
  6. Calculating a rolling average 24 hour rain rate (20 minute resolution)
  7. Detecting a missing sensor (using Peet '----' data protocol)
  8. In addition to the data conversion, the PIC processor also provides:

  9. The addition of APRS message routing, position, and data format information
  10. The ability to send APRS status messages
  11. Data upload interval timing

Additional functionality could include the ability to modify user-specific information such as ID/callsign info, routing information, status message content, upload intervals, etc., without a PIC programmer.

Table 1

    The Packet Mode ($ULTM) record output rate is once every five minutes.

  • $ULTW000000000168020A28470026A1F60001----0003024400040000
  • $ULTW header
  • 0000 wind speed [0.1 kph] (last 5 min)
  • 0000 wind direction of peak [0-255]
  • 0168 current outdoor temp [0.1 deg F]
  • 020A rain long term total [0.01 inches]
  • 2847 current barometer [0.1 mbar]
  • 0026 barometer delta value [0.1 mbar]
  • A1F6 barometer correction factor [lsw]
  • 0001 barometer correction factor [msw]
  • ---- current outdoor humidity [0.1%]
  • 0003 date [day of year]
  • 0244 time [minute of day]
  • 0004 today's rain total [0.01 inches]
  • 0000 1 minute wind speed average [0.1kph]

Table 2

    The Data Logger (!!) record output rate is approximately 175 records per minute.

  • !!000000D80174026327550306--------0006052000360000
  • !! header
  • 0000 wind speed [0.1 kph]
  • 00D8 wind direction [0-255]
  • 0174 current outdoor temp [0.1 deg F]
  • 0263 rain long term total [0.01 inches]
  • 2755 current barometer [0.1 mbar]
  • 0306 current indoor temp [0.1 deg F]
  • ---- current outdoor humidity [0.1%]
  • ---- current indoor humidity [0.1%]
  • 0006 date [day of year, -1]
  • 0520 time [minute of day, 0-1440]
  • 0036 today's rain total [0.01 inches]
  • 0000 1 min wind speed average [0.1 kph]

To view the current data stream visit APRS WX Data from station WD7K-4. Click on the 'Raw APRS Data' link in the left sidebar to view the nine minute data packets.

Figure 1 - Modified RS232 to Ethernet Adapter