hDP Funktionen und Gerätetypen für ESP8266-Smarthome-Geräte

hDP stellt unterschiedliche Gerätetypen und Hardwarefunktionen für selbst gebaute Smarthome-Geräte bereit. Die universelle hDP-Firmware übernimmt dabei Kommunikation, Pairing, Geräteidentität und die Verbindung zu homeESS.

Welche konkrete Aufgabe ein Gerät übernimmt, wird anschließend über das Geräteprofil in homeESS festgelegt.

Dadurch kann dieselbe Firmware als technische Grundlage für unterschiedliche Geräte dienen – vom einfachen Schaltaktor bis zum Sensor oder einer frei skalierbaren ARGB-Statusanzeige.

Gerätetyp und GPIO-Belegung zentral in homeESS konfigurieren

Bei hDP wird die Gerätefunktion nicht ausschließlich durch eine fest programmierte Firmware bestimmt.

Stattdessen erhält das gekoppelte Gerät ein Geräteprofil in homeESS.

Abhängig vom gewählten Gerätetyp kann dort unter anderem festgelegt werden:

  • welche GPIOs verwendet werden
  • welche Pins als Eingang dienen
  • welche Pins als Ausgang dienen
  • welche Sensoren angeschlossen sind
  • welche Funktionen einzelne Ausgänge übernehmen
  • welche States vom Gerät bereitgestellt werden
  • welche Werte homeESS an das Gerät überträgt

Dadurch lassen sich unterschiedliche Hardwareaufbauten mit derselben Firmware verwenden.

Basic I/O – digitale Ein- und Ausgänge

ESP8266-GPIOs als digitale Eingänge verwenden

Der Gerätetyp Basic I/O ermöglicht die Konfiguration einzelner GPIOs als binäre Eingänge.

Damit können beispielsweise folgende Komponenten angebunden werden:

  • Taster
  • Schalter
  • Reedkontakte
  • Endschalter
  • digitale Sensoren
  • potentialfreie Kontakte
  • einfache Signalgeber

Der jeweilige Zustand wird an homeESS übertragen und dort als State bereitgestellt.

Dieser State kann anschließend beispielsweise:

  • im Dashboard angezeigt
  • als Trigger verwendet
  • in einer Automation geprüft
  • mit anderen Gerätezuständen kombiniert

werden.

ESP8266-GPIOs als digitale Ausgänge verwenden

GPIOs können ebenfalls als digitale Ausgänge konfiguriert werden.

Damit lassen sich beispielsweise:

  • Relais
  • MOSFET-Schaltstufen
  • Status-LEDs
  • Optokoppler
  • externe Steuerleitungen

ansteuern.

Der Ausgang wird über einen schreibbaren State in homeESS gesteuert.

Dadurch kann derselbe Ausgang sowohl manuell als auch über Automationen, andere Geräte oder das Energiemanagement geschaltet werden.

Frei konfigurierbare GPIO-Belegung

Die Pinbelegung wird nicht für jedes Geräteprojekt fest in die Firmware eingebaut.

Stattdessen kann sie im jeweiligen Geräteprofil festgelegt werden.

Ein Entwicklerboard kann dadurch abhängig von der angeschlossenen Hardware unterschiedlich verwendet werden.

Das vereinfacht insbesondere Eigenbaugeräte, bei denen vorhandene GPIOs flexibel genutzt werden sollen.

ARGB Output – adressierbare LEDs mit homeESS steuern

Frei skalierbare ARGB-Statusanzeigen bauen

Der hDP-Gerätetyp ARGB Output ermöglicht die pixelgenaue Steuerung adressierbarer RGB-LEDs.

Dadurch können LED-Stripes oder einzelne adressierbare LEDs als frei skalierbare Statusanzeigen verwendet werden.

Typische Anwendungen sind beispielsweise:

  • Ladezustandsanzeigen
  • Energieanzeigen
  • Fortschrittsanzeigen
  • Betriebszustände
  • Warnanzeigen
  • optische Statusmeldungen

