Before you start your day, it’s always helpful to peek at the current weather conditions. So what better way to plan your day than to program a Raspberry Pi for the task? While we’ve seen Raspberry Pi weather displays before, we wanted to share this beautiful Raspberry Pi dashboard created by Chris Twomey. It has a notably sleek interface, complete with a render of a local map based on your current location.
Weather data is taken from Accuweather/OpenWeatherMap API and formatted to display on an Inkplate 10. The Inkplate 10 is a 10-inch e-Ink panel, so it doesn’t use much power, and the data stays visible once the power has been cut off from the Pi. The generated map can be configured to any location you prefer and is shown underneath today’s date.
The map is generated using Google’s Static Maps API. Data is updated regularly on a schedule using MQTT and a server running on the Raspberry Pi. It also handles daylight savings time automatically, so you don’t have to make any adjustments throughout the year. Overall the project should operate on its own without interference.
Twomey tested the setup with a Raspberry Pi 3B+ and a Raspberry Pi Zero W. You should be able to duplicate this project with other models, including the latest Raspberry Pi 4. An ESP32 is also thrown into the mix as a client module to render the image onto the Inkplate 10. The dashboard is powered using a 2000 mAh battery, but Twomey suggests that 3000 mAh might yield longer-lasting results.
The Raspberry Pi needs to connect to the internet to pull data, so a model with wireless support is recommended. When the Pi wakes up, it connects to WiFi before updating the time and date. It’s running a Flask server, as well, to handle the update process for the weather data. You can read more about the software used in this project on the official GitHub page.
If you want to recreate this Raspberry Pi project or get a closer look at how it goes together, check out the Inkplate 10 Weather Calendar project page, and be sure to follow Chris Twomey for more projects and any future updates on this one.