HM-SEC-SD Rauchmelder
Features
Das Gerät ist ein VdS-zertifizierter Rauchmelder. Mehrere Rauchmelder können unabhängig von einer Zentrale zu einer Gruppe zusammengefasst werden. Auch ohne FHEM-Zentrale meldet ein Rauchmelder seinen Alarm immer an die anderen vernetzten Rauchmelder weiter.
Hinweise zum Betrieb mit FHEM
Der HM-SEC-SD Rauchmelder beherrscht die AES authentifizierte Kommunikation. Allerdings ist die Steuerung bei aktivierter AES Encryption nur zusammen mit dem HMLAN Konfigurator möglich. Der normale Betrieb, also das Melden von Rauchalarm, ist aber natürlich auch über CUL möglich.
Ein Druck auf die Prüftaste führt zu keiner Funkmeldung.
Ein Test des Alarms kann über den Befehl
set EurerTeamlead alarmOn
am Teamlead erreicht werden und mit
set EurerTeamlead alarmOff
wieder deaktiviert werden. Per
set EurerTeamlead teamCall
kann die Funkvernetzung der Rauchmelder getestet werden. Alle Rauchmelder sollten 10 mal leise piepen.
An den einzelnen Rauchmelder kann als Befehl nur "statusRequest" ausgeführt werden.
Das Pairing sollte wie in HomeMatic Devices pairen beschrieben durchgeführt werden. Es gibt bei den Rauchmeldern 2 Varianten betreffend des Pairings und des Peerings:
Variante 1: einer der Rauchmelder fungiert als Teamlead
Hier sind zunächst die Rauchmelder laut der Homematic-Anleitung untereinander zu vernetzen - ein Rauchmelder in der Gruppe (der erste, bei dem die Anlerntaste gedrückt wurde) fungiert dabei als "Teamlead" und wird in dem Attribut peerIDs gelistet. Achtung: Ein manuelles An- und Abschalten des Alarms ist immer nur für den Master möglich, dieser steuert dann seine Slaves an.
Beispiel für die Konfiguration einer Dreiergruppe, bei welcher TH.SD0 der Master ist:
ssssss, tttttt, uuuuuu -> 6-stellige hexadezimale Seriennummern. (Siehe Logfile: CUL_HM Unknown device CUL_HM_SD_ssssss, please define it)
xxxxxxx, yyyyyyy, zzzzzzz -> 10-stellige Seriennummern (vom Aufkleber auf dem Gerät)
define TH.SD0 CUL_HM ssssss attr TH.SD0 .devInfo 000100 attr TH.SD0 .stc CD attr TH.SD0 actCycle 028:00 attr TH.SD0 actStatus unknown attr TH.SD0 autoReadReg 4_reqStatus attr TH.SD0 expert 2_full attr TH.SD0 firmware 1.0 attr TH.SD0 model HM-SEC-SD attr TH.SD0 msgRepeat 1 attr TH.SD0 peerIDs 00000000,ssssss, attr TH.SD0 room Alarm attr TH.SD0 serialNr xxxxxxxxxx attr TH.SD0 subType smokeDetector attr TH.SD0 webCmd test:alarmOn:alarmOff
define TH.SD1 CUL_HM tttttt attr TH.SD1 .devInfo 000100 attr TH.SD1 .stc CD attr TH.SD1 actCycle 028:00 attr TH.SD1 actStatus unknown attr TH.SD1 autoReadReg 4_reqStatus attr TH.SD1 expert 2_full attr TH.SD1 firmware 1.0 attr TH.SD1 model HM-SEC-SD attr TH.SD1 msgRepeat 1 attr TH.SD1 peerIDs 00000000,ssssss, attr TH.SD1 room Alarm attr TH.SD1 serialNr yyyyyyyyyy attr TH.SD1 subType smokeDetector attr TH.SD1 webCmd test
define TH.SD2 CUL_HM uuuuuu attr TH.SD2 .devInfo 000100 attr TH.SD2 .stc CD attr TH.SD2 actCycle 028:00 attr TH.SD2 actStatus unknown attr TH.SD2 autoReadReg 4_reqStatus attr TH.SD2 expert 2_full attr TH.SD2 firmware 1.0 attr TH.SD2 model HM-SEC-SD attr TH.SD2 msgRepeat 1 attr TH.SD2 peerIDs 00000000,ssssss, attr TH.SD2 room Alarm attr TH.SD2 serialNr zzzzzzzzzz attr TH.SD2 subType smokeDetector attr TH.SD2 webCmd test
Variante 2: ein virtueller Aktor fungiert als Teamlead
Die Rauchmelder sind hierbei im Werkszustand und werden nicht laut der HM-Anleitung aneinander angelernt. Es erfolg zuerst das Pairen der Rauchmelder mit FHEM durch z.B.
set HMLAN1 hmPairForSec 60
und drücken der Anlerntaste am Rauchmelder.
Dann definiert man einen virtuellen Aktor mit
define TeamDev CUL_HM 111111
(Achtung: die HMID muss für die gesamte Installation einmalig sein) Keine Attribute wie model oder subtype für den virtuellen Aktor manuell erfassen! Dann muss man noch einen Homematic-Kanal für das Peering definieren. Durch
set TeamDev virtual 1
wird 1 Kanal angelegt, wenn autocreate aktiviert ist. Sonst kann man diesen auch manuell mit:
define Rauchmelder_Team CUL_HM 11111101
definieren. (Gleiche HMID wie der Aktor, da ja der Kanal zum Aktor gehört und zusätzlich 2 Ziffern für den Kanal). Wurde der Kanal per autocreate angelegt, sollte dieser umbenannt werden:
rename TeamDev_Btn_1 Rauchmelder_Team
Anschließend jeden Rauchmelder mit dem virtuellen Teamlead (Kanal des virtuellen Aktors) peeren mit:
set Rauchmelder_Team peerChan 0 Rauchmelder_Flur single set
.
Hierbei ist "Rauchmelder_Team" der Name des virtuellen Teamleads und "Rauchmelder_Flur" der Name des jeweiligen Rauchmelders.
Dadurch sollte in jedem Rauchmelder der Name des virtuellen Teamleads in der peerList stehen und beim virtuellen Teamlead jeder Rauchmelder.
Software
Mit dem folgenden Codefragment wird eine Warnungsmeldung an ein FHEM-Display (1-Wire OWXLCD) abgesetzt, sobald ein Rauchalarm anspricht. Ferner wird der Wert des SD.D dummy auf "alarm" gesetzt. Durch Drücken der Taste TH.3x (die in der Beispielinstallation normalerweise das Treppenhauslicht schaltet) wird bei aktiviertem Alarm der Alarm abgeschaltet.
define SD.N notify TH.SD0:smoke-Alarm {\ OWXLCD_SetLine($defs{'WZ.LCD'},0,"Rauchalarm !!");;\ fhem("set SD.D alarm")} attr SD.N room Alarm
define SD.D dummy attr SD.D room Alarm
define SD.O notify TH.3x:.* {\ if( $value{'SD.D'} eq "alarm"){\ fhem("set TH.SD0 alarmOff");;\ fhem("set SD.D no alarm");;\ OWXLCD_SetLine($defs{'WZ.LCD'},0,"")}} attr SD.O room Alarm
Links
Anleitung [1] PDF