Systemübersicht: Unterschied zwischen den Versionen
(Kleinere Anpassungen wg. neuer Grafik (tbc)) |
K (→Protokolle) |
||
(9 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Ein FHEM '''System''' besteht im Prinzip aus den in der nachfolgenden '''Übersicht''' aufgeführten Bestandteilen. | Ein FHEM '''System''' besteht im Prinzip aus den in der nachfolgenden '''Übersicht''' aufgeführten Bestandteilen. | ||
<gallery mode=packed heights=400px style="text-align:left"> | |||
Datei:Systemübersicht.png | |||
</gallery> | |||
Zeile 65: | Zeile 62: | ||
* [[:Kategorie:Hilfsmodul|Hilfsmodule]] | * [[:Kategorie:Hilfsmodul|Hilfsmodule]] | ||
* [[:Kategorie:Gerätemodul|Gerätemodule]] | * [[:Kategorie:Gerätemodul|Gerätemodule]] | ||
{{Randnotiz|RNTyp=r|RNText=Bei Quellen außerhalb der von FHEM e.V. bereitgestellten Infrastruktur erhalten Sie jedoch in der Regel [[Dokumentationsstruktur|wenig Support]] von der FHEM-Community.}}* private Homepages | |||
Die offiziell in FHEM enthaltenen Module sind in der {{Link2CmdRef}} beschrieben. Sie werden über den [[Update]]-Befehl von FHEM verteilt und aktualisiert. Voraussetzung für die Aufnahme als offizielles Modul sind Supportwille durch den Entwickler und Dokumentation des Moduls. | Die offiziell in FHEM enthaltenen Module sind in der {{Link2CmdRef}} beschrieben. Sie werden über den [[Update]]-Befehl von FHEM verteilt und aktualisiert. Voraussetzung für die Aufnahme als offizielles Modul sind Supportwille durch den Entwickler und Dokumentation des Moduls. | ||
Zeile 70: | Zeile 68: | ||
* [[:Kategorie:Modul (Contrib)|Contrib]]-Verzeichnis im offiziellen FHEM-Sourcecode-SVN [http://svn.fhem.de/trac/browser/trunk/fhem/contrib] | * [[:Kategorie:Modul (Contrib)|Contrib]]-Verzeichnis im offiziellen FHEM-Sourcecode-SVN [http://svn.fhem.de/trac/browser/trunk/fhem/contrib] | ||
* Beiträge im [https://forum.fhem.de/ FHEM-Forum] | * Beiträge im [https://forum.fhem.de/ FHEM-Forum] | ||
== Interfaces == | == Interfaces == | ||
Die Verbindung zu den angeschlossenen '''Geräten''' der Hausautomation wird im Allgemeinen - geräteabhängig - über [[Interface|Interfaces]] (manchmal auch als '''Gateway''' bezeichnet) hergestellt. | Die Verbindung zu den angeschlossenen '''Geräten''' der Hausautomation wird im Allgemeinen - geräteabhängig - über [[Interface|Interfaces]] (manchmal auch als '''Gateway''' bezeichnet) hergestellt. Diese setzen die FHEM Steuerbefehle in das jeweilige (Funk-) Protokoll um - und geben auch die (Funk-) Telegramme der Komponenten an FHEM zurück. | ||
Häufig steht nicht nur ein ganz bestimmter Interface-Typ zur Verfügung, sondern mehrere, wie in der Übersichtsgrafik beispielhaft für einige Technologien wie [[Z-Wave|ZWave]], [[HomeMatic]] oder [[FHEM und 1-Wire|1-Wire]] ersichtlich. Es genügt dabei, wenn dem FHEM-Server ''ein'' Weg zur Datenübermittlung mit z.B. einem Aktor zur Verfügung steht. | |||
In der Regel ist es empfehlenswert, ein speziell für das verwendete Protokoll konzipiertes Interface zu verwenden, also z.B. | |||
* [[Z-Wave#Definition des Gateways /Controllers|ZWDongle]] statt {{Link2CmdRef|Anker=ZWCUL|Lang=de|Label=ZWCUL}} für [[Z-Wave|ZWave]] oder ein | |||
* [[HM-MOD-RPI-PCB HomeMatic Funkmodul für Raspberry Pi|HomeMatic Funkmodul für Raspberry Pi]], ein [[HMLAN Konfigurator]] (ein mittels LAN mit dem FHEM Server verbundenes Gerät) statt eines [[CUL]]. | |||
Bei CUL und seinen Derivaten könnnen z.B. beim [[HomeMatic#FHEM_als_Zentrale|HomeMatic-Protokoll]] Probleme mit dem Timing auftreten. | |||
Durch die Wahl einer von mehreren Interface-Varianten '''''kann''''' ein und diesselbe Komponente in FHEM im Ergebnis sehr unterschiedlich ausgestaltet und zu steuern sein. Nutzt man z.B. für HomeMatic (BidCoS) HMUARTLGW oder CUL als Interface-Typ, werden die Sensoren oder Aktoren als CUL_HM-Geräte in FHEM repräsentiert, wählt man eine CCU2 oder CCU3, werden die Komponenten dann über die HMCCU-Modulfamilie eingebunden. | |||
Eine (unvollständige) Liste solcher Interfaces (siehe auch [[:Kategorie:Interfaces|Kategorie Interfaces]]): | Eine (unvollständige) Liste solcher Interfaces (siehe auch [[:Kategorie:Interfaces|Kategorie Interfaces]]): | ||
Zeile 102: | Zeile 105: | ||
! Name !! rfMode !! Frequenz !! Modulation !! Datenrate !! class="unsortable" | Interfaces !! class="unsortable" | Modul !! class="unsortable" | Geräte (Beispiel) !! class="unsortable" | Bemerkungen | ! Name !! rfMode !! Frequenz !! Modulation !! Datenrate !! class="unsortable" | Interfaces !! class="unsortable" | Modul !! class="unsortable" | Geräte (Beispiel) !! class="unsortable" | Bemerkungen | ||
|- | |- | ||
| [[FS20_Allgemein|FS20]] || SlowRF || 868,35MHz || AM || 1kHz || CU*, FHZ || {{Link2CmdRef|Anker=FS20|Label=FS20}} || - || | | [[FS20_Allgemein|FS20]] || SlowRF || 868,35MHz || AM || 1kHz || CU*, FHZ || {{Link2CmdRef|Anker=FS20|Label=FS20}} || - || ** | ||
|- | |- | ||
| FHT || SlowRF || 868,35MHz || AM || 1kHz || CU*, FHZ || {{Link2CmdRef|Anker=CUL_FHTTK|Label=FHTTK}}, {{Link2CmdRef|Anker=FHT|Label=FHT}} || Heizungsregelung || | | FHT || SlowRF || 868,35MHz || AM || 1kHz || CU*, FHZ || {{Link2CmdRef|Anker=CUL_FHTTK|Label=FHTTK}}, {{Link2CmdRef|Anker=FHT|Label=FHT}} || Heizungsregelung || ** | ||
|- | |- | ||
| S300 || SlowRF || 868,35MHz || AM || 1kHz || CU*, FHZ || {{Link2CmdRef|Anker=CUL_WS|Label=CUL_WS}} || Temperatur-/Feuchtesensoren || - | | S300 || SlowRF || 868,35MHz || AM || 1kHz || CU*, FHZ || {{Link2CmdRef|Anker=CUL_WS|Label=CUL_WS}} || Temperatur-/Feuchtesensoren || - | ||
|- | |- | ||
| HMS || SlowRF || 868,35MHz || AM || 1kHz || CU*O, FHZ || - || ?? || | | HMS || SlowRF || 868,35MHz || AM || 1kHz || CU*O, FHZ || - || ?? || ** | ||
|- | |- | ||
| EM || SlowRF || 868,35MHz || AM || 1kHz || CU*, FHZ || {{Link2CmdRef|Anker=CUL_EM|Label=CUL_EM}} || Energiemonitore (Strom, Gas) || - | | EM || SlowRF || 868,35MHz || AM || 1kHz || CU*, FHZ || {{Link2CmdRef|Anker=CUL_EM|Label=CUL_EM}} || Energiemonitore (Strom, Gas) || - | ||
Zeile 116: | Zeile 119: | ||
| [[HMCCU|HomeMatic-IP]]|| HomeMatic-IP || 868,3MHz || FM || 10kHz || [[HMCCU]] || {{Link2CmdRef|Anker=HMCCUDEV|Label=HMCCUDEV}}, {{Link2CmdRef|Anker=HMCCUCHN|Label=HMCCUCHN}} || [[:Kategorie:HomeMatic_Components|diverse]] || - | | [[HMCCU|HomeMatic-IP]]|| HomeMatic-IP || 868,3MHz || FM || 10kHz || [[HMCCU]] || {{Link2CmdRef|Anker=HMCCUDEV|Label=HMCCUDEV}}, {{Link2CmdRef|Anker=HMCCUCHN|Label=HMCCUCHN}} || [[:Kategorie:HomeMatic_Components|diverse]] || - | ||
|- | |- | ||
| [[MAX|MAX!]] || MAX || 868,3MHz || FM || 20kHz || CU*, [[MAX#MAXLAN|MAXLAN]] || {{Link2CmdRef|Lang=de|Anker=MAX|Label=MAX}} || [[:Kategorie:MAX|Wandthermostat, Heizkörperthermostate, Fensterkontakt, Zwischenstecker]] || | | [[MAX|MAX!]] || MAX || 868,3MHz || FM || 20kHz || CU*, [[MAX#MAXLAN|MAXLAN]] || {{Link2CmdRef|Lang=de|Anker=MAX|Label=MAX}} || [[:Kategorie:MAX|Wandthermostat, Heizkörperthermostate, Fensterkontakt, Zwischenstecker]] || ** | ||
|- | |- | ||
| IT u.a. 433MHz-Protokolle || - || 433MHz || AM? || 1kHz || CU*433, [[SIGNALDuino]] || - || - || - | | IT u.a. 433MHz-Protokolle || - || 433MHz || AM? || 1kHz || CU*433, [[SIGNALDuino]] || - || - || - | ||
Zeile 130: | Zeile 133: | ||
| [[La Crosse]] || - || 868,35MHz || ?? || ?? || [[JeeLink]], LGW || {{Link2CmdRef|Anker=Lacrosse|Label=Lacrosse}} || LaCrosse IT+ (Technoline) Sensoren || - | | [[La Crosse]] || - || 868,35MHz || ?? || ?? || [[JeeLink]], LGW || {{Link2CmdRef|Anker=Lacrosse|Label=Lacrosse}} || LaCrosse IT+ (Technoline) Sensoren || - | ||
|- | |- | ||
| [[ZigBee]] | | [[ZigBee]] || - || 2,4 GHz || || || HUE Bridge (o. RaspBee bzw. ConBee II, es existieren weitere [[ZigBee#Einbindung in FHEM|alternative Methoden]], z.B. auch über Bridges anderer Anbieter) || {{Link2CmdRef|Anker=HUEBridge|Label=HUEBridge}} || Neben Philips HUE wird potentiell eine Vielzahl von weiteren Produktlinien anderer Hersteller unterstützt|| [http://www.developers.meethue.com/documentation/how-hue-works] | ||
|- | |- | ||
| [[MySensors]] || - || 2,4 GHz, 868/433 MHz, RS485 (2-Draht) || || || [[MYSENSORS|MySensors Gateway]], [[MQTT]] || [[MYSENSORS_DEVICE]] || [http://www.mysensors.org/build/ Selbstbau-Sensoren] || auch LoRa möglich | | [[MySensors]] || - || 2,4 GHz, 868/433 MHz, RS485 (2-Draht) || || || [[MYSENSORS|MySensors Gateway]], [[MQTT]] || [[MYSENSORS_DEVICE]] || [http://www.mysensors.org/build/ Selbstbau-Sensoren] || auch LoRa möglich | ||
Zeile 137: | Zeile 140: | ||
|- | |- | ||
| [[WMBUS]] || WMBus_T, WMBus_S, WMBus_C || 868MHz || ?? || 100 kbit/s / 32.768 kbit/s || CU* || {{Link2CmdRef|Anker=WMBUS|Label=WMBUS}} || Wasseruhren, Wärmezähler, Elektrozähler || - | | [[WMBUS]] || WMBus_T, WMBus_S, WMBus_C || 868MHz || ?? || 100 kbit/s / 32.768 kbit/s || CU* || {{Link2CmdRef|Anker=WMBUS|Label=WMBUS}} || Wasseruhren, Wärmezähler, Elektrozähler || - | ||
|- | |||
| [[:Kategorie:AVM-Produktserie_FRITZ!DECT|FRITZ!DECT]] || - || 2.4GHz || - || - || {{Link2CmdRef|Anker=FBAHAHTTP|Label=FBAHAHTTP}} || {{Link2CmdRef|Anker=FBDECT|Label=FBDECT}} || Schaltsteckdosen mit integrierter Energiemessung sowie Funk-Heizkörperthermostate || - | |||
|- | |- | ||
| colspan="9" | ''Tabelle muss noch vervollständigt werden'' | | colspan="9" | ''Tabelle muss noch vervollständigt werden'' | ||
|- | |- | ||
| colspan="2" | '''Legende:''' | | colspan="2" | '''Legende:''' | ||
| colspan="7" | CU* = CUL, CUN, CUNO | | colspan="7" | CU* = CUL, CUN, CUNO <br> ** = Produkte evtl. nur noch gebraucht erhältlich | ||
|} | |} | ||
Zeile 151: | Zeile 156: | ||
| [[1-Wire]] || [[Interfaces für 1-Wire|diverse]] || {{Link2CmdRef|Anker=OWX|Label=OWX}}, [[OWServer & OWDevice|OWServer]] || [[:Kategorie:1-Wire|1-Wire]] || - | | [[1-Wire]] || [[Interfaces für 1-Wire|diverse]] || {{Link2CmdRef|Anker=OWX|Label=OWX}}, [[OWServer & OWDevice|OWServer]] || [[:Kategorie:1-Wire|1-Wire]] || - | ||
|- | |- | ||
| [[EIB_/_KNX|EIB/KNX]] || {{Link2CmdRef|Anker=TUL|Label=TUL}} || {{Link2CmdRef|Anker=KNX|Label=KNX}} || [[:Kategorie:EIB/KNX|EIB/KNX]] || - | | [[EIB_/_KNX|EIB/KNX]] || {{Link2CmdRef|Anker=TUL|Label=TUL}} || {{Link2CmdRef|Anker=KNXIO|Label=KNXIO}}, {{Link2CmdRef|Anker=KNX|Label=KNX}} || [[:Kategorie:EIB/KNX|EIB/KNX]] || - | ||
|- | |- | ||
| Firmata || RS-232, USB, Ethernet || {{Link2CmdRef|Anker=FRM|Label=FRM}} || Arduino || - | | Firmata || RS-232, USB, Ethernet || {{Link2CmdRef|Anker=FRM|Label=FRM}} || Arduino || - | ||
|- | |- | ||
| [[HomeMatic Wired]] || [[HomeMatic Wired RS485 LAN Gateway|HM485 LAN Gateway]] || {{Link2CmdRef|Anker=HM485_LAN|Label=HM485_LAN}} || [[:Kategorie:HomeMatic Components|Präfix HMW]] || - | | [[HomeMatic Wired]] || [[HomeMatic Wired RS485 LAN Gateway|HM485 LAN Gateway]] || {{Link2CmdRef|Anker=HM485_LAN|Label=HM485_LAN}} || [[:Kategorie:HomeMatic Components|Präfix HMW]] || - | ||
|- | |||
| PHC - Peha-Bus || RS485 USB Adapter || {{Link2CmdRef|Anker=PHC|Label=PHC}} {{Link2Forum|Topic=71011|Message=625351|LinkText=Forum}}|| || - | |||
|- | |- | ||
| [[MySensors]] || [[MYSENSORS|MySensors Gateway]] || [[MYSENSORS_DEVICE]] || [http://www.mysensors.org/build/ Selbstbau-Sensoren] || Zu Funk: s.o. | | [[MySensors]] || [[MYSENSORS|MySensors Gateway]] || [[MYSENSORS_DEVICE]] || [http://www.mysensors.org/build/ Selbstbau-Sensoren] || Zu Funk: s.o. | ||
|- | |- | ||
| [[Modbus]] || z.B. RS485 USB Adapter || [[Modbus]] || Relaisplatinen, Heizungssteuerungen || - | | [[Modbus]] || z.B. RS485 USB Adapter || [[Modbus]] || Relaisplatinen, Heizungssteuerungen || - | ||
|- | |||
| X10 || {{Link2CmdRef|Anker=CM11|Label=USB Adapter CM11}} || {{Link2CmdRef|Anker=X10|Label=X10}} || - || Produkte der Fa. Marmitek; Kommunikation über die vorhandene Stromverkabelung (ähnlich DLAN) | |||
|- | |- | ||
| colspan="5" | ''Tabelle muss noch vervollständigt werden'' | | colspan="5" | ''Tabelle muss noch vervollständigt werden'' | ||
Zeile 169: | Zeile 178: | ||
Diese Geräte - in der Übersichtsgrafik als '''''Sensors & Actuators''''' bezeichnet - sind, sofern es eine detaillierte Beschreibung dazu gibt, in den jeweiligen Unterseiten der [[:Kategorie:Hardware|Hardwareliste]] aufgeführt. | Diese Geräte - in der Übersichtsgrafik als '''''Sensors & Actuators''''' bezeichnet - sind, sofern es eine detaillierte Beschreibung dazu gibt, in den jeweiligen Unterseiten der [[:Kategorie:Hardware|Hardwareliste]] aufgeführt. | ||
{{Hinweis|Sollten Sie Komponenten im Einsatz haben, die '''''nicht aufgeführt''''' sind, oder in Betracht ziehen, solche zu beschaffen, bedeutet dies nicht zwangsläufig, dass diese nicht auch von FHEM unterstützt werden oder unterstützt werden könnten. Erfahrungsgemäß verwenden z.B. viele no-name-Funk-Produkte eines von vielen standardisierten (und bekannten) Funkprotokollen, so dass häufig die Schwierigkeit eher darin besteht herauszufinden, um was es sich konkret jeweils handelt und welches dann das optimale Interface hierfür ist. Neuere Netzwerk-Geräte stellen nicht selten ein MQTT-Interface zur Verfügung oder können über eine Web-Schnittstelle gesteuert werden. Auch in diesen Fällen ist es häufig möglich, diese mit vertretbarem Aufwand in FHEM zu integrieren. Da FHEM durch Module beliebig erweitert werden kann, kann ''im Prinzip'' jedes irgendwie steuerbare Gerät auch in FHEM integriert werden.}} | |||
== FHEM und das Inter-/Intranet == | |||
FHEM kann mit Modulen in vielfältiger Weise Informationen mit und über das Inter- und/oder Intranet austauschen. Bereits die in der Übersicht enthaltenen Beispiel-Interfaces CCU3 und OWServer nutzen effektiv Netzwerkprotokolle zur Verbindung mit FHEM, entsprechendes gilt bei Nutzung des MQTT-Protokolls oder Kalendern. | |||
Weitere Beispiele wären | |||
* Sprachsteuerungssysteme | |||
* Messanger-Dienste wie Telegram oder Whatsapp | |||
Insbesondere bei der Nutzung solcher Dienste zur Steuerung Ihrer Komponenten sollten Sie darauf achten, dass diese angemessen gegen Zugriffe von unberechtigten Dritten abgesichert sein sollten. Bereits im Auslieferungszustand enthält FHEM selbst hierzu einige Mechanismen, die erforderlichenfalls angepaßt werden sollten, insbesondere ist durch [[allowed]] der Zugriff auf ''FHEMWEB'' nur aus demselben privaten Netzwerksegment zugelassen. | |||
Beachten Sie hierzu vor allem die entsprechenden Hinweise in der commandref des jeweils genutzen Moduls. | |||
== Weblinks == | == Weblinks == | ||
Zeile 178: | Zeile 198: | ||
* [http://www.zigbee.org/ Zigbee] Homepage | * [http://www.zigbee.org/ Zigbee] Homepage | ||
[[Kategorie:FHEM-Verwendung]] | [[Kategorie:FHEM-Verwendung]] | ||
<!---Einarbeiten: | |||
Wolke: Sprachsteuerung, weitere Erläuterung... | |||
FLOORPLAN: wie damit umgehen? | |||
ZWDongle/ZWave als Prototyp/"*ZWDongle/ZWave: showcase for other bidirectional systems" | |||
Wo finde ich was? WAS kann FHEM WIE WOMIT... ("FHEM kann alles") | |||
pgm2 - zu technisch/veraltet? | |||
Homebrew... Nanocul usw ,Bastelecke | |||
----> |
Aktuelle Version vom 27. November 2022, 10:05 Uhr
Ein FHEM System besteht im Prinzip aus den in der nachfolgenden Übersicht aufgeführten Bestandteilen.
Server
Bei der Komponente Server muss unterschieden werden zwischen dem eigentlichen FHEM Hausautomations-Server (implementiert in der Perl-Datei fhem.pl) und der Hardware, auf der dieser Server ausgeführt wird.
Als Server Hardware sind (z. B.) möglich:
- Windows Rechner
- Linux Rechner
- OS X Rechner
- Einplatinencomputer, wie Raspberry Pi, BeagleBone Black
- DockStar, PogoPlug, etc.
- diverse NAS Systeme wie Buffalo Linkstation, Synology Diskstation
- Virtualisierungslösungen einschließlich Docker sind ebenfalls möglich
(Diese Aufstellung ist nur eine unvollständige Auswahl; Details zu unterstützten Server Systemen finden sich in der Kategorie Server Hardware).
Perl
Auf dem Server muss Perl installiert sein. Zur erforderlichen Version gibt es widersprüchliche Aussagen, die vor allem daraus resultieren, dass verschiedene FHEM-Module von verschiedenen Entwicklern stammen und daher unterschiedliche Anforderungen stellen. Laut FHEM-Webseite wird mindestens Version 5.6 benötigt, faktisch setzen aber viele Module 5.10 oder sogar 5.12 voraus. Der Betrieb mit Grundfunktionen ist jedoch zumindest ab Version 5.8.8 mit Einschränkungen möglich.
Konfiguration
Das Hausautomations-System wird definiert über die Konfiguration, die im Regelfall aus der
- reinen Textdatei
fhem.cfg
(Standard nach der Erstinstallation) oder alternativ einer - SQL-Datenbank
besteht.
Die Konfiguration enthält Definitionen für die Bestandteile (Geräte) und Funktionen des jeweiligen Hausautomations-Systems. Die verfügbaren Befehle und deren Syntax sind in der Befehlsreferenz (commandref) aufgeführt und beschrieben. Zu einigen Hilfsmodulen gibt es detaillierte Beschreibungen mit Beispielen.
Benutzeroberfläche
Der Zugriff auf FHEM erfolgt mittels Webbrowser oder App über die verfügbaren FHEM Benutzeroberflächen.
In den FHEM Server integriert ist ein Webserver (PGM2), der im Prinzip immer zur Verfügung steht. Diese häufig als FHEMWEB bezeichnete Schnittstelle ist über
serverhostnameoderIP:8083/fhem
erreichbar.
Eine Auswahl der Benutzeroberflächen:
- PGM2/FHEMWEB - das Standardinterface, das ebenfalls viele Möglichkeiten bietet, die Darstellung an die eigenen Bedürfnisse anzupassen
- FLOORPLAN
- FHEM Tablet UI, mit der Erweiterung FUIP
- SmartVISU
- diverse Apps für iOS und Android (Auswahl unter: FHEM Benutzeroberflächen)
Beispielhafte Screenshots diverser Benutzeroberflächen: http://fhem.de/fhem.html#Screenshots
Module
Die Funktionalität von FHEM kann über Module erweitert werden. Module können die unterschiedlichsten Aufgaben übernehmen vom Anbinden eines Hardwaresystems über die Bereitstellung eines Frontends bis zur Automatisierung von Aufgaben. Beispiele für Module:
- 00_CUL.pm - Implementierung der Unterstützung für den CUL
- 00_ZWDongle.pm und 10_ZWave.pm zur Einbindung von Geräten der in der ZWave-Alliance verbundenen Hersteller
- 00_HMUARTLGW.pm oder 00_CUL.pm zur Einbindung von HomeMatic-Geräten
- 88_HMCCU.pm und 88_HMCCUDEV.pm oder 88_HMCCUCHN.pm zur Einbindung von HomeMatic und/oder HomeMatic-IP-Geräten (benötigt eine CCU2 oder CCU3)
- 57_Calendar.pm zur Einbindung von ical-Dateien
- 95_FLOORPLAN.pm - Grundriss (oder Ähnliches) als Benutzeroberfläche
- uvm.
Module können unterteilt werden in
- Befehlsmodule (FHEM-Befehle sind teilweise eigenständige Module)
- Hilfsmodule
- Gerätemodule
- private Homepages
Die offiziell in FHEM enthaltenen Module sind in der commandref beschrieben. Sie werden über den Update-Befehl von FHEM verteilt und aktualisiert. Voraussetzung für die Aufnahme als offizielles Modul sind Supportwille durch den Entwickler und Dokumentation des Moduls.
Zusätzlich existiert eine Vielzahl von inoffiziellen Modulen, die manuell in FHEM installiert werden können. Auch die Aktualisierung erfolgt nicht über den Update-Befehl, sondern muss durch den Nutzer selbst erfolgen. Inoffizielle Module sind an den verschiedensten Stellen zu finden:
- Contrib-Verzeichnis im offiziellen FHEM-Sourcecode-SVN [1]
- Beiträge im FHEM-Forum
Interfaces
Die Verbindung zu den angeschlossenen Geräten der Hausautomation wird im Allgemeinen - geräteabhängig - über Interfaces (manchmal auch als Gateway bezeichnet) hergestellt. Diese setzen die FHEM Steuerbefehle in das jeweilige (Funk-) Protokoll um - und geben auch die (Funk-) Telegramme der Komponenten an FHEM zurück. Häufig steht nicht nur ein ganz bestimmter Interface-Typ zur Verfügung, sondern mehrere, wie in der Übersichtsgrafik beispielhaft für einige Technologien wie ZWave, HomeMatic oder 1-Wire ersichtlich. Es genügt dabei, wenn dem FHEM-Server ein Weg zur Datenübermittlung mit z.B. einem Aktor zur Verfügung steht.
In der Regel ist es empfehlenswert, ein speziell für das verwendete Protokoll konzipiertes Interface zu verwenden, also z.B.
- ZWDongle statt ZWCUL für ZWave oder ein
- HomeMatic Funkmodul für Raspberry Pi, ein HMLAN Konfigurator (ein mittels LAN mit dem FHEM Server verbundenes Gerät) statt eines CUL.
Bei CUL und seinen Derivaten könnnen z.B. beim HomeMatic-Protokoll Probleme mit dem Timing auftreten.
Durch die Wahl einer von mehreren Interface-Varianten kann ein und diesselbe Komponente in FHEM im Ergebnis sehr unterschiedlich ausgestaltet und zu steuern sein. Nutzt man z.B. für HomeMatic (BidCoS) HMUARTLGW oder CUL als Interface-Typ, werden die Sensoren oder Aktoren als CUL_HM-Geräte in FHEM repräsentiert, wählt man eine CCU2 oder CCU3, werden die Komponenten dann über die HMCCU-Modulfamilie eingebunden.
Eine (unvollständige) Liste solcher Interfaces (siehe auch Kategorie Interfaces):
- CUL - je nach Einstellung für die Kommunikation mit FS20, FHT und andere SlowRF Protokolle, MAX! Heizungssteuerung oder HomeMatic und, mit Einschränkungen, InterTechno (nur senden)
- CUNO, ähnlich CUL, jedoch nicht per USB sondern per IP angebunden (z.Zt. -Stand Juli 2019 - nicht für HomeMatic empfohlen)
- HomeMatic LAN Konfigurations-Adapter - HomeMatic
- HomeMatic Funkmodul für Raspberry Pi - Homematic
- Homematic CCU2 - HomeMatic und HomeMatic IP
- MAX! Cube LAN-Gateway
- Schnittstellen(karten) für 1-Wire
- TCM(120/310) zur Anbindung von EnOcean
- Arduino mit Firmata über USB oder Netzwerk
- panStamp als Möglichkeit Arduinos mit diversen Sensor- und I/O- Boards per 868MHz Funk über das SWAP protokoll anzubinden
- JeeLink, ein weiteres USB-Stick Interface (ebenfalls arduino basiert) für diverse 433MHz und 868MHz Komponenten
- RFXtrx für InterTechno, RSL, ELRO etc., Wetter-Sensoren (Oregon-Scientific, Cresta, La Crosse, TFA, UPM) und andere 433 Mhz Geräte.
- manche Komponenten (IP Komponenten) können über TCP/IP (LAN) direkt vom FHEM Server aus angesprochen werden; hier ist dann kein weiteres Interface im eigentlichen Sinne erforderlich. Dies gilt auch für diverse Module die Geräte über WEB Dienste des Herstellers anbinden (z. B. Withings, netatmo, MQTT).
Protokolle
Der Kommunikation zwischen Interfaces und Geräten liegt jeweils ein bestimmtes Protokoll (in der Grafik: data exchange) zugrunde. Unterstützte Protokolle mit ihren Eigenschaften sind in der folgenden Tabelle aufgelistet.
Name | rfMode | Frequenz | Modulation | Datenrate | Interfaces | Modul | Geräte (Beispiel) | Bemerkungen |
---|---|---|---|---|---|---|---|---|
FS20 | SlowRF | 868,35MHz | AM | 1kHz | CU*, FHZ | FS20 | - | ** |
FHT | SlowRF | 868,35MHz | AM | 1kHz | CU*, FHZ | FHTTK, FHT | Heizungsregelung | ** |
S300 | SlowRF | 868,35MHz | AM | 1kHz | CU*, FHZ | CUL_WS | Temperatur-/Feuchtesensoren | - |
HMS | SlowRF | 868,35MHz | AM | 1kHz | CU*O, FHZ | - | ?? | ** |
EM | SlowRF | 868,35MHz | AM | 1kHz | CU*, FHZ | CUL_EM | Energiemonitore (Strom, Gas) | - |
HomeMatic | HomeMatic | 868,3MHz | FM | 10kHz | CU*, HMLan, HMUsb, HomeMatic Funkmodul für Raspberry Pi | CUL_HM, HMUARTLGW | diverse | Alternative Anbindung über HMCCU möglich! |
HomeMatic-IP | HomeMatic-IP | 868,3MHz | FM | 10kHz | HMCCU | HMCCUDEV, HMCCUCHN | diverse | - |
MAX! | MAX | 868,3MHz | FM | 20kHz | CU*, MAXLAN | MAX | Wandthermostat, Heizkörperthermostate, Fensterkontakt, Zwischenstecker | ** |
IT u.a. 433MHz-Protokolle | - | 433MHz | AM? | 1kHz | CU*433, SIGNALDuino | - | - | - |
Firmata WiFi | - | 2,4/5 GHz | FRM | Arduino | - | |||
SWAP | - | 868 (433/915) MHz | GFSK | 38.3835 Kbps | panStamp (+panStick) | SWAP | RGB LED Driver, diverse Sensoren und Aktoren | - |
EnOcean | - | 315 / 868 / 902 / 928MHz | ASK | 125 kbit/s | TCM | EnOcean | Batterielose Funksensoren, diverse Aktoren | - |
PCA | - | 868,35MHz | ?? | ?? | JeeLink | PCA301 | PCA301 | - |
La Crosse | - | 868,35MHz | ?? | ?? | JeeLink, LGW | Lacrosse | LaCrosse IT+ (Technoline) Sensoren | - |
ZigBee | - | 2,4 GHz | HUE Bridge (o. RaspBee bzw. ConBee II, es existieren weitere alternative Methoden, z.B. auch über Bridges anderer Anbieter) | HUEBridge | Neben Philips HUE wird potentiell eine Vielzahl von weiteren Produktlinien anderer Hersteller unterstützt | [2] | ||
MySensors | - | 2,4 GHz, 868/433 MHz, RS485 (2-Draht) | MySensors Gateway, MQTT | MYSENSORS_DEVICE | Selbstbau-Sensoren | auch LoRa möglich | ||
Z-Wave | - | 868MHz | 2-FSK | 9.600 bit/s oder 40 Kbit/s | ZWDongle, (experimentell: ZWCUL) | ZWave, Z-Wave | - | - |
WMBUS | WMBus_T, WMBus_S, WMBus_C | 868MHz | ?? | 100 kbit/s / 32.768 kbit/s | CU* | WMBUS | Wasseruhren, Wärmezähler, Elektrozähler | - |
FRITZ!DECT | - | 2.4GHz | - | - | FBAHAHTTP | FBDECT | Schaltsteckdosen mit integrierter Energiemessung sowie Funk-Heizkörperthermostate | - |
Tabelle muss noch vervollständigt werden | ||||||||
Legende: | CU* = CUL, CUN, CUNO ** = Produkte evtl. nur noch gebraucht erhältlich |
Name | Interfaces (Hardware) | Modul | Geräte (Beispiel) | Bemerkungen |
---|---|---|---|---|
1-Wire | diverse | OWX, OWServer | 1-Wire | - |
EIB/KNX | TUL | KNXIO, KNX | EIB/KNX | - |
Firmata | RS-232, USB, Ethernet | FRM | Arduino | - |
HomeMatic Wired | HM485 LAN Gateway | HM485_LAN | Präfix HMW | - |
PHC - Peha-Bus | RS485 USB Adapter | PHC Forum | - | |
MySensors | MySensors Gateway | MYSENSORS_DEVICE | Selbstbau-Sensoren | Zu Funk: s.o. |
Modbus | z.B. RS485 USB Adapter | Modbus | Relaisplatinen, Heizungssteuerungen | - |
X10 | USB Adapter CM11 | X10 | - | Produkte der Fa. Marmitek; Kommunikation über die vorhandene Stromverkabelung (ähnlich DLAN) |
Tabelle muss noch vervollständigt werden |
Komponenten
Der eigentliche Zweck eines Hausautomatisierungs-Projekts sind dann letztendlich die Geräte (Komponenten / Aktoren / Empfänger), die automatisch gesteuert werden sollen, bzw. auch Auslöser für Aktionen (Sender) und Lieferant von Datenmaterial (Sensoren) sind.
Diese Geräte - in der Übersichtsgrafik als Sensors & Actuators bezeichnet - sind, sofern es eine detaillierte Beschreibung dazu gibt, in den jeweiligen Unterseiten der Hardwareliste aufgeführt.
FHEM und das Inter-/Intranet
FHEM kann mit Modulen in vielfältiger Weise Informationen mit und über das Inter- und/oder Intranet austauschen. Bereits die in der Übersicht enthaltenen Beispiel-Interfaces CCU3 und OWServer nutzen effektiv Netzwerkprotokolle zur Verbindung mit FHEM, entsprechendes gilt bei Nutzung des MQTT-Protokolls oder Kalendern. Weitere Beispiele wären
- Sprachsteuerungssysteme
- Messanger-Dienste wie Telegram oder Whatsapp
Insbesondere bei der Nutzung solcher Dienste zur Steuerung Ihrer Komponenten sollten Sie darauf achten, dass diese angemessen gegen Zugriffe von unberechtigten Dritten abgesichert sein sollten. Bereits im Auslieferungszustand enthält FHEM selbst hierzu einige Mechanismen, die erforderlichenfalls angepaßt werden sollten, insbesondere ist durch allowed der Zugriff auf FHEMWEB nur aus demselben privaten Netzwerksegment zugelassen. Beachten Sie hierzu vor allem die entsprechenden Hinweise in der commandref des jeweils genutzen Moduls.
Weblinks
- EnOcean Homepage
- ELV, (Haupt-)Lieferant von FS20, FHT, HomeMatic, MAX!
- Firmata Protokoll
- panStamp, panStamp Hersteller
- Jeelabs, JeeLink Hersteller
- Zigbee Homepage