OpenAWOS
Overview
The idea for this project was to build a simple weather station for our glider field that could report surface wind speed over the radio similar to the AWOS you find at a normal airport. It needs to share the same channel as our CTAF though so it can only be on-demand and not a continuous broadcast. I found some Vaisala ultrasonic anemometers on eBay for a can't-refuse price and then designed the rest of this system around that. Two of the three appear to be in new condition. My hope is that being a professional grade sensor with no moving parts, they will withstand the elements better than past anemometers have. Interfacing to them is pretty easy. One of the modes they can be configured to outputs NMEA strings over RS232. Python code on the pi parses these messages and does some simple averaging.
To detect "mic clicks" I tapped into the squelch circuit of an old icom A21 handheld. This was purchased off eBay cheap as it's missing the volume knob. Output from the squelch detector is fed via a resistor divider into one of the pi's GPIOs and the software polls it every 10ms. Three "clicks" will trigger a wind report transmission over the Icom A21. The Icom is keyed by completing the mic circuit. I used a reed switch driven by another GPIO pin to allow the pi to key the radio on demand. Audio is generated by the pico2wave speech synthesizer.
It would also be nice to see the weather data on the internet, and the APRS system seems like a convenient way to do that. A PiTNC (COTS hardware) along with a maxon VHF data radio works great for this purpose.
The 16x2 LCD displays current wind, temperature, and system status. The analog zero senses the current 12v input voltage so battery status can be monitored remotely.
DB9 Data connector pinout
Pin | Desc |
---|---|
1 | +12v |
2 | TX out to WS425 |
3 | RX in from WS425 |
4 | N/C |
5 | Gnd |
6 | N/C |
7 | N/C |
8 | One-wire Data |
9 | +3.3v |