Schlagwort: Energie sparen
ioBroker: Ergänzung zu Open Source Hausautomatisierung im Vergleich
Im Artikel zu Open Source Hausautomatisierungslösungen wurden bereits einige Lösungen verglichen. Auf der diesjährigen 17. Gulaschprogrammiernacht hat Bluefox ein weiteres System vorgestellt: ioBroker
ioBroker soll nun an den gleichen Kriterien wie die anderen 7 Systeme gemessen werden:
- Die Software muss quell-offen und frei sein (OpenSource)
- Dokumentation auf Englisch bzw. Deutsch und in ausreichenden Qualität und Detailtiefe vorhanden (Dokumentation)
- Größe der Community
- Support für Komponenten von eQ-3 für Homematic und Homematic IP (Hardware-Unterstützung), da diese bereits vorhanden ist.
- Apps für iOS bzw. Android (Apps)
- Verwendete Programmiersprachen & Technologien (Technologie)
- Die Software muss Graphen zur historischen Analyse von Messwerten bieten (Graphen)
- Die Software muss über Regeln erweiterbar sein, z.B. Verknüpfung von Schalter, Reaktion aufs Verlassen der Wohnung (Regeln)
ioBroker ist ein bei Github gehostetes OpenSource-Projekt unter MIT-Lizenz und basiert auf Node.js, einer Server-seitigen Implementierung von JavaScript.
Anleitungen zur Installation sind auf Deutsch, Englisch und Russisch vorhanden. Allerdings sollten die Autoren hier noch etwas Zeit investieren und Fehler ausbessern, da diese den Lesefluss beeinflussen.
Laut dem Vortrag von Bluefox (Videomitschnitt exisitiert) wächst die Community von ioBroker rasant an. Dazu trägt sicher auch bei, dass bereits eine Integration für Amazon Alexa existiert, was das Gesamtsystem deutlich smarter erscheinen lässt.
Homematic und Homematic-IP werden laut Forum unterstützt. Auch scheint Anwesenheitserkennung über Fritz!Box und das Steuern von Samsung TV Geräten unterstützt zu werden.
Wichtig sind natürlich auch Apps für:
- iOS: VIS Viewer
- Android: ioBroker.vis von Bluefox hat bei knapp über 50 Bewertungen im Schnitt 4,9 Sterne.
- Alexa Skill: ioBroker SmartHome
Da ioBroker auf Node.js basiert kann beim Entwickeln sowohl Front- als auch Backend in einer Sprache entwickelt werden. Daten werden sowohl in relationalen Datenbanken (MySQL, PostgreSQL oder SQLite) als auch in InfluxDB für zeitbasierte Daten abgelegt. Die transparenten Verbindungen über TCP erlauben es hierbei, Teile der Software modular auf mehreren Hosts zu betreiben.
Zur Visualisierung bietet ioBroker einen Editor, der komplett im Browser läuft. Hierbei werden unterschiedliche Darstellungen für Zielgeräte angeboten. Diese Funktionalität wird über den VIS-Adapter bereit gestellt. Graphen stellt das System hierbei über den Flot-Adapter dar.
Zur Eigentlichen Automatisierung bietet ioBroker das Definieren von Szenen über den Szenen-Adapter aber auch das Erstellen komplexer über Adapter für Blockly und node-red.
Zusätzlich zu den, für den Vergleich wichtigen, Punkten bietet eine Integration in Apples Homekit. Diese ist ebenso ein Pluspunkt wie auch der optionalen Clound-Zusatz, der einen Zugriff aus der Ferne auch ohne eigenes VPN ermöglicht.
Alles in Allem ist ioBroker eine weitere Software mit guten Ansätzen, die ich aber aus Zeitgründen und da ich weder mit Node.js noch Javascript besonders viel Erfahrung besitze, nicht weiter betrachten werde.
Open Source Hausautomatisierung im Vergleich
Inzwischen sind alle Heizkörper und auch fast alle Lichter in der heimischen Wohnung über die Weboberfläche der eQ-3 CCU2 fernbedienbar und auch die @Home App funktioniert soweit gut. Die Produktpflege und Dokumentation von eQ3 würde ich vorbildlich nennen: auf der Downloads-Seite findet man sowohl die jeweils aktuelle CCU2 Firmware (inklusive Change Log) als auch die Dokumentation der Schnittstellen (HomeMatic XML-RPC).
Inhalt
Vorhandene Komponenten
Folgende Homematic und Homematic IP Produkte sind aktuell im Einsatz:
- HM-CC-RT-DN – Funk-Heizkörperthermostat
- HM-LC-SW1-FM – Schalt-Aktor 1-fach Unterputz (ohne Taster)
- HM-LC-SW2-FM – Schalt-Aktor 2-fach Unterputz (ohne Taster)
- HM-LC-Sw1PBU-FM – Schalt-Aktor 1-fach Unterputz (für Markenschalter)
- HM-PB-2-WM55 – 2-fach-Funk-Wandtaster
- HmIP-BSM – Schalt-Aktor 1-fach Unterputz (Homematic IP, für Markenschalter)
- HMIP-PSM – Schalt- und Messsteckdose (Homematic IP)
Allerdings kann man (ohne Kritik an eQ-3 zu üben) naturgegeben nur deren Produkte verknüpfen und steuern. Weitere bereits vorhandene Geräte sollten ebenso angesprochen werden können:
- Radio mit Chips von Frontier Silicon
- Fernseher von Samsung
- Anwesenheitserkennung über WLAN einer AVM Fritz!Box
- … (der Phantasie sind keine Grenzen gesetzt)
Zum Glück gibt es ausreichend Softwarelösungen für dieses Problem. Vor dem Aufzählen der Kandidaten sollen allerdings Vergleichskriterien festgelegt werden.
Vergleichskriterien
- Die Software muss quell-offen und frei sein (OpenSource)
- Dokumentation auf Englisch bzw. Deutsch und in ausreichenden Qualität und Detailtiefe vorhanden (Dokumentation)
- Größe der Community
- Support für Komponenten von eQ-3 für Homematic und Homematic IP (Hardware-Unterstützung), da diese bereits vorhanden ist.
- Apps für iOS bzw. Android (Apps)
- Verwendete Programmiersprachen & Technologien (Technologie)
- Die Software muss Graphen zur historischen Analyse von Messwerten bieten (Graphen)
- Die Software muss über Regeln erweiterbar sein, z.B. Verknüpfung von Schalter, Reaktion aufs Verlassen der Wohnung (Regeln)
openHAB
openHAB basiert auf Java und OSGi (Equinox) und ist somit auf allen Plattformen lauffähig, auf denen Java angeboten wird (Linux, Windows, OS X,…). Laut Wiki sind auch ARM SBCs ausreichend.
openHAB verwendet intern einen Event Bus, um alle anderen Komponenten zu verbinden. Weitere wichtige Komponenten sind das openHAB Repository, welches den aktuell bekannten Zustand aller bekannten Items vorhält, und die Bindings, die als Abstraktionsschicht zwischen openHAB und den anzubindenden Geräten fungiert.
Über das openHAB Repository werden sowohl die diversen User Interfaces (WebUI, Apps für iOS, Android, Windows Phone, …) als auch die Verarbeitung der Automatisierungsregeln angebunden.
URL | http://www.openhab.org/ |
OpenSource | https://github.com/openhab/openhab (EPL) |
Dokumentation | https://github.com/openhab/openhab/wiki Dokumentation ausführlich für alle Module auf Englisch vorhanden, über github Wiki gut erweiterbar. |
Community | Hohe Aktivität |
Hardware- Unterstützung | Breite Unterstützung für diverse Hardware und externe Software |
Apps | verfügbar für iOS, Android, Windows Phone und sogar Pebble |
Technologie | Java / OSGi |
Graphen | Charts sind über Persistenzen für fast alle messbaren Größen möglich. |
Regeln | openHAB ist über Regeln steuerbar. Diese sind in einer DSL zu erstellen und integrieren Java. |
Home Assistant
Python 3 bildet die Basis für Home Assistant. Entsprechend bietet auch Home Assistant einen breiten Support für die gängigsten Betriebssysteme (Video-Tutorials existieren für Windows 10, OS X und Ubuntu). Auch Hinweise zum Durchführen einer Aktualisierung sind vorhanden. Installationshinweise für Raspberry Pi, Docker, Vagrant und auch Synology NAS sind vorhanden.
Auch Home Assistent nutzt architektonisch einen Bus, um die einzelnen Komponenten zu verbinden, eine Service Registry und eine State Machine zum Verwalten der Zustände der einzelnen Komponenten.
URL | https://home-assistant.io/ |
OpenSource | https://github.com/home-assistant/home-assistant (MIT) |
Dokumentation | Cookbook für Anwender und Dokumentation für Entwickler |
Community | Sehr hohe Aktivität |
Hardware-Unterstützung | über 470 (Stand Version 0.33.0) verschiedene Komponenten (Hard- und Software), Homematic ist unterstützt, Homematic IP jedoch nicht |
Apps | keine, iOS App in Vorbereitung |
Technologie | Python |
Graphen | Graphen sind an messenden Objekten vorhanden |
Regeln | möglich, können in YAML definiert werden |
fhem
fhem wird in Perl entwickelt und schont daher die benötigten Ressourcen (sogar auf Fritz!Boxen ist ein Betrieb möglich). Eine Installation ist auch hier wieder auf den 3 großen Betriebssystemen möglich.
Für die Freunde eines Handbuchs hält die Community eine ausführliche Einführung bereit.
URL | http://fhem.de// |
OpenSource | https://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/ (GPL v2) |
Dokumentation | Ausführliches deutschsprachiges PDF, ausführliches gemischtsprachiges Wiki |
Community | Sehr hohe Aktivität |
Hardware-Unterstützung | Übersicht über unterstützte Hardware HmIP-Geräte noch nicht offiziell gelistet aber laut Forum möglich |
Apps | u.a. FHEMobile für iOS und andFHEM für Android |
Technologie | Perl |
Graphen | Graphen sind über gnuplot möglich |
Regeln | Regeln in Perl geschrieben möglich |
calaos
calaos ist ein französisches Projekt und setzt für die Steuerung auf KNX und DMX. Als Hardware wird hauptsächlich Wago unterstützt. Leider ist die Dokumentation hauptsächlich in Französisch und auch das Datum des letzten Eintrags aus dem Entwickler-Blog aus dem Februar 2015 lässt nichts gutes hoffen.
URL | https://calaos.fr |
OpenSource | https://github.com/calaos (GPL v3) |
Dokumentation | französischsprachiges Forum, Wiki in Französisch und Englisch |
Community | moderate Aktivität |
Hardware-Unterstützung | Eingeschränkt, lediglich WAGO, OneWire Komponenten, Zibase, GPIO und IoT Devices werden unterstützt (Quelle) |
Apps | Calaos Mobile für iOS, Calaos Home für Android |
Technologie | C/C++ |
Graphen | unbekannt |
Regeln | integrierter LUA Support |
domoticz
domoticz ist in C/C++ geschrieben und nativ verfügbar für Raspberry Pis, Windows, Linux, OS X und für einige NAS-Syteme. Als Scripting-Engine wird Lua verwendet, über die mit Blockly die Automatisierung vorgenommen wird. Leider Homematic nicht unterstützt, jedoch ist die Liste an unterstützter Hardware recht umfangreich.
URL | https://domoticz.com/ |
OpenSource | https://github.com/domoticz/domoticz (GPL v3) |
Dokumentation | englischsprachiges Handbuch und Wiki |
Community | hohe Aktivität |
Hardware-Unterstützung | Moderat, leider kein Homematic (Quelle) |
Apps | ImperiHome für iOS und Android |
Technologie | C/C++ |
Graphen | Ja, als Log in der UI |
Regeln | integrierter Support für LUA, Bash, Perl, PHP und Python, Support für Blockly |
openmotics
openmotics vereint ein Angebot von Soft- und Hardware, die unter eine OpenSource Lizenz gestellt wurde. Die Hardware wird auch im Shop verkauft. Allerdings existieren nur Module zum Einbau in Schaltschränke auf Hutschienen. openmotics eignet sich somit kaum zum nachträglichen Einbau sondern eher für Neubauten. Aber auch dann ist keine Integration weitere, fremder Komponenten vorgesehen.
URL | https://www.openmotics.com/ |
OpenSource | https://github.com/openmotics (MIT) |
Dokumentation | englischsprachiges Wiki |
Community | keine Aktivität (Quelle) |
Hardware-Unterstützung | nur spezielle openmotics Hardware (siehe Shop) |
Apps | keine bekannt |
Technologie | Python |
Graphen | Ja |
Regeln | Ja |
freedomotic
freedomotic bezeichnet sich als Open Iot Framework, versteht sich also nicht nur zur Heimautomatisierung, sondern versucht weiter zu gehen. Technologisch ist wie bei openHAB in Java Grundlage, es wird aber wohl auf OSGi verzichtet. Die verfügbaren Plugins sind im Marketplace verzeichnet.
Installationsanleitungen sind leider bisher nicht wirklich vorhanden, lediglich eine kurze Seite zum Raspberry Pi und Docker (Zugang über guest/guest, nur REST API) enthalten Text.
Der Einsatz von 2 getrennten Messaging Bussen ermöglicht hier zusätzlich noch das Clustering mehrerer freedomotic-Instanzen. Die verschiedenen Hardwaretypen und externen Services werden über Module angebunden.
URL | http://freedomotic.com/ |
OpenSource | https://github.com/freedomotic/freedomotic (GPL v2) |
Dokumentation | englischsprachiges Benutzerhandbuch |
Community | unbekannt (Quelle) |
Hardware-Unterstützung | diverse Hardware (siehe Shop), keine Hinweise auf Homematic |
Apps | unbekannt |
Technologie | Java |
Graphen | unbekannt |
Regeln | Über XML möglich |
Bewertung
Eine abschließende Bewertung fällt schwer, jedoch werde ich freedomotic (fehlende Unterstützung für Homematic), openmotics (nur spezielle Hardware), domoticz (fehlende Unterstützung für Homematic, verwendete Programmiersprache) und calaos (stark eingeschränkte Hardwareunterstützung) aus den jeweilig genannten Gründen nicht weiter verfolgen.
Für
- openHAB,
- Home Assistant und
- fhem
wird es weitere Artikel geben. Diese werden dann von hier verlinkt.
Ergänzung 7. Januar
Inhaltsverzeichnis eingefügt.
AM2302/DHT22 auf RS232 Adapter
Um der Arietta G25 einen praktischen Nutzen zu verleihen, soll sie als Logger für Temperatur und Feuchtigkeit benutzt werden. Hierzu soll der Sensor AM2302/DHT22 über UART angebunden werden.
Als Adapter habe ich mich für einen minimalistischen ATTINY45 (den hatte ich noch) entschieden.
Das entsprechende Projekt findet man auf GitHub: https://github.com/shing19m/AM2302-ATTINY45-RS232
Mit der Pogoplug LED anzeigen, den Shutdown anzeigen
Nach dem auf dem Pogoplug nun ein ArchLinux für ARM läuft, fing ich an, selbiges an für meine Bedürfnisse anzupassen.
Das Ein- und Ausschalten erweist sich bei einem solchen Gerät ohne Power-Button etwas schwer. Also immer Stecker rein und raus, bzw. schaltbare Steckdosenleiste. Allerdings, wann kann man den Stecker gefahrlos ziehen?
Der Pogoplug zeigt bereits beim Starten über die Front-LED (zweifarbig, grün und orange) durch blinken bzw. dauerhaft grün einen Status an. Entsprechend könnte er ja beim Herunterfahren/Neustarten nach dem Aushängen der Dateisystem einfach auf Orange umstellen.
Dafür gibt es das Kommando /sbin/proled. Damit kann die Front-LED gesteuert werden. Ein bischen Dokumentation ist in Form eine Forumsbeitrages hier erhältlich.
Ein kurzer Test auf der Kommandozeile mit
/sbin/proled orange
ergibt eine orange leuchtende Front-LED.
Nun muss man noch entsprechend das System anpassen, wenn der Pogoplug herunter gefahren wird. Dazu wird in /etc/rc.shutdown eine Zeile eingefügt.
*** rc.shutdown 1969-12-31 18:25:39.000000000 -0600 --- /etc/rc.shutdown 1969-12-31 18:08:39.000000000 -0600 *************** *** 72,77 **** --- 72,78 ---- # ALARM: Turn LEDs off /usr/bin/find /sys/ -path *led* -name *trigger* -exec sh -c '/bin/echo none > {}' \; + /sbin/proled orange if [[ -x /run/initramfs/shutdown ]]; then
Flugs gespeichert, und voilà beim nächsten Herunterfahren signalisiert die orange leuchtende Front-LED den Abschluss des Prozesses. Nun kann der Pogoplug gefahrlos ausgeschaltet werden.
Epia Workstation
Hardware
Hier möchte ich meinen always-on Arbeitsplatz vorstellen. Dabei lag das Hauptaugenmerk natürlich auf einem geringen Stromverbrauch. Die heutigen full-featured Rechner, die man so zu kaufen bekommt, verbrauchen leider auch beim Nichtstun relativ viel Strom. Klar kann man die natürlich ausschalten, aber manchmal will man noch ein Update laden oder etwas in dieser Richtung.

