Safety in Seconds.
An open-source emergency-response hardware module that fuses LiDAR SLAM mapping and lightweight thermal sensing — giving firefighters real-time spatial intelligence where human vision is completely blind.
Website · Hardware Spec · Software Stack · Getting Started · Contributing
Every year, firefighters are injured or killed not by fire itself — but by disorientation. Smoke, heat, and structural collapse reduce visibility to zero within seconds. Crews navigate lethal environments on intuition alone, with no real-time map, no victim location data, and no hazard awareness.
Commercial mapping solutions exist. They cost tens of thousands of dollars and require specialized training. Most departments never get them.
Resku is the alternative. A compact, open-source sensor module built on commodity hardware — under $200 to assemble — that provides real-time 2D SLAM mapping, thermal victim detection, and structural hazard flagging for any firefighter, anywhere.
| Capability | Description |
|---|---|
| 🗺️ Instant Mapping | Continuous 360° LiDAR sweeps build a live geometric map of room boundaries, doorways, and corridors in real time |
| 🔥 Victim Tracking | Lightweight thermal imaging isolates human body-heat signatures against fire, smoke, and debris |
| Dynamic obstacle detection flags structural instabilities, blocked exits, and movement anomalies before crews encounter them |
Resku runs on components available at any electronics retailer. No proprietary parts, no vendor lock-in.
| Component | Model | Role |
|---|---|---|
| Compute Core | Raspberry Pi 4 Model B (4 GB) | SLAM runtime · sensor I/O · map output |
| LiDAR | RPLIDAR A1M8 | 360° sweep · 5.5 Hz · 12 m range |
| Thermal Array | MLX90640 (I²C) | 32×24 px thermal frame · victim detection |
| IMU | MPU-6050 (I²C) | 6-DOF gyroscope + accelerometer · odometry correction |
| Barometer | BMP280 (I²C) | Ambient temp/pressure logging |
| Power | USB-C 5V/3A or LiPo HAT | Field-portable operation |
Estimated BOM cost: < $200 USD
resku/
├── slam/ # 2D SLAM engine (EKF + occupancy grid)
├── drivers/ # LiDAR, thermal, and IMU sensor drivers
├── fusion/ # Sensor fusion pipeline
├── mapping/ # Map rendering and PGM/PNG export
└── web/ # Site source (index.html, style.css, script.js)
| Layer | Library / Tool | Notes |
|---|---|---|
| SLAM Engine | Hector SLAM / custom EKF | 2D occupancy grid mapping |
| LiDAR Driver | rplidar-python |
Slamtec SDK wrapper |
| Thermal Driver | smbus2 + custom MLX90640 lib |
32×24 frame at 4 Hz |
| IMU Fusion | mpu6050-raspberrypi |
Complementary filter |
| Map Output | PGM / PNG via Pillow | Compatible with ROS map_server |
| Runtime | Python 3.11 · asyncio |
Non-blocking sensor loop |
- Raspberry Pi 4 Model B with Raspberry Pi OS Lite (64-bit)
- RPLIDAR A1M8 connected via USB
- MLX90640 and MPU-6050 on I²C bus
- Python 3.11+
git clone https://github.com/LetsResku/resku.git
cd resku
pip install -r requirements.txtsudo raspi-config # Interface Options → I2C → Enable
sudo reboot
i2cdetect -y 1 # Verify sensors at 0x33 (MLX90640) and 0x68 (MPU-6050)python3 main.pyThe module begins scanning immediately. Live map output is written to /var/resku/live.pgm and updated at each scan cycle.
Resku uses Simultaneous Localization and Mapping (SLAM) to build a spatial map of its surroundings while tracking its own position — no GPS, no prior floor plan required.
1. SCAN → LiDAR emits 360° laser pulses, measuring distance to every surface
2. MATCH → New scan is compared to the current map using ICP (Iterative Closest Point)
3. UPDATE → Occupancy grid is updated; EKF corrects positional drift using IMU data
The result is a continuously-refined geometric map of the environment, rendered in real time regardless of smoke, dust, or darkness.
Resku welcomes contributions from robotics engineers, embedded developers, firefighters, and anyone who wants to help. The hardware is accessible, the software is open, and the problem is real.
- Fork the repo
- Create a feature branch (
git checkout -b feature/your-feature) - Commit your changes (
git commit -m 'Add your feature') - Push and open a Pull Request
For major changes, please open an issue first to discuss what you'd like to change.
MIT License — free to use, fork, modify, and distribute. See LICENSE for details.
Built by students at LCPS DSAI · Loudoun County Public Schools · Data Science & AI Program