Smart Weather station
A weather monitoring system that measures enviormental conditions and automatically reacts to changes like heat, humidity and UV levels.
Author: Student Name Fekete Anna-Maria \
GitHub Project Link: https://github.com/UPB-PMRust-Students/project-annfkt
Descriptionβ
This project is a smart weather station built around the STM32F767ZI microcontroller, designed to monitor key environmental conditions such as temperature, humidity, barometric pressure, UV intensity, and rainfall. Using a variety of sensors, the system collects environmental data and provides both visual feedback through a display and audible alerts when preset thresholds are reached. Users can easily observe current conditions through an intuitive interface. The project focuses on sensor integration, data processing, and multitasking, resulting in a functional and versatile environmental control platform.This compact and customizable weather station demonstrates how embedded hardware and software can be combined to create an efficient and responsive environmental control system.
Motivationβ
I chose this project based on both my technical background and personal interests. During my participation in the Future Shapers Summer School, organized by the University POLITEHNICA of Bucharest in collaboration with Honeywell, I gained valuable hands-on experience working with a variety of environmental sensors. This program not only deepened my understanding of sensor integration and data acquisition but also sparked a strong interest in developing practical applications that involve environmental monitoring.
In addition to this technical foundation, I have a long-standing passion for nature and natural phenomena, which has continually inspired my curiosity about how environmental conditions change and interact. The idea of building a system that can observe, respond to, and visualize those changes aligns closely with my interests in both technology and the natural world.
By combining my experience from the summer school with my enthusiasm for environmental topics, this project offers an ideal opportunity to apply my skills in a meaningful wayβdeveloping a system that connects embedded technology with nature, while also exploring areas like automation, user interaction, and environmental awareness.
Architectureβ
It is based on the Nucleo STM32F767ZI microcontroller, which controls the system and processes data from different environmental sensors. The DHT11 sensor measures temperature and humidity and is connected to a digital GPIO pin. The BMP280 sensor, which reads air pressure, uses the I2C interface and shares the communication lines with the LCD display, which also uses I2C to show the collected data. The UV sensor and MQ-2 gas sensor are connected to analog input pins, while the rain sensor is connected to a digital GPIO pin to detect rain.
The station gives output through an LCD display and several LEDs. The LEDs light up when certain conditions are met, like high gas levels or rain. There is also an optional button connected through GPIO that can be used to reset the data or change the display mode. The system connects to a laptop using a USB cable, which is used for both programming the board and powering it. This project shows how sensors, displays, and outputs can be connected and controlled using a microcontroller in a well-organized embedded system.
Logβ
Week 21 - 27 Aprilβ
Choosing and buying the main components of the project.
Week 28 April - 4 Mayβ
Receiving most of the necesarry hardware and testing it to ensure functionality. Performing tests on the sensors using an Arduino to observe accuracy.
Week 5 - 11 Mayβ
Starting to test my hardware on the STM that i wish to use for the project. Firstly testing an easy example on the board to ensure functionality then starting th e hardware and a small part of the software. startinf to encounter issues at the esnd of the week.
Week 12 - 18 Mayβ
Trying o solve the newly discoverde board issues while putting together the hardware of my project. Finishing the layout of the breadboard while still encountering problems on my board.
Week 19 - 25 Mayβ
Hardwareβ

For the second milestone of the Smart Weather Station project, the base hardware setup has been completed and assembled on a breadboard. The current system includes key environmental sensors such as the DHT11 for temperature and humidity, the BMP280 for atmospheric pressure, a UV sensor, a rain sensor, and an MQ-2 gas sensor for detecting harmful gases. A 16x2 LCD screen is included to display the readings in real time, all managed by the Nucleo STM32F767ZI development board. This configuration forms the foundation of the weather station and is fully functional for monitoring environmental conditions. While this setup may remain as the final version, there is potential for future expansion with the addition of components like buttons, LEDs, and a buzzer for enhanced interactivity and alert features.
Schematicsβ
Place your KiCAD schematics here.
Bill of Materialsβ
| Device | Usage | Price |
|---|---|---|
| STM32F767ZI | The microcontroller | 150 RON |
| DHT11 | Temperature and humidity sensor | 7 RON |
| BMP280 | Temperature and pressure sensor | 9 RON |
| UV Sensor | Detects UV rays | 30 RON |
| Rain Sensor | Detects Rain | 8 Ron |
| Gas Sensor Module MQ-2 | Detects gas in the air | 11 RON |
| LCD 1602 | LCD Screen | 16 RON |
Softwareβ
| Library | Description | Usage |
|---|---|---|
| st7789 | Display driver for ST7789 | Used for the display for the Pico Explorer Base |
| embedded-graphics | 2D graphics library | Used for drawing to the display |
| embassy | Asinc embeded rust Framework | Used for interacting with Periferals |