Die Zahl der verwendeten LEDs kann an das jeweilige Projekt angepasst werden.

States als LED-Anzeige darstellen

Werte aus homeESS können zur Steuerung der ARGB-Ausgabe verwendet werden.

Damit lässt sich beispielsweise ein Prozentwert über die Anzahl aktivierter LEDs darstellen.

Eine Anzeige mit zehn LEDs könnte beispielsweise einen Wert von 70 Prozent über sieben aktive LEDs visualisieren.

Da der Wert aus der zentralen State-Struktur stammt, kann die Anzeige unterschiedliche Informationen darstellen.

Beispiele:

  • Ladezustand des Hausakkus
  • PV-Leistung
  • Füllstand
  • Temperaturbereich
  • Fortschritt
  • frei definierter Custom State

Farbe und Helligkeit getrennt steuern

Neben dem darzustellenden Wert können auch Farbe und maximale Helligkeit konfiguriert beziehungsweise über States beeinflusst werden.

Dadurch lassen sich Anzeigen dynamisch an den aktuellen Zustand anpassen.

Beispielsweise:

  • Grün bei normalem Zustand
  • Gelb bei mittlerem Wert
  • Rot bei kritischem Zustand

Die eigentliche Darstellung erfolgt dabei auf dem hDP-Gerät, während die zugrunde liegenden States aus homeESS stammen.

ARGB-Ausgabe abhängig von einem State dimmen

Für hDP-ARGB-Geräte kann zusätzlich ein eigener Dimmschalter beziehungsweise State verwendet werden.

Entspricht der ausgewählte State einem hinterlegten Vergleichswert, reduziert homeESS die berechnete Ausgabehelligkeit um den eingestellten Anteil.

Dadurch lassen sich beispielsweise Statusanzeigen:

  • nachts automatisch dimmen
  • bei ausgeschaltetem Raumlicht reduzieren
  • abhängig vom Betriebszustand abdunkeln

ohne dafür eine separate Firmwarelogik zu entwickeln.

Sensors – Messwerte mit ESP8266 erfassen

Sensoren direkt an ein hDP-Gerät anschließen

Der Gerätetyp Sensors ist für die Erfassung typischer physikalischer Messwerte vorgesehen.

Ein ESP8266 kann dabei mit unterschiedlichen Sensoren ausgestattet werden und deren Werte über hDP an homeESS übertragen.

Die Messwerte stehen anschließend als States zur Verfügung.

Damit können sie beispielsweise für:

  • Dashboards
  • Automationen
  • Grenzwertüberwachung
  • Berechnungen
  • Energiemanagement

verwendet werden.

Temperatur und Luftfeuchtigkeit mit DHT11 und DHT22 messen

Für einfache Temperatur- und Feuchtemessungen sind Sensoren wie:

  • DHT11
  • DHT22

vorgesehen.

Damit lassen sich beispielsweise:

  • Raumtemperatur
  • Außenlufttemperatur
  • Luftfeuchtigkeit
  • Technikraumwerte

erfassen.

Analoge Temperaturmessung mit NTC und PTC

Auch Widerstandssensoren wie NTC und PTC können für Temperaturmessungen verwendet werden.

Diese eignen sich beispielsweise für:

  • Rohrtemperaturen
  • Gehäusetemperaturen
  • technische Anlagen
  • einfache Temperaturfühler

Die Auswertung erfolgt abhängig von der jeweiligen Hardwarekonfiguration.

Helligkeit und analoge Sensorwerte erfassen

Analoge Eingänge können auch für weitere Messgrößen genutzt werden.

Typische Komponenten sind beispielsweise:

  • Fotodiode
  • Fotowiderstand
  • Potentiometer
  • analoge Spannungssignale
  • einfache Widerstandssensoren

Damit können eigene Sensorprojekte aufgebaut werden, ohne für jeden Sensortyp eine vollständig separate Gerätefirmware zu entwickeln.

Digitale Sensoren und Lichtschranken verwenden

