Despite their best efforts, all weather apps will eventually lie.
Weather is often hyper-local. For example, trying to suss out the temperature this morning:
App | Temperature |
---|---|
Accuweather | 41°F (5°C) |
Carrot | 36°F (2°C) |
Ventusky | 22°F (-5°C) |
Garmin Running watch | 48°F (8.8°C) |
So, in 2013, I set up a Davis Vantage Vue integrated sensor suite (ISS) and mounted it on a pole attached to my garage.
Actual temperature (in my backyard): 47°F (8°C)
Weather station hardware 🖥️
In 2013, the DIY weather station route wasn’t for me.
A DIY station was:
- 🙃 Beyond my skillset (at the time)
- 🏴 Built with fragile, general-purpose parts that may fail when tasked with standing up to the harsh Colorado sunshine year after year
So, over time, I cobbled together an off-the-shelf solution:
- Davis Vantage Vue Wireless Integrated Sensor Suite (ISS)
- Davis Vantage Wireless Console/Receiver
- Ambient Weather WeatherMount station mount
- Davis WeatherLink® USB Data Logger
- Raspberry Pi 3 Model B Rev 1.2
- SunFounder PCF8563 IIC I2C Real Time Clock RTC (for the Raspberry pi).
Weather station software 🌐
WeeWX is free and open-source weather station software written in Python. And it’s the heart of my system.
It has out-of-the-box support for everything I want:
- Great docs
- Local SQLite storage for weather data
- Support for sending your data over MQTT
- Uploads to PWSWeather.com, CWOP, WOW, AWEKAS, and even WUnderground (if you’re interested in gifting your data to IBM and getting bupkis for it)
- Static HTML/plain text reports, including:
- Graphs of current and historical conditions
- Historical climatology reports (complete with heat/cool degree days per month)
Frustrations 🤬
Raspberry Pi
In 2023, using a Raspberry Pi is a mistake.
Any of the cheapo x86 mini-pcs that retail for about $150 would be a nicer option than a Raspberry Pi.
Running WeeWX on a Raspberry Pi has some problems (all of which are well-document on their wiki):
- No hardware clock – this causes screwy date/time data following a reboot. I added an RTC module to thwart this problem.
- Write-heavy vs. SD-Cards – WeeWX is a write-heavy application, corrupting even the best sd-cards over time. I’m writing most data to a tmpfs and relying on backup and MQTT for data persistence.
- Unobtainium – In the mid-2010s, Pis were ~$40. Now, Pis are $150 for old models and infinity expensive for newer models (since you can’t find them anywhere).
Davis Vantage Vue
I’m unreasonably angry about Davis forcing me to buy a USB data logger.
Why is there no USB-out in the $275 console? It feels like punishment for eschewing open-source hardware.
Maybe something like the Meteostick would obviate the need for the console+data logger combo, but I’ve never tried it.
But the integrated sensor suite has been great: the only maintenance I do is swapping out the CR123A battery every few years (it’s mostly solar powered).
Weather data everywhere 🚀
Now that I own my own weather data: I spew it all over the place.
I publish data to:
- Citizen Weather Observer Program
using my ham callsign
- so, my data shows up on the APRS.fi map
- PWSWeather.com, and
- MQTT to Home Assistant
- Prometheus
There are weather widgets all over my house:
- My desktop’s taskbar (XMobar) shows the current outdoor and indoor temperatures
- Grafana dashboards show me the current conditions (as shown in the picture of my PocketCHIP above)
- I even have a small eink display in my bathroom to check the weather before my morning run
And if eink weather displays in the bathroom are unappealing to you, I just don’t understand what you’re doing here.