What's the weather like today?

I ask a similar variation of questions every day. How hot is it outside? Is it windy? Is it going to rain soon? Do we need sunscreen? All of these questions have the same end goal, are the conditions good for us to take our toddler outside to play?

With various weather forecast provider options available in the app store, I felt the natural solution was to build my own weather station. wtwlt (what's the weather like today) was built to expose the data collected in my own backyard straight to the public web.

To do this I need to step back into the IoT space and dust off my memory of working with Arduino, connecting and calibrating sensors, low energy communication protocols, and half-baked hardware mounting solutions.

I'm starting with an off the shelf kit from SparkFun. Their DIY weather station kit provides the basics to get temperature, humidity, pressure, wind speed, direction, rainfall, and even soil moisture in one package. Their weather MicroMod carrier board gets all of this data into an Arduino where it is published through a light weight message queue.

It wouldn't be IoT without an overwhelming list of acronyms and this project delivers. Reading a BME280 over I2C and SPI on an ESP32 to publish through MQTT is the easy part. Deciding where that data goes is where it gets interesting.

To serve a weather dashboard, I'm sticking to my self hosted pattern. A Go service running on my Raspberry Pi. Sensor data is consumed every 60s via an MQTT broker and stored in a SQLite database. The service renders and serves a simple web page using this data, aggregated in ways I find most useful. You can see it live at https://weather.tylerkno.ws.

Historic data is great but I need to see future forecasts as well. The Pi server combines sensor data with an Open-Mateo API integration to chart what I should expect over the next 24 hours.

The end result of this is a functioning weather station. It runs off of a solar panel with an attached battery which should power it with energy to spare. It has the added benefit of being enough of an eyesore to annoy my HOA.

With wildfire season in full swing, air quality is a fresh concern. Adding a sensor and updating my dashboard shouldn't be too difficult with this base.

A truly hyper local weather station telling me everything I need to know before going outside.