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β
Week 12 - 18 Mayβ
Week 19 - 25 Mayβ
Hardwareβ
Detail in a few words the hardware used.
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 |