Skip to main content
Version: ACS CC

Fire Prevention & Alarm System

Prevent wildfires by measuring relevant data and notifying authorities

info

Author: Răzvan-Ștefan Costea
GitHub Project Link: https://github.com/UPB-PMRust-Students/proiect-RazvanDire

Description

A system that takes periodic measurements of atmospheric pressure, temperature, humidity and light intensity levels. When a certain combination of parameters is reached, based on accepted scientific research, local authorities are notified and an alarm is started.

The system is intended to be used in areas that are arid and/or prone to wildfires. As such, the system runs on batteries and has a GPS module, so it can be located.

  • two different sensors take the measurements
  • the latest measurements are displayed on an LCD screen for passersby
  • the Wi-Fi module allows the system to broadcast its coordinates, provided by the GPS module
  • the audible-visual alarm is provided by a buzzer and flashing LEDs

Motivation

One of the biggest environmental threats that the modern world faces is global warming. The increase in temperatures and decrease in rainfall that result can cause massive wildfires, as we saw in California in January 2025. These wildfires destroy natural habitats and endanger thousands, which only exacerbates the problem further. The goal of my project is to identify conditions that might lead to wildfires and take preventive action, so we stop them before they happen. Furthermore, all the money and effort that would've gone towards putting out those fires and relocating people can be used to "cure" the root problem, global warming, instead of just "treating the symptoms".

Architecture

block

Log

Week 5 - 11 May

Week 12 - 18 May

Week 19 - 25 May

Hardware

  1. Raspberry Pi Pico 2W:
  • the microcontroller
  • reads data from the sensors and activates the buzzer and the LEDs when certain parameters are reached
  • sends the measurements to the LCD screen and the coordinates from the GPS via Wi-Fi
  1. BME280:
  • pressure, temperature and humidity sensor
  • takes periodic measurements and sends the data to the MCU
  1. TSL2561:
  • light intensity sensor
  • measures visible and infrared light intensity
  • takes periodic measurements and sends the data to the MCU
  1. GY-NEO6MV2:
  • GPS module
  • provides the GPS coordinates of the system
  1. LCD screen:
  • displays the data measured by the sensors for passersby
  1. Buzzer & LEDs:
  • the audible-visual alarm: when certain parameters are reached, the alarm is triggered

Schematics

kicad

Bill of Materials

DeviceUsagePrice
Raspberry Pi Pico 2WThe microcontroller and debugger39.66 RON × 2
BME280Pressure, temperature and humidity sensor73.99 RON
TSL2561Light intensity sensor22.99 RON
GY-NEO6MV2GPS Module44.95 RON
BreadboardConnect all the components9.98 RON
LCD screenDisplay the sensors' measurements16.34 RON
BuzzerAudio alarm1.40 RON
LEDVisual alarm0.39 RON × 2
Pin headerConnect components to the breadboard0.99 RON × 3
Battery holderPower the circuit3.95 RON
Total-256.67 RON

Software

LibraryDescriptionUsage
embassy-rpHAL targeting the RP2350Access to the peripherals
embassy-timeTimekeeping, delays and timeoutsCreate timers
embassy-netAsync network stackSend messages over Wi-Fi
embassy-executorAn async/await executorCreate different tasks
lcd1602-rsDisplay libraryUsed for my 16 characters on 2 lines LCD screen
heaplessStatically allocated dataUsed to write strings for my LCD
  1. Lab 03 - PWM & ADC
  2. Lab 04 - Asynchronous Development
  3. Lab 06 - Inter-Integrated Circuit
  4. Lab 07 - Wi-Fi
  5. How to connect LCD without I2C