Z-Wave: Unterschied zwischen den Versionen

Aus FHEMWiki
K (Überarbeitung - WorkInProgress)
K (Überarbeitung - WorkInProgress)
Zeile 23: Zeile 23:
Auf dieser Seite wird das Einrichten eines '''Z-Wave''' Systems in Fhem beschrieben.
Auf dieser Seite wird das Einrichten eines '''Z-Wave''' Systems in Fhem beschrieben.
== Z-Wave Features ==
== Z-Wave Features ==
* Funk-Netz aus Zentrale und min. 1 bis max. 231 Geräten
* Funk-Netz aus Zentrale/Controller und min. 1 bis max. 231 Geräten
* vermaschtes Netz von Geräten
* vermaschtes Netz von Geräten / Knoten
* Inklusion
* Inklusion / Exklusion
* Assoziation
* Assoziation
* Konfiguration
* Konfiguration
Zeile 42: Zeile 42:


== Definition des Gateways ==
== Definition des Gateways ==
Fhem kann mit einem Funkgateway Z-Wave-Funk empfangen und senden. Das Z-Wave-Gateway wird nach dem Anschluss an den Fhem-Rechner beim Fhem-Start automatisch erkannt und grundlegend durch entsprechende Einträge in der fhem.cfg definiert. Ein manuelles Anlegen des ZWDongle-Moduls oder Eingriff in die fhem.cfg ist nicht notwendig und auch nicht ratsam.
=== Autocreate des Gateways ===
Fhem kann mit einem Funkgateway Z-Wave-Funk empfangen und senden. Z-Wave-Gateways existieren von verschiedenen Hersteller.
 
Das Z-Wave-Gateway wird nach dem Anschluss an den Fhem-Rechner beim Fhem-Start automatisch erkannt und grundlegend durch entsprechende Einträge in der fhem.cfg definiert. Ein manuelles Anlegen des ZWDongle-Moduls oder Eingriff in die fhem.cfg ist nicht notwendig und auch nicht ratsam.


Beispiele der automatisch erzeugten define-Zeile in der fhem.cfg:
Beispiele der automatisch erzeugten define-Zeile in der fhem.cfg:
Zeile 54: Zeile 57:
Folgende Gateways wurden bereits erfolgreich mit Fhem eingesetzt:
Folgende Gateways wurden bereits erfolgreich mit Fhem eingesetzt:
* Goodway WD6001 (Rudolf König)
* Goodway WD6001 (Rudolf König)
* Vision Z-Wave USB Stick ZU 1401 EU (VIS_ZU1401) ([[Benutzer Diskussion:Krikan|Christian]])
* Vision Z-Wave USB Stick ZU 1401 EU (VIS_ZU1401) ([[Benutzer Diskussion:Krikan]])
* Razberry in Verbindung mit Raspberry Pi {{Link2Forum|Topic=11716|Message=190402}}
* Razberry in Verbindung mit Raspberry Pi {{Link2Forum|Topic=11716|Message=190402}}
* Aeon Labs Z-Stick
* Aeon Labs Z-Stick
=== Einrichten eines Z-Wave Gateways ===
 
Das Einrichten eines Z-Wave-Gateways als USB Sticks teilt sich in 2 Schritte.
Sollte das eigene Gateway hier nicht aufgeführt sein, ist aufgrund der Standardisierung dennoch die Chance für eine erfolgreiche Einbindung des Gateways in Fhem vorhanden. Bitte dies hier oder im Forum entsprechend vermerken.
* Laden des Kernelmoduls
 
* Definieren des USB Sticks
=== Besonderheit bei fehlendem Kernelmodul (Fritzbox) ===
==== Laden des Kernelmoduls ====
Auf der Fritzbox (und evtl. auch anderen Systemen) muss sichergestellt werden, dass das Kernelmodul für das Gateway geladen wird. Ansonsten scheitert die Einbindung des Gateways in Fhem.
Zuerst muss sichergestellt werden, dass das entsprechende Kernelmodul <code>cp2101.ko</code> geladen wird.
 