Die Wahl einer sparsamen und preiswerten Platform war also dringend notwendig. Diese viel dabei auf die Via Mini ITX Boards mit Via eigenen CPUs, da diese recht sparsame Geräte sind. Rechenleistung liefern diese zwar nicht, aber für den kleinen Desktop zum Mailen, Browsen, Chatten, etc. reicht es locker aus.

Angefangen haben die Experimente mit einem Standardnetzteil (ATX) in einem passenden Gehäuse. Der Wirkungsgrad der Netzteile sinkt leider mit sinkendem Verbrauch des Rechners auch ab. Und die Industrie produziert eben hauptsächlich für Rechner mit größem Verbrach (Netzteile nur jenseits der 200W). Laut dem Epia Power Simulator (neues Fenster) benötigt meine Konfiguration unter 30 Watt. Ein in diesem Leistungsbereich effizienteres Netzteil konnte im Bereich der CarPCs gefunden werden. Das M1-ATX Netzteil liefert eine Nennleistung von 90 Watt, kann Spannungen von 6V bis 24V am Eingang in ATX konforme Spannungen umwandeln und ist ausgesprochen Effizient.

Ein weiteres Sparpotenzial lag beim Einsatz einer Notebookfestplatte. Diese drehen zwar mit weniger Umdrehungen, dies fällt aber in der Praxis bei diesem Rechner nicht ins Gewicht.

