Tho85 / ws2mqtt

Connect WiSafe2 devices to Home Assistant
BSD 3-Clause "New" or "Revised" License
28 stars 4 forks source link

Silence alarms? #2

Open shred opened 1 year ago

shred commented 1 year ago

For a long time I am looking for a good smoke alarm solution that integrates well into my home automation. The FireAngel and your ws2mqtt bridge finally seems to be what I am looking for. Thank you for your project!

I have a question: As far as I can see, ws2mqtt can read the status, report alarms and trigger test alarms. Is it also possible to silence an actual alarm?

Reason: If I am not at home (in safety, e.g. on a vacation), I'd like to be able to silence a confirmed false alarm, to avoid that neighbours are calling the fire brigade for nothing.

Tho85 commented 1 year ago

The WiSafe protocol supports silencing all alarms remotely, as well as silencing only those devices that were not the source of the alarm. However, I have deliberately not implemented that functionality. From my perspective a sounding alarm is always worth checking out in person, either by a friendly neighbour or the fire brigade.

However, speaking from a technical perspective, it should be possible to implement this.

shred commented 1 year ago

Thanks! I share your concerns. I would only silence an alarm remotely if I was absolutely sure it was false (e.g. by inspecting the room via surveillance camera first, and keep monitoring it for a while).

Could you add the feature, and maybe disable it by default via #define, so one would have to actively enable it?

I could also do a fork and add it there, but I would then need your help about what to add.

Tho85 commented 1 year ago

Hi, a compile time switch (e.g. with a #define) sounds like a good idea. Unfortunately, after digging through my logic analyzer dumps, it seems I have never actually captured the required commands to silence the alarm. If someone would happen to capture that command by hooking into the communication between radio module and smoke detector, the following steps would be necessary to implement the functionality

shred commented 1 year ago

I can try to do that, and then send a pull request. However I just ordered the smoke detectors and hardware components today, so it might take a while until I got everything set up and figured out how it works. If someone else is faster, please don't wait for me. :smiley:

Do I need to have the control unit to send the commands? I only ordered smoke detectors, and the corresponding WiSafe2 modules. (I ordered ST-632-DET detectors, I hope they're still compatible to the ST-630-DE model mentioned in the README.)

Tho85 commented 1 year ago

The WiSafe protocol supports silencing all alarms remotely,

This would require a control unit like the W2-WTSL-1EU which can silence all alarms (at least according to its manual)

as well as silencing only those devices that were not the source of the alarm.

This will only require a ST-632-DET detector + module since pressing the test button during an alarm will silence all other alarms except for the one detecting smoke.

Feel free to open a PR :+1: