Pi Weather Station

The Pi Weather Station is a Raspberry Pi and Arduino powered Weather Station, energy monitor, temperature monitor and local weather forecast display.

The project comprises of five systems:

  • Indoor display hub (powered by a Raspberry Pi Model B+) – acts as the main hub of the system, uploads data to the web and displays current and historical data.
  • Weather sensor node (powered by a Raspberry Pi Model A and Arduino Pro Mini clone) – gathers all the weather data from outdoors and lives in a shed.
  • Energy monitor node (powered by an Adafruit HUZZAH ESP8266) – remotely measures instantaneous electrical energy consumption.
  • Auxiliary display unit (powered by an Adafruit HUZZAH ESP8266) – provides an additional remote display of weather data
  • Website to allow for remote viewing of conditions / condition history – provides a remote platform to view current and historical data.

For more details about each of the above systems click on their link above or use the menu on the right hand side of the page.

I am also developing this project entirely in my spare time so it may be a while before I have this project finished, especially since I keep dreaming up extra features for it (some of which are now working, i.e. the energy monitor)!

Project aims:

The main project aims are to:

  • Display and log current weather conditions, including:
    • Indoor and outdoor temperature
    • Indoor and outdoor humidity
    • Wind speed and direction
    • Rain fall
    • UV Index
    • Light Level
  • Detect and log lightning strikes
  • Display and log current energy usage
  • Display local weather forecast

I am also using this project to teach myself Python, so please keep this in mind when looking at my code – I am no expert programmer!


This project would not be possible without the work of a great many others, be that their easy to use code libraries, examples or breakout boards.

  • Raspberry Pi Foundation: Raspberry Pi Hardware, Official DSI Screen, Raspberry Pi Weather Station Code for HTU21D driver
  • Adafruit: For their breakouts, libraries and examples
  • Pimoroni: Stand for Official DSI Screen
  • OpenEnergyMonitor: CT Sensor Arduino Code examples and EmonLib which my CT sensor code is heavily based on!

This is not everyone but I will update this list as I finalize the software!

One Comment:

  1. Pingback: Weather station using the Raspberry Pi touchscreen and Kivy | Raspberry Pi Pod

Leave a Reply