Academic project developed as part of the Computer Science & Network Communication Engineering program at CPE Lyon.
This project consists of a complete urban fire simulation and management system including:
- Fire Simulator: Creation, tracking, and propagation of geolocated fires on an interactive map
- Emergency Management: Deployment and coordination of fire trucks to extinguish fires
- IoT Infrastructure: Data collection via Micro:bit sensors and MQTT communication
- Network Infrastructure: Fire station and data center connectivity via GNS3
├── Feu/ # Web applications for simulation and management
│ ├── Emergency/ # Emergency management interface
│ │ ├── BACKEND/ # PHP API (fire, truck, database management)
│ │ └── FRONTEND/ # Web interface with Leaflet map
│ └── Simulator/ # Fire simulator interface
│ ├── BACKEND/ # PHP API
│ ├── FRONTEND/ # Web interface
│ └── JAVA/ # Java simulation logic
│
├── JAVA/ # Main simulation engine
│ ├── Simulator.java # Simulator entry point
│ ├── Fire.java # Fire model (propagation, intensity)
│ ├── FireTruck.java # Fire truck model
│ ├── EmergencyManager.java # Emergency manager
│ ├── WebService.java # REST communication with API
│ └── Coordinate.java # GPS coordinates handling
│
├── IOT/ # Internet of Things infrastructure
│ ├── microbit/ # Micro:bit gateway scripts
│ └── Python_Server/ # Serial/MQTT communication servers
│
└── Réseau/ # Network configuration
└── Automatisation/ # Jinja2 scripts for router configuration
| Component | Technologies |
|---|---|
| Frontend | HTML5, CSS3, JavaScript, Leaflet.js, jQuery |
| Backend | PHP, MySQL |
| Simulation | Java, JSON Simple |
| IoT | Python, Micro:bit, MQTT (Paho), PySerial |
| Network | GNS3, Jinja2, YAML |
- Random fire generation on the map
- Dynamic fire propagation
- Real-time visualization on Leaflet map
- Automatic truck assignment to fires
- Route calculation with Leaflet Routing Machine
- Real-time vehicle position tracking
- Fire extinguishing upon truck arrival
- Fire detection via Micro:bit sensors
- Radio communication between sensors and gateway
- Data transmission via MQTT and REST API
- Encrypted communications
- PHP 7.4+ with MySQL
- Java JDK 11+
- Python 3.8+ with pip
- Web server (Apache/Nginx)
# Import databases
mysql -u root -p < Feu/emergency.sql
mysql -u root -p < Feu/simulateur.sql
# Configure connection in database.phpcd JAVA
javac -cp .:json-simple-1.1.1.jar *.java
java -cp .:json-simple-1.1.1.jar Simulatorcd IOT/Python_Server
pip install paho-mqtt pyserial clint requests
python serveur-read-from-microbit.pyArchitecture-composant-V2.xml: Component architecture diagramflowchart.drawio: Data flow diagram
- Network Infrastructure: GNS3 model with multi-site connectivity
- IoT Infrastructure: Sensor data collection and transmission
- Functional Analysis: Class diagrams and database schema
- Software Quality: SOLID principles compliance
Project developed by CPE Lyon students - Computer Science & Network Communication Engineering program
Last updated: February 2026