Durch den Einsatz des M1-ATX konnte das Gehäuse flexibel und kompakt entworfen werden. Auch die Geräuschentwicklung der Rechners ist sehr gering und bleibt auch bei empfindlichen Zeitgenossen der Nachruhe nich abträglich. Nur der Lüfter auf der CPU kühlt den Rechner. Zusätzlich ist dieser zur Geräuschdämmung mit Tesapowerstrips befestigt.

Insgesamt befindet sich in dem Gehäuse folgende Hardware:
- Ein VIA EPIA-800 Mini-ITX Motherboard mit VIA C3 800MHz Prozessor
- 512MB Arbeitsspeicher
- Das M1-ATX Netzteil
- Eine 40GB 2,5″ Festplatte
Die eigentliche Wandlung der 230V Wechselspannung in 12V Gleichspannung übernimmt ein Steckernetzteil.
Software
Ich verwende fast auschließlich Linux auf meinen Rechnern, also auch auf diesem Rechner. Aufgrund der leicht knappen CPU Resourcen sollte es also ein möglichst genügsames System werden. Zuerst kam ein Debian zum Einsatz, aber dann entschied ich mich, wieder ein Gentoo aufzusetzen, da dies dem Charakter eines Bastelsystems entgegen kam.
Installiert habe ich natürlich Xorg, auch ein Firefox und Thunderbird haben ihren Weg gefunden. Zum Chatten läuft ein irssi im screen.Mehr dazu hier.
Update
Inzwischen dient die Kiste als stromsparender Server für kleine Dienste. Linux bleibt weiterhin das Betriebssystem der Wahl!