# FHEM

FHEM ist ein Computerprogramm, mit dem man Geräte in einem Haus automatisch steuern kann (Hausautomation). Es handelt sich dabei um ein Perl-basiertes Serverprogramm, das zur automatisierten Bedienung von Aktoren wie zum Beispiel Lichtschaltern oder Heizung sowie der Aufzeichnung von Sensorinformationen wie Raumtemperatur oder Luftfeuchtigkeit dient. FHEM ist ein Akronym für „Freundliche Hausautomation und Energie-Messung“.
Als Host können Windows-, macOS- und Linux-basierte Computer verwendet werden, zum Beispiel manche NAS, einige Fritz!Boxen oder Einplatinencomputer wie Raspberry Pi, BeagleBoard oder Cubieboard. Es gibt auch speziell für FHEM vorbereitete Einplatinencomputer wie das TuxRadio, diese verfügen bereits über eine eingebaute Funkschnittstelle.
FHEM bindet Hausautomationssysteme und Komponenten hardwareseitig durch entsprechende Schnittstellenmodule (I/O) an, die über USB, Netzwerk oder Onboardschnittstellen angebunden werden können. Es werden Schnittstellenmodule für praktisch alle im Hausautomationsbereiche verwendeten Funkprotokolle und Kabelschnittstellen unterstützt, z. B.:
* FS20, FHT, HMS, S300, EM (SlowRF)
* MAX!, HomeMatic
* RFXtrx
* JeeLink
* panStamp
* Z-Wave
* Enocean
* ZigBee
* LaCrosse
* 1-Wire
* EIB/KNX
FHEM kann beliebig viele dieser Schnittstellen zugleich nutzen und bietet für einige Protokolle Mechanismen zur redundanten Nutzung mehrerer Schnittstellen z. B. zur besseren räumlichen Abdeckung oder Erhöhung der Ausfallsicherheit.
Softwareseitig erfolgt die Unterstützung entsprechend angebundener Geräte durch Module (bei FHEM „Devices“ genannt), diese werden ständig ergänzt und weiterentwickelt. Die Module erlauben die Verwaltung, Steuerung und Auswertung der diversen über die Schnittstellen angebundenen Geräte, wie Fernbedienungen, Aktoren und Sensoren. Zurzeit stehen über 200 Module zur Verfügung.
So können durch Module zum Beispiel gesteuert und ausgewertet werden:
* Heizungssteuerungen und Energiemonitoring: HomeMatic, FHT, MAX! (jeweils Temperatursensoren, Thermostate und Ventilsteuerungen) sowie Sensoren der Systeme HMS, S300, ESA2000, EM1000 von ELV Elektronik, EBUS, Luxtronik (Thermensteuerung)
* Automatisierungssysteme, Protokolle, Aktoren und Sender/Sensoren: FS20, HomeMatic, KNX, Z-Wave, Enocean, X10, Intertechno („Baumarkt Funksteckdosen“), ELRO, RSL, HomeEasy, Philips HUE, RFXCOM/RFXTRX, klick-aan-klick-uit, LaCrosse, 1-Wire, panStamp, LIRC, JeeLink, TellStick, Davis VantagePro2 Wettersysteme, Oregon Scientific, Allnet
* Geräte wie: Samsung/Panasonic/LG/Philips Fernseher, Sonos/Squeezebox, Verstärker von Yamaha/Denon/Onkyo, FRITZ!Dect, diverse Heizungsbrenner und Thermen, Solaranlagen, Hörmann Garagensteuerung, Smart Locks, Lindy HDMI Umschalter, Somfy & elero Rollladen- und Jalousien-Steuerungen, Husqvarna Mähroboter, Tesla PowerWalls, Blink Kameras, Gardena Smartbridge, Siemens Simatic S5 und S7 etc.
* Software Devices wie: iTunes/Apple TV, Kodi, Yahoo Wetter, Jabber, Telegram, Kalenderanbindung (iCal), text2speech, Geofencing Software, Mail, Firmata, JawboneUP Fitnessdaten, Pushbullet und Andere per Softwareeinbindung
* Hilfsmodule zur Bestimmung der Sonnenauf- und Untergänge und Dämmerungszuständen, Auswertung von Fritzbox Anruflisten, Anwesenheitsmonitoring, Energiverbrauchsrechner, Lichtszenen Erstellung, Aufbau von Alarmanlagen etc.
Der Server kann unter anderem via Programm, Web-Frontends oder telnet bedient werden. Es gibt diverse Webfrontendes, z. B. mit Visualisierung eines Grundrisses, oder auf Touchscreendevices optimierte Oberflächen. Es stehen mehrere MobileApps zur Verfügung.
Das Programm ist unter der GPL veröffentlicht.

## Ähnliche Systeme

* Home Assistant
* ioBroker
* openHAB