I have had an AAG OneWire Weather Station lying around for ages. It has been collecting dust in the shed for seven to eight years until I had a ‘what can we hack today’ and remembered that I still had it.
Turns out a have a version 3 which uses a DS18S20 OneWire temperature sensor. A DS2423 OneWire counter for the wind speed and a DS2450 OneWire quad A/D converter for the wind direction. All three sensors are supported on an Arduino and it will compile in the Arduino IDE for ESP-8266.
Looking at the schematics it wasn’t hard to figure out how to hack the PCB to make it work without the serial to OneWire adapter.
Basically, I removed the voltage regulator and cut one connection on the PCB. Soldered a few wires to ground and the OneWire bus and all three sensors were recognized by the ESP-01.
A buck step-down converter was placed and a small PCB was made. They were glued in place using hot melt. The OneWire components run at 5V so I used a level converter to connect them to the 3.3V ESP-01. The ESP-01 is powered by an ams1117 5v to 3.3v dc-dc step-down converter.
Code Uploaded and working. You can find it on my GitHub. Added a web interface with real-time updates using a WebSockets server on the ESP-01. Unfortunately, the DS18S20 temperature sensor turns out to be unusable because the buck step-down converter is heating up the enclosure. So I will add a temperature and humidity sensor in a Stevenson screen later on.
That’s the retrofit done. It’s an MQTT-enabled WiFi OneWire Weather Station. The weather station also feeds real-time data to the status page.