Neben analogen Sensoren können auch digitale Signale verarbeitet werden.

Dadurch lassen sich beispielsweise:

  • Lichtschrankenmodule
  • Näherungssensoren
  • Schaltsensoren
  • digitale Statusausgänge

in ein hDP-Sensorgerät integrieren.

Zusätzliche GPIOs parallel als Ein- und Ausgänge verwenden

Nicht für einen Sensor benötigte GPIOs sollen bei entsprechenden Geräteprofilen zusätzlich für einfache Ein- oder Ausgänge genutzt werden können.

Dadurch kann ein Sensorgerät beispielsweise gleichzeitig:

  • Messwerte erfassen
  • einen Schaltkontakt überwachen
  • einen zusätzlichen digitalen Ausgang bereitstellen

ohne dafür ein zweites ESP-Gerät zu benötigen.

Energiemessung für hDP-Geräte

Strom, Leistung und Energie direkt mit hDP erfassen

Die direkte Energiemessung ist als weiterer hDP-Funktionsbereich vorgesehen.

Damit sollen Geräte künftig nicht nur schalten, sondern auch elektrische Messwerte direkt an homeESS übermitteln können.

Je nach verwendeter Hardware können dazu beispielsweise gehören:

  • Spannung
  • Strom
  • aktuelle Leistung
  • Energieverbrauch
  • Zählerstände

Die Messwerte können anschließend genauso wie andere hDP-States im Energiemanagement und in Automationen verwendet werden.

Die konkrete Hardwareunterstützung wird schrittweise erweitert.

hDP-Geräte mit mehreren Funktionen aufbauen

Sensoren, Eingänge und Ausgänge kombinieren

Ein hDP-Gerät muss nicht zwangsläufig nur eine einzige physikalische Funktion besitzen.

Soweit Gerätetyp und Hardware dies unterstützen, können mehrere Funktionen auf einem ESP kombiniert werden.

Ein Gerät könnte beispielsweise:

  • Temperatur messen
  • einen Türkontakt überwachen
  • einen Relaisausgang schalten

oder

  • Helligkeit messen
  • einen Taster erfassen
  • einen Statusausgang bereitstellen.

Dadurch lässt sich vorhandene Hardware effizient nutzen.

Gerätefunktion später über das Profil anpassen

Da ein großer Teil der Konfiguration in homeESS liegt, kann ein vorhandenes Gerät innerhalb der unterstützten Möglichkeiten später anders eingesetzt werden.

Wird beispielsweise ein GPIO nicht mehr als Eingang benötigt, kann dessen Funktion im Geräteprofil angepasst werden, sofern Hardware und Gerätetyp dies erlauben.

Dadurch muss nicht für jede Änderung zwingend eine neue Firmware kompiliert werden.

Automatische Integration in den homeESS State-Katalog

Jeder hDP-Wert wird als State nutzbar

Die eigentliche Stärke der hDP-Gerätetypen liegt nicht nur in der Hardwareansteuerung.

Alle relevanten Ein- und Ausgangswerte werden in die zentrale State-Struktur von homeESS eingebunden.

Dadurch können hDP-Werte systemweit verwendet werden.

Ein Sensorwert kann beispielsweise:

  • eine Automation starten
  • mit einem Shelly-Wert verglichen werden
  • einen Modbus-Aktor steuern
  • in einem Dashboard angezeigt werden
  • einen Custom State beeinflussen

Schreibbare hDP-States als universelle Aktoren

Ausgänge eines hDP-Geräts werden als schreibbare States bereitgestellt.

Damit können andere Komponenten von homeESS direkt darauf zugreifen.

Eine Automation kann beispielsweise einen hDP-Relaisausgang schalten, obwohl der Trigger von einem vollkommen anderen Adapter stammt.

Damit bleibt hDP vollständig herstellerübergreifend in das übrige homeESS-System eingebunden.

hDP-Gerätetypen im Überblick

Basic I/O

Für allgemeine binäre Ein- und Ausgänge.

