Die Marke Honeywell bietet günstige Zigbee Rauchmelder an, die in Homeassistant integriert werden können. In diesem Beispiel nutze ich das Modell Honeywell Smoke Detector, das für unter 30€ bei AliExpress erworben werden kann.
Einbindung über Phoscon App
Der Rauchmelder kann über die deCONZ Integration eingebunden und muss zuvor über die Phoscon App verbunden werden. Wie bereits in allen anderen Beiträgen zum Thema Zigbee Geräte nutze ich dafür das offizielle deCONZ Add-On.
Der Pairing Mode des Rauchmelders wird über drei schnelle kurze Klicks auf den einzigen Button des Geräts aktiviert. Anschließend steht der Rauchmelder in der Phoscon App in der Sektion Sensoren zur Verfügung:
Der Rauchmelder erscheint in Homeassistant als Binary Sensor, der detektierten Rauch mit einem State on anzeigt. Zusätzlich sind drei weitere Sensoren vorhanden:
- Ein Binary Sensor, der einen niedrigen Batteriestand mit dem State
onanzeigt. - Ein Binary Sensor, der die Ausführung des Test-Modus mit dem State
onanzeigt. - Ein numerischer Sensor, der den Batteriestand in Prozent anzeigt.
Rauchmelder Gruppe erstellen
Da ein Rauchmelder selten alleine daherkommt, werden alle Geräte in einer Gruppe mittels Group Integration zusammengefasst. Dazu folgenden Eintrag in der group.yaml erstellen und die Namen der Entities entsprechend anpassen:
rauchmelder:
name: Rauchmelder
entities:
- binary_sensor.rauchmelder_flur
- binary_sensor.rauchmelder_ballsaal
- binary_sensor.rauchmelder_schlafzimmerDer Eintrag erzeugt in Homeassistant nun eine Gruppe:
Der Vorteil der Group Integration liegt darin, dass nur einer der Sensoren einen Feueralarm melden muss, um den State der Gruppe auf on zu setzen. Dieser State der Gruppe wird in der nun zu erstellenden Automation genutzt.
Automation für Push-Message
Die folgende Automation erzeugt eine Push-Nachricht, die den Namen des Rauchmelders enthält, der einen Brand/Rauch detektiert hat. Trigger ist der State der anglegten Gruppe. Im Falle eines Brandes werden alle Lichter des Hauses blinkend geschaltet, mittels des Parameters flash: long der Action light.turn_on.
- alias: Feueralarm
trigger:
- trigger: state
entity_id: group.rauchmelder
to: 'on'
action:
- action: notify.mobile_app_iphone
data:
title: "🔥 Feueralarm 🔥"
message: "{{ states | selectattr('entity_id','in', state_attr('group.rauchmelder','entity_id')) | selectattr('state','eq','on') | map(attribute='name') | join(', ') }}"
data:
tag: "push_feueralarm"
channel: Alarm
- action: light.turn_on
data:
entity_id:
- light.deconz_licht_wohnzimmer
- light.deconz_licht_flur
- light.deconz_licht_schlafzimmer
- light.deconz_licht_ballsaal
flash: longAutomation Testen
Hält man den Button des Rauchmelders lange gedrückt, wird der Test-Modus aktiviert. Die erzeugte Gruppe wechselt in den State on und die Automation wird getriggert:
Nachricht auf Ulanzi Pixelclock
Wer eine Ulanzi Pixelclock im Eigenheim betreibt, kann zusätzlich auf dieser eine Warnung ausgeben:
- action: mqtt.publish
data:
qos: 2
retain: false
payload: >-
{
"text": "Feuer!",
"icon": "fire",
"hold": true
}
topic: pixelclock/notifyAls Icon nutze ich dafür die animierte Flamme mit der Icon ID 7756, die unter dem Dateinamen fire.gif auf der Pixelclock abgespeichert ist: