This project demonstrates a fire detection and response system using an ESP32-S3, an MLX90640 IR thermal camera, and a relay-actuated fire extinguisher. It detects high-temperature zones using thermal imaging and automatically activates an actuator while sending a real-time alert over WiFi.
📽️ Watch detailed Result Video
- Fire simulated with a heat source
- Relay activates for 2 minutes
- WiFi alert is sent to a server endpoint
| Component | ESP32-S3 Pin | Description |
|---|---|---|
| Relay Module | GPIO34 | Controls fire extinguisher |
| MLX90640 Sensor | I2C (SDA/SCL) | SDA: GPIO21, SCL: GPIO22 |
| Actuator (via Relay) | External Power | 5V/12V depending on load |
- Thermal sensing with MLX90640 (32x24 pixels)
- Configurable temperature threshold
- 2-minute relay trigger for actuator
- WiFi-enabled HTTP alert for remote monitoring
- Modular and extensible code
FireSystem.ino– Main Arduino sketchinclude/secrets.h– WiFi and server settingsdocs/pin_diagram.png– Visual pin mappingdocs/result_demo.mp4– System demo video
-
Install Required Libraries in Arduino IDE:
- Adafruit MLX90640
- WiFi
- HTTPClient
-
Create
include/secrets.hfile:#pragma once #define WIFI_SSID "YourSSID" #define WIFI_PASSWORD "YourPassword" #define FIRE_ALERT_URL "http://your-server.com/fire-alert"
-
Connect the hardware as per
docs/pin_diagram.png. -
Upload
FireSystem.inoto your ESP32-S3 via Arduino IDE. -
Open Serial Monitor at
115200baud to view live status.
Do not upload your secrets.h file to GitHub. It’s already excluded via .gitignore.

