We’ve seen a lot of weather displays over the years, and plenty of the more modern ones have been using some form of electronic paper. So what makes this particular build from [Harry Stern] different? The fact that the firmware running on the ESP32 microcontroller at its heart was developed in Rust.
The weather station itself is capable of operating for several months on its rechargeable NiMH battery bank. The Rust section of the project is in two parts, the first of which runs on a server which downloads the weather data and aggregates it into an image. The second part runs on the ESP32 using esp-idf which configures peripherals, turns on and connects to Wi-Fi, retrieves the image from the server, displays the image and then puts the display to sleep. By doing the heavy lifting on the server, the display should be able to run for longer than it would if everything was happening on the ESP32.
The project code is available from this GitHub page which should allow even Rust beginners to follow along, and the case file is also available for those with a 3D printer. [Harry] has a few upgrades planned for future releases as well, including a snap-fit case, a custom PCB, and improved voltage regulator for better battery life, and enhanced error handling for the weather API. And Rust isn’t the only interesting part of this project, either. As prices for e-paper displays continue to fall, more and more of them are found in projects like weather stations and even complete laptops which use these displays exclusively.
Weather can have a significant impact on transport and operations of all kinds, especially those at sea or in the air. This makes it a deeply important field of study, particularly in wartime. If you’re at all curious about how this kind of information was gathered and handled in the days before satellites and computer models, this write-up on WWII meteorology is sure to pique your interest.
The main method of learning weather conditions over the oceans is to persuade merchant ships to report their observations regularly. This is true even today, but these days we also have the benefit of things like satellite technology. Back in the mid-1900s there was no such thing, and the outbreak of WWII (including the classification of weather data as secret information due to its value) meant that new solutions were needed.
The aircraft of the Royal Air Force (RAF) were particularly in need of accurate data, and there was little to no understanding of the upper atmosphere at the time. Eventually, aircraft flew regular 10-hour sorties, logging detailed readings that served to provide data about weather conditions across the Atlantic. Readings were logged, encoded with one-time pad (OTP) encryption, then radioed back to base where charts would be created and updated every few hours.
The value of accurate data and precise understanding of conditions and how they could change was grimly illustrated in a disaster called the Night of the Big Wind (March 24-25, 1944). Forecasts predicted winds no stronger than 45 mph, but Allied bombers sent to Berlin were torn apart when they encountered winds in excess of 120 mph, leading to the loss of 72 aircraft.
With summer just underway here in North America, it may seem like a strange time to talk about snow. But when you live in North Idaho, winter is never very far away and is always very much on everyone’s mind. Our summers are fierce but all too brief, so starting around September, most of us begin to cast a wary eye at the peaks of the Bitterroot range in the mornings, looking for the first signs of snow. And in the late spring, we do much the same, except longingly looking for the first signs that the snowpack is finally breaking up.
We all know how important snow is, of course. Snow is our lifeline, nearly the only source of drinking water we have here, as well as the foundation of our outdoor recreation industries. We also know that the snowpack determines our risk for wildfires, so while the long, dark winters may take a psychological toll, the longer the snow stays on the mountains, the less chance we have of burning come summer.
These are all very subjective measures, though, and there’s way too much riding on the snowpack to leave it up to casual observation. To make things more quantitative, the US Department of Agriculture’s Natural Resources Conservation Service (NRCS) has built a system across the western US that measures the snowpack in real-time, and provides invaluable data to climatologists, fish and game managers, farmers, and even the recreation industry, all of whom have a vested interest in the water held within. The network is called SNOTEL, and I recently got a chance to take a field trip with a hydrologist and get an up-close look at how it works.
Online weather services are great for providing generic area forecasts, but they don’t provide hyperlocal data specific to your location. [Harald Kreuzer] needed both and built a Raspberry Pi Weather Station that provides weather forecasts for the next 7 days as well as readings from local sensors. The project is completely open source and based on a Raspberry Pi base station which connects to ESP32 based sensor nodes and online services to nicely present the data on a 7″ touch screen display.
The architecture is quite straightforward. The ESP32 based sensor nodes publish their readings to an MQTT broker running on the Raspberry Pi. The Pi subscribes to these sensor node topics to pick up the relevant sensor data. This makes it easy to add additional sensor nodes in future. Weather forecast data is collected by connecting to the OpenWeatherMap API. All of the collected information is then displayed through an app built using the Kivy: open source Python app development framework. Continue reading “Raspberry Pi Weather Station Features Wireless Sensor Nodes”→
[Joe] has created a weather gauge that uses two servo motors to position mechanical pointers to indicate weather symbols and time ranges. The electronics consists of a push button and two SG90 servos driven by a Raspberry Pi Zero W 2. The case is 3D printed including the pointers attached to the servos and the button brim of the switch. The Raspberry Pi Zero W 2 is programmed to automatically connect to the OpenWeather API to retrieve the latest weather conditions, with the latitude and longitude being configured into the update script during the configuration and assembly stages.
[Joe] has provided extensive documentation about the build and software setup, in addition to releasing the source code and STL files for anyone wanting to make their own. [Joe] even offers kits for those who don’t want to go through the trouble of putting one together themselves — not that we imagine many in this particular audience would fall into that category.
[Giovanni Aggiustatutto] creates a DIY weather station to measure rain fall, wind direction, humidity and temperature. [Giovanni] has been working on various parts of the weather station, including the rain gauge and anemometer, with the weather station build incorporating all these past projects and adding a few extra features for measurement and access.
For temperature and humidity, a DHT22 sensor is located in a 3D printed Stevensen screen, giving the sensor steady airflow while protecting the module from direct sunlight and rain. A mostly 3D printed wind vane is printed with the base attached to a ball bearing and magnet so that the four hall sensors positioned in a “plus” configuration at the base can detect direction. The 3D printed anemometer uses a hall sensor to detect the revolution speed of the device. The rain gauge uses a “tipping bucket” mechanism, with a magnet attached to it that triggers the hall sensor affixed to the frame. The rain gauge (or pluviometer if you’re fancy) needs extra calibration to adjust for how much water the buckets take on before tipping.
An ESP32, with additional level shifters and BMP180 atmospheric pressure sensor module, are placed in a junction box. The ESP32 is used to communicate with each of the sensors and allows for an external internet connection to a Home Assistant server to push collected data out.
[Giovanni] has done an excellent job of documenting each piece, including making the 3D STL files available. Weather stations are a favorite of ours with a lot of variety in what gets collected and how, from ultrasonic anemometers to solar powered weather stations, and it’s great to see [Giovanni]’s take.
UV rays are great at helping us generate vitamin D, but they can also be harmful, causing sunburn and even melanoma. To help kids keep track of the UV index in his local area, [Jude Pullen] created the UV Budgie.
The build is based around an Arduino Nano 33 IoT board, which queries the Met Office’s API to determine the UV level in the area. The relevant data is then displayed on a small e-ink display, with cute little sun characters telling you about the prevailing conditions. It also announces the current risk level with recorded voice samples, advising on whether precautions should be taken, such as using sunscreen or sheltering inside for the worst days. Plus, there’s a bird that flaps its wings to announce an update, actuated by a small servo in the base.
It’s a fun build that should help [Jude] and his family remain sun safe in the summer. [Jude] notes the build could also be reprogrammed to share other warnings, too. APIs to query local air quality or radiation levels are just some of the ideas that come to mind. Video after the break.