HM-SEC-SD Rauchmelder: Unterschied zwischen den Versionen

Aus FHEMWiki
Keine Bearbeitungszusammenfassung
Zeile 88: Zeile 88:
=== Variante 2: ein virtueller Aktor fungiert als Teamlead ===
=== Variante 2: ein virtueller Aktor fungiert als Teamlead ===


Von Martin (betreut den Homematic-Teil in FHEM) wird die Variante mit dem virtuellen Teamlead bevorzugt.
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.
Die Rauchmelder sind im Werkszustand und werden nicht laut der HM-Anleitung aneinander angelernt. Es erfolg zuerst das Pairen der Rauchmelder mit FHEM durch z.B.


<code>set HMLAN1 hmPairForSec 60</code>
<code>set HMLAN1 hmPairForSec 60</code>
Zeile 95: Zeile 94:
und drücken der Anlerntaste am Rauchmelder.
und drücken der Anlerntaste am Rauchmelder.


Dann definiert Ihr einen virtuellen Aktor mit
Dann definiert man einen virtuellen Aktor mit


<code>define TeamDev CUL_HM 111111</code>
<code>define TeamDev CUL_HM 111111</code>


(Achtung: die HMID muss einmalig sein in Eurer Installation!)
(Achtung: die HMID muss für die gesamte Installation einmalig sein)
Keine Attribute wie model oder subtype für den virtuellen Aktor manuell erfassen!
Keine Attribute wie model oder subtype für den virtuellen Aktor manuell erfassen!
Dann müsst Ihr noch einen Kanal definieren, da das Peering nur mit Kanälen möglich ist. Durch
Dann muss man noch einen Homematic-Kanal für das Peering definieren. Durch


<code>set TeamDev virtual 1</code>
<code>set TeamDev virtual 1</code>


wird 1 Kanal angelegt, wenn Autocreate aktiviert ist. Sonst kann man diesen auch manuell mit:
wird 1 Kanal angelegt, wenn autocreate aktiviert ist. Sonst kann man diesen auch manuell mit:


<code>define Rauchmelder_Team CUL_HM 11111101</code>
<code>define Rauchmelder_Team CUL_HM 11111101</code>


definieren. (Gleiche HMID wie der Aktor, da ja der Kanal zum Aktor gehört und zusätzlich 2 Ziffern für den Kanal).
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, würde ich diesen umbenennen:
Wurde der Kanal per autocreate angelegt, sollte dieser umbenannt werden:


<code>rename TeamDev_Btn_1 Rauchmelder_Team</code>
<code>rename TeamDev_Btn_1 Rauchmelder_Team</code>


Dann jeden Rauchmelder mit dem virtuellen Teamlead (Kanal des virtuellen Aktors) peeren mit:
Anschließend jeden Rauchmelder mit dem virtuellen Teamlead (Kanal des virtuellen Aktors) peeren mit:


<code>set Rauchmelder_Team peerChan 0 Rauchmelder_Flur single set</code>.
<code>set Rauchmelder_Team peerChan 0 Rauchmelder_Flur single set</code>.

Version vom 30. März 2014, 05:27 Uhr

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