I’ve just finished and published a nice hack for smoke detectors made by FireAngel. These are fairly common in Europe, especially in Germany, as the detectors have been recommended by a leading German consumer safety group some years back. The manufacturer sells an additional, proprietary wireless module (“WiSafe2”) that can be attached to the smoke detectors to make them interconnected.

I have reverse engineered the SPI communication between the detector and the module, designed a PCB to connect an ESP32 to it, and developed software to make the smoke detectors appear in Home Assistant (via MQTT). The gateway uses an Arduino Pro Mini for SPI slave communication, since I could not convince the ESP32 to talk to the module reliably via SPI in slave mode.

Now I can fire automations or activate scenes in Home Assistant when a smoke detector senses a problem. For example, I currently turn on all lights, open all window shutters and turn off the house fan if smoke is detected. A mobile notification informs me about any problem if I’m not at home. And additionally, I can see all devices’ battery states in Home Assistant, so no more searching for the beeping unit if a battery runs low.

I dubbed the project ws2mqtt and released all hardware and software under an open-source license. Check out the Github repo! For now, here are some shots of the final result:

PCB

Home assistant device