Geeignet für:

  • Taster
  • Schalter
  • Relais
  • Kontakte
  • digitale Signale
  • einfache Aktoren

ARGB Output

Für pixelgenau steuerbare adressierbare RGB-LEDs.

Geeignet für:

  • Statusanzeigen
  • Ladezustandsanzeigen
  • Energieanzeigen
  • Warnanzeigen
  • frei skalierbare LED-Anzeigen

Sensors

Für unterschiedliche Sensoren und Messwerte.

Geeignet für:

  • Temperatur
  • Luftfeuchtigkeit
  • Helligkeit
  • analoge Messgrößen
  • digitale Sensoren
  • technische Messwerte

Energy Metering

Für zukünftige direkte elektrische Messungen.

Vorgesehen für:

  • Spannung
  • Strom
  • Leistung
  • Energie
  • Verbrauchszähler

Unterstützte Hardwareplattformen

ESP8266

Die aktuelle hDP-Firmware basiert auf dem ESP8266.

Diese Plattform eignet sich durch:

  • günstige Verfügbarkeit
  • integriertes WLAN
  • kompakte Bauform
  • große Auswahl an Entwicklerboards
  • einfache Integration eigener Hardware

besonders für kostengünstige Smarthome-Eigenbaugeräte.

ESP32-Unterstützung in weiterer Entwicklung

Die Erweiterung auf ESP32-basierte Geräte ist für die weitere Entwicklung vorgesehen.

Damit können künftig zusätzliche Hardwarefunktionen, mehr GPIOs und leistungsfähigere Geräteklassen unterstützt werden.

Bis diese Unterstützung verfügbar ist, wird ESP8266 als aktuell unterstützte Plattform verwendet.

Neue Gerätetypen ohne neues Kommunikationssystem

hDP ist bewusst so aufgebaut, dass weitere Gerätetypen ergänzt werden können.

Neue Hardwarefunktionen benötigen dadurch nicht zwangsläufig ein neues Protokoll oder eine separate Integrationsarchitektur.

Die grundlegenden Bereiche bleiben gleich:

  • Geräteidentität
  • Pairing
  • Kommunikation
  • States
  • zentrale Konfiguration
  • OTA-Updates

Darauf können zusätzliche Gerätefunktionen aufbauen.

hDP Funktionen und Gerätetypen im Überblick

Aktuell beziehungsweise in der weiteren Entwicklung umfasst hDP unter anderem:

  • frei konfigurierbare GPIO-Belegung
  • digitale Eingänge
  • digitale Ausgänge
  • Taster und Schalter
  • Relais und Schaltaktoren
  • ARGB-Ausgabe
  • pixelgenaue LED-Steuerung
  • State-basierte Statusanzeigen
  • konfigurierbare Helligkeit
  • State-abhängige Dimmung
  • Temperaturmessung
  • Luftfeuchtigkeitsmessung
  • analoge Sensorwerte
  • NTC- und PTC-Auswertung
  • Helligkeitssensoren
  • digitale Sensoren
  • zusätzliche GPIO-Funktionen bei Sensorgeräten
  • geplante Energiemessung
  • zentrale State-Integration
  • Kombination mit Automationen
  • zentrale Gerätekonfiguration
  • OTA-Firmware-Updates
  • ESP8266 als aktuelle Hardwareplattform
  • geplante Erweiterung auf ESP32

hDP trennt damit die technische Hardware eines Geräts von seiner Integration in das Smarthome. Ein ESP stellt Ein- und Ausgänge sowie Sensorik bereit, während homeESS die Konfiguration, States und Verbindung mit den übrigen Geräten übernimmt.

Eigene hDP-Geräte bauen

Welche Bauteile benötigt werden und wie ein eigenes hDP-Gerät aufgebaut und mit homeESS gekoppelt wird, wird im Selbstbau-Bereich Schritt für Schritt beschrieben.

hDP-Gerät selbst bauen
Technische hDP-Dokumentation

<< zurück zur hDP Hauptseite

WordPress Appliance - Powered by TurnKey Linux