Für den Aeon Labs Z-Stick muss beispielsweise auf der Fritzbox das Kernelmodul <code>cp2101.ko</code> geladen werden.
Diese Datei ist bei einer [[FHEM und FritzBox 7390]] Installation über das Image von [http://www.fhem.de fhem.de] bereits enthalten.
Diese Datei ist bei einer [[FHEM und FritzBox 7390]] Installation über das Image von [http://www.fhem.de fhem.de] bereits enthalten.
Um den Z-Wave USB Stick zu verwenden muss dieses Kernelmodul vor oder beim Starten des FHEM Servers geladen sein. Dies erreicht man durch einen Eintrag in der Datei <code>startfhem</code>.
Um den Aeon Labs Z-Stick zu verwenden muss dieses Kernelmodul vor oder beim Starten des FHEM Servers geladen sein. Dies erreicht man durch einen Eintrag in der Datei <code>startfhem</code>.


Die entsprechende Zeile kann direkt unterhalb der modprobe Anweisungen eingefügt werden.
Die entsprechende Zeile kann direkt unterhalb der modprobe Anweisungen eingefügt werden.
<pre>insmod $home/lib/cp2101.ko</pre>
insmod $home/lib/cp2101.ko
==== Definition des Gateways ====
Nach einem FHEM Neustart wird der USB Stick nun erkannt.
Falls der USB Stick nicht automatisch in der <code>fhem.cfg</code> hinzugefügt wurde, ist die Log-Datei zu durchsuchen. Sie enthält den entsprechenden Eintrag, der in der <code>fhem.cfg</code> hinzugefügt werden muss.


Ein '''Aeon Labs Z-Stick''' wird an der Fritzbox wie folgend definiert:
Nach einem FHEM Neustart sollte das Gateway (der USB Stick) nun erkannt.
<pre>define zwaveStick ZWDongle /dev/ttyUSB0@115200</pre>


==== Informationen zu dem USB Stick auslesen ====
=== homeId und nodeList des Gateways ===
Zum Definieren von Z-Wave Aktoren und Sensoren ist die <code>homeId</code> notwendig.
Zur Definition von Z-Wave Aktoren und Sensoren ist die <code>homeId</code> notwendig.


Die <code>homeId</code> des USB Sticks kann man mit folgendem Befehl auslesen:
Die <code>homeId</code> des Gateways kann man mit folgendem Befehl auslesen:
<pre>get zwaveStick homeId</pre>
get zwaveStick homeId
Die aktuelle Liste der Z-Wave Knoten, die bereits an dem Stick registriert sind, kann mit dem folgendem Befehl ausgelesen werden:
 
<pre>get zwaveStick nodeList</pre>
Die aktuelle Liste der Z-Wave Knoten, die bereits am Gateway registriert sind, kann mit dem folgendem Befehl ausgelesen werden:
=== Hinzufügen eines neuen Z-Wave Geräts ===
get zwaveStick nodeList
Zuerst wird der Z-Wave Stick in den Modus zum Aufnehmen neuer Geräte gesetzt:
 
<pre>set zwaveStick addNode on</pre>
== Definition von Geräten ==
Danach wird das Gerät in den Aufnahmemodus versetzt. dies geschieht zumeist durch dreimaliges Drücken einer Taste am Gerät.
=== Hinzufügen eines neuen Z-Wave Geräts / Inklusion ===
Zuerst wird der Z-Wave Stick in den Modus zur Inklusion (zum Aufnehmen) neuer Geräte gesetzt:
set zwaveStick addNode on
 
Danach muss das Gerät in den Inklusionsmodus (Aufnahmemodus) versetzt werden. Wie dies zu erfolgen hat, ist im Handbuch des Geräte nachzulesen. Typisch sind ein- oder dreimaliges Drücken einer Taste am Gerät oder beim Anlegen der Versorgungsspannung.
 
Abschließend wird der Inklusionsmodus am Z-Wave Gateway wieder ausgeschaltet:
set zwaveStick addNode off


Abschließend wird der Z-Wave Stick wieder in den Normalmodus versetzt:
<pre>set zwaveStick addNode off</pre>
=== Erneutes Hinzufügen eines bereits registrierten Z-Wave Geräts ===
=== Erneutes Hinzufügen eines bereits registrierten Z-Wave Geräts ===
Es können die bereits an dem Z-Wave Stick registrierten Geräte abgerufen werden:
Es können die bereits an dem Z-Wave Gateway registrierten Geräte abgerufen werden:
<pre>get zwaveStick nodeList</pre>
get zwaveStick nodeList
Es werden die verschiedenen IDs zurückgeliefert, wobei 1 der Z-Wave Stick selbst ist.
Es werden die verschiedenen IDs zurückgeliefert, wobei 1 der Z-Wave Stick selbst ist.


Mit dem folgenden Befehl wird das bereits registrierte Gerät mit der ID 2 eingerichtet:
Mit dem folgenden Befehl wird das bereits registrierte Gerät mit der ID 2 eingerichtet:
<pre>set zwaveStick createNode 2</pre>
set zwaveStick createNode 2


== Glossar ==
=== Assoziation ===
=== Was ist eine Association? ===
Devices die die Association unterstützen sind in der Lage, direkt mit anderen Devices zu kommunizieren. Dies können zum einen direkte Befehle sein, als auch Meldungen über den Status und Zustand der Devices.
Devices die die Association unterstützen sind in der Lage, direkt mit anderen Devices zu kommunizieren. Dies können zum einen direkte Befehle sein, als auch Meldungen über den Status und Zustand der Devices.


Zeile 107: Zeile 111:
Damit FHEM auf Statusmeldungen von Sensoren reagieren (und auch Anzeigen) kann, muss der Controller (ZW_Dongle, DeviceID = 1) mit dem jeweiligen Device assoziiert werden.
Damit FHEM auf Statusmeldungen von Sensoren reagieren (und auch Anzeigen) kann, muss der Controller (ZW_Dongle, DeviceID = 1) mit dem jeweiligen Device assoziiert werden.


<pre>set associationAdd <associationGroup> <deviceID></pre>
set associationAdd <associationGroup> <deviceID>


Nahezu alle in Europa erhältlichen Devices unterstützen die Rückmeldung des Status via Association. Daher ist diese Konfiguration in der Regel Pflicht, um ein Device sinnvoll mit FHEM nutzen zu können.
Nahezu alle in Europa erhältlichen Devices unterstützen die Rückmeldung des Status via Association. Daher ist diese Konfiguration in der Regel Pflicht, um ein Device sinnvoll mit FHEM nutzen zu können.
Zeile 113: Zeile 117:
Ausnahmen gibt es in Nordamerika, wo aufgrund von Patentansprüchen einige Hersteller auf die Statusrückmeldungen verzichten. Diese Geräte unterstützen in der Regel die Command Class ASSOCIATION nicht.
Ausnahmen gibt es in Nordamerika, wo aufgrund von Patentansprüchen einige Hersteller auf die Statusrückmeldungen verzichten. Diese Geräte unterstützen in der Regel die Command Class ASSOCIATION nicht.


== Tipps und Tricks ==
=== Exklusion ===
 
== Geräte-Besonderheiten ==
=== Batterie betriebene Geräte ===
=== Batterie betriebene Geräte ===
Um die Batterielaufzeit zu erhöhen, legen sich batteriebetriebene Geräte „schlafen“ und wachen in konfigurierbaren Intervallen auf um einen "wakeup Report" zu senden. Daraufhin senden andere Devices ihre bis daher gesammelten Anfragen, die daraufhin beantwortet werden.
Um die Batterielaufzeit zu erhöhen, legen sich batteriebetriebene Geräte „schlafen“ und wachen in konfigurierbaren Intervallen auf um einen "wakeup Report" zu senden. Daraufhin senden andere Devices ihre bis daher gesammelten Anfragen, die daraufhin beantwortet werden.


Dies wird in FHEM wie folgt konfiguriert.
Dies wird in FHEM wie folgt konfiguriert.
<pre>set wakeupInterval <time> <nodeId></pre>
set wakeupInterval <time> <nodeId>
<time> ist die Zeit in Sekunden zwischen den Intervallen und <nodeID> der gewünschte Empfänger des wakupReports. In der Regel ist dies wieder der Controller (NodeId=1). Viele Geräte kommen im Auslieferungszustand mit der NodeID 255 (der wakeup report wird als Broadcast an alle erreichbaren Devices gesendet). Hier empfiehlt es sich die Konfiguration auf nodeID 1 zu ändern, da dies robuster ist und zusätzlich noch Batterielaufzeit spart.
<time> ist die Zeit in Sekunden zwischen den Intervallen und <nodeID> der gewünschte Empfänger des wakupReports. In der Regel ist dies wieder der Controller (NodeId=1). Viele Geräte kommen im Auslieferungszustand mit der NodeID 255 (der wakeup report wird als Broadcast an alle erreichbaren Devices gesendet). Hier empfiehlt es sich die Konfiguration auf nodeID 1 zu ändern, da dies robuster ist und zusätzlich noch Batterielaufzeit spart.


== Geräte-Besonderheiten ==
=== Fibaro ===
=== Fibaro ===
Bei den bisher erschienenen Devices Devices wird die Association Group 3 für die Übermittlung von Sensor Werten verwendet.
Bei den bisher erschienenen Devices wird die Association Group 3 für die Übermittlung von Sensor Werten verwendet.
<pre>set associationAdd 3 1</pre>
set associationAdd 3 1


==== FGSS-001 Rauchmelder ====
==== FGSS-001 Rauchmelder ====
Zeile 150: Zeile 155:


== FAQ ==
== FAQ ==
(wird ggfs. noch in separte Wiki-Seite ausgelagert)
(wird ggfs. noch in separate Wiki-Seite ausgelagert)


[[Kategorie:HOWTOS]]
[[Kategorie:HOWTOS]]
[[Kategorie:Z-Wave Components]]
[[Kategorie:Z-Wave Components]]

Version vom 15. August 2014, 21:33 Uhr

Z-Wave ist ein drahtloser Kommunikations-Standard, der von der Firma Sigma Designs und der Z-Wave Alliance für die Heimautomatisierung entwickelt wurde (Quelle: Wikipedia).


Clock - Under Construction.svg An dieser Seite wird momentan noch gearbeitet.


Auf dieser Seite wird das Einrichten eines Z-Wave Systems in Fhem beschrieben.

Z-Wave Features

  • Funk-Netz aus Zentrale/Controller und min. 1 bis max. 231 Geräten
  • vermaschtes Netz von Geräten / Knoten
  • Inklusion / Exklusion
  • Assoziation
  • Konfiguration

Z-Wave in Fhem

Allgemein

Fhem wird fortwährend weiterentwickelt und verbessert. Daher ist es zwingend notwendig, dass Fhem auf dem aktuellsten Stand ist. Dazu nach der Fhem-Installation den Befehl update ausführen und anschließend shutdown restart durchführen. Genauso auch vor Anfragen im Forum die Aktualität von Fhem überprüfen.

Die Nutzung von Z-Wave in Fhem ist für den Anfänger nur mit der standardmäßig eingeschalteten autocreate-Funktion einfach umsetzbar. Die Kenntnis der Fhem-Grundlagen und Durcharbeitung der Anfänger-Lektüren wird im Folgenden vorausgesetzt. Insbesondere ist Heimautomatisierung mit Fhem zu empfehlen, auch wenn es nicht speziell Z-Wave behandelt, so werden doch wesentliche Punkte für ein Verständnis von Fhem vermittelt.

Im Folgendem und auf den Wiki-Seiten der Einzelgeräte werden immer wieder Auszüge aus der fhem.cfg dargestellt. Diese dienen zur Erläuterung und Veranschaulichung. Die Bearbeitung der fhem.cfg sollte -zur Verhinderung von Anfängerfehlern- nach Möglichkeit immer über das "Befehl-Eingabefeld" und die "Objektdetails" erfolgen.

Vorbereitung

Definition des Gateways

Autocreate des Gateways

Fhem kann mit einem Funkgateway Z-Wave-Funk empfangen und senden. Z-Wave-Gateways existieren von verschiedenen Hersteller.

Das Z-Wave-Gateway wird nach dem Anschluss an den Fhem-Rechner beim Fhem-Start automatisch erkannt und grundlegend durch entsprechende Einträge in der fhem.cfg definiert. Ein manuelles Anlegen des ZWDongle-Moduls oder Eingriff in die fhem.cfg ist nicht notwendig und auch nicht ratsam.

Beispiele der automatisch erzeugten define-Zeile in der fhem.cfg:

Aeon Labs Z-Stick an der Fritzbox:

define zwaveStick ZWDongle /dev/ttyUSB0@115200

Vision Z-Wave USB Stick ZU 1401 EU an Rasoberry Pi:

define zwaveStick ZWDonge //dev/ttyACM0@115200

Folgende Gateways wurden bereits erfolgreich mit Fhem eingesetzt:

  • Goodway WD6001 (Rudolf König)
  • Vision Z-Wave USB Stick ZU 1401 EU (VIS_ZU1401) (Benutzer Diskussion:Krikan)
  • Razberry in Verbindung mit Raspberry Pi Beitrag
  • Aeon Labs Z-Stick

Sollte das eigene Gateway hier nicht aufgeführt sein, ist aufgrund der Standardisierung dennoch die Chance für eine erfolgreiche Einbindung des Gateways in Fhem vorhanden. Bitte dies hier oder im Forum entsprechend vermerken.

Besonderheit bei fehlendem Kernelmodul (Fritzbox)

Auf der Fritzbox (und evtl. auch anderen Systemen) muss sichergestellt werden, dass das Kernelmodul für das Gateway geladen wird. Ansonsten scheitert die Einbindung des Gateways in Fhem.

Für den Aeon Labs Z-Stick muss beispielsweise auf der Fritzbox das Kernelmodul cp2101.ko geladen werden. Diese Datei ist bei einer FHEM und FritzBox 7390 Installation über das Image von fhem.de bereits enthalten. Um den Aeon Labs Z-Stick zu verwenden muss dieses Kernelmodul vor oder beim Starten des FHEM Servers geladen sein. Dies erreicht man durch einen Eintrag in der Datei startfhem.

Die entsprechende Zeile kann direkt unterhalb der modprobe Anweisungen eingefügt werden.

insmod $home/lib/cp2101.ko

Nach einem FHEM Neustart sollte das Gateway (der USB Stick) nun erkannt.

homeId und nodeList des Gateways

Zur Definition von Z-Wave Aktoren und Sensoren ist die homeId notwendig.

Die homeId des Gateways kann man mit folgendem Befehl auslesen:

get zwaveStick homeId

Die aktuelle Liste der Z-Wave Knoten, die bereits am Gateway registriert sind, kann mit dem folgendem Befehl ausgelesen werden:

get zwaveStick nodeList

Definition von Geräten

Hinzufügen eines neuen Z-Wave Geräts / Inklusion

Zuerst wird der Z-Wave Stick in den Modus zur Inklusion (zum Aufnehmen) neuer Geräte gesetzt:

set zwaveStick addNode on

Danach muss das Gerät in den Inklusionsmodus (Aufnahmemodus) versetzt werden. Wie dies zu erfolgen hat, ist im Handbuch des Geräte nachzulesen. Typisch sind ein- oder dreimaliges Drücken einer Taste am Gerät oder beim Anlegen der Versorgungsspannung.

Abschließend wird der Inklusionsmodus am Z-Wave Gateway wieder ausgeschaltet:

set zwaveStick addNode off

Erneutes Hinzufügen eines bereits registrierten Z-Wave Geräts

Es können die bereits an dem Z-Wave Gateway registrierten Geräte abgerufen werden:

get zwaveStick nodeList

Es werden die verschiedenen IDs zurückgeliefert, wobei 1 der Z-Wave Stick selbst ist.

Mit dem folgenden Befehl wird das bereits registrierte Gerät mit der ID 2 eingerichtet:

set zwaveStick createNode 2

Assoziation

Devices die die Association unterstützen sind in der Lage, direkt mit anderen Devices zu kommunizieren. Dies können zum einen direkte Befehle sein, als auch Meldungen über den Status und Zustand der Devices.

Zum Beispiel kann damit ein Bewegungsmelder bei entdeckter Bewegung direkt eine Lampe ein oder ausschalten oder die aktuelle Temperatur an den Controller senden.

Devices können mehrere Association Groups haben, die für vom Hersteller vorgesehene unterschiedliche Aktionen definiert sind. Welche das sind, geht aus der jeweiligen Beschreibung hervor.

Damit FHEM auf Statusmeldungen von Sensoren reagieren (und auch Anzeigen) kann, muss der Controller (ZW_Dongle, DeviceID = 1) mit dem jeweiligen Device assoziiert werden.

set associationAdd <associationGroup> <deviceID>

Nahezu alle in Europa erhältlichen Devices unterstützen die Rückmeldung des Status via Association. Daher ist diese Konfiguration in der Regel Pflicht, um ein Device sinnvoll mit FHEM nutzen zu können.

Ausnahmen gibt es in Nordamerika, wo aufgrund von Patentansprüchen einige Hersteller auf die Statusrückmeldungen verzichten. Diese Geräte unterstützen in der Regel die Command Class ASSOCIATION nicht.

Exklusion

Geräte-Besonderheiten

Batterie betriebene Geräte

Um die Batterielaufzeit zu erhöhen, legen sich batteriebetriebene Geräte „schlafen“ und wachen in konfigurierbaren Intervallen auf um einen "wakeup Report" zu senden. Daraufhin senden andere Devices ihre bis daher gesammelten Anfragen, die daraufhin beantwortet werden.

Dies wird in FHEM wie folgt konfiguriert.

set wakeupInterval 

Fibaro

Bei den bisher erschienenen Devices wird die Association Group 3 für die Übermittlung von Sensor Werten verwendet.

set associationAdd 3 1

FGSS-001 Rauchmelder

Dieser Rauchmelder scheint einen Falschen Batterie Level (0%) zu senden wenn er Außerhalb des wakeup intervals abgefragt wird.

Workaround: Den Batterie Level nicht direkt via get anfordern sondern per notify auf den wakeup Report anfordern.

FGRM-222 Roller shutter 2

Rolladenaktor

FGK-101 Tür/Fensterkontakt

Der Tür/Fensterkontakt sendet Änderungen am Zustand nur als basicReport (ff oder 00). Der Status (open / closed) wird nur nach explizitem GET gemeldet.

Philio

PHI_PSM02 Z-Wave 4 in 1 Sensor (Tür, Bewegung, Helligkeit, Temperatur)

Multisensor

GE

GE (Model t.b.d)

Dieser Schalter unterstützt keine Statusrückmeldungen.

Links

  • herstellerübergreifende Datenbank mit Bedienungsanleitungen zu Z-Wave-Geräten: Z-Wave Handbücher
  • herstellerübergreifende Datenbank mit technischen Informationen zu Z-Wave-Geräten: Z-Wave Device Library

FAQ

(wird ggfs. noch in separate Wiki-Seite ausgelagert)