PiNet - the Weather Station

I like knowing what the temperature is in my back yard.

And the rainfall amount when it's raining. And the wind speed and direction. That's why I've had a weather station in my backyard for several years now.

We had two Accurite stations in two years. Both crapped out after a season.

So I set about building one that, should something go wrong, at least I could repair.

The end result cost less than the two Accurite stations combined. If I had done this first, I'd have saved money and had a much better weather station from the start.

Image: The weather station on the pole.

  • Powered from a reliable external source. AWG14 romex in conduit underground brings 12VDC to station.
  • A relay in the power box allows for remote rebooting of the Pi. This is controlled by the PoolPi, which just happens to be nearby.
  • Sparkfun sensor bundle. Wind speed / direction, tipping bucket rainfall gauge.
  • BME280 temperature/humidity/pressure sensor mounted in protected chimney.
  • PWM controlled variable speed fan pulls air up the chimney across the BME280 sensor, and also provides a ventilation flow for electronics.
  • Pi accumulates data, formats it and then sends it once a minute to a mySQL database running on "Brilliant", a little i3 Ubuntu machine in the house.
  • Communication is over WiFi. Hardwire Ethernet proved to be too dangerous when lightning storms come around.
  • Custom Python 3 runs the whole thing.

The nitty-gritty details are here on Github.

Image: WeatherPi Block Diagram

Image: WeatherPi System Schematic

Image: WeatherPi Parts List

It is true that this project is not for the faint-of-heart. It was a lot of work, but it was also a lot of fun.

And, in the end, it is very gratifying to know something I built from the ground up is doing as good a job as any commercial system out there.

And I learned a LOT in the process, which is a big part of the motivation to do it, as well as the fun.

Always learning. Always.

link to home page

links