🌡️Geräte-Datenmodell
Für die Zentrale besteht jedes Gerät aus Kanälen. Jeder Kanal ist ein „logisches Gerät“ mit eigener Adresse und bis zu drei Arten von Parametersätzen. Was in ioBroker, Home Assistant oder einem Skript als Datenpunkt auftaucht, stammt fast immer aus dem Parametersatz VALUES.
🌳Gerät → Kanal → Parametersatz → Parameter
000A1BE9A00001 Gerät HmIP-eTRV-2 PARAMSETS: MASTER
├── 000A1BE9A00001:0 Kanal 0 MAINTENANCE VALUES: UNREACH, LOW_BAT, CONFIG_PENDING, RSSI_DEVICE …
└── 000A1BE9A00001:1 Kanal 1 HEATING_CLIMATECONTROL_TRANSCEIVER
├── MASTER Einstellungen: TEMPERATURE_OFFSET, Wochenprofil P1_ENDTIME_MONDAY_1 …
├── VALUES Werte: ACTUAL_TEMPERATURE, SET_POINT_TEMPERATURE, LEVEL, WINDOW_STATE …
└── LINK (je Partner) Verhalten gegenüber einem verknüpften Gerät, z. B. dem FensterkontaktMASTER
Konfiguration des Geräts bzw. Kanals (z. B. Temperatur-Offset, Wochenprofil). Wird per Funk ins Gerät übertragen → bis dahin CONFIG_PENDING.
VALUES
Dynamische Werte: Schaltzustand, Temperatur, Tastendruck-Ereignisse. Lesen mit getValue, schreiben mit setValue, Änderungen kommen als event.
LINK
Pro Verknüpfungspartner ein Satz: beschreibt die Direktverknüpfung zu einem anderen Gerät. Schlüssel ist die Partneradresse.
🔎Geräte-Explorer
Wähle ein Gerät, einen Kanal und einen Parameter. Beschreibbare Werte kannst du setzen – der simulierte Schnittstellenprozess prüft Typ und Wertebereich und erzeugt Ereignisse und Fehlercodes wie in der eQ-3-Spezifikation.
Gerät (erfundenes Beispielhaus)
Kanäle von HmIP-eTRV-2
000A1BE9A00001
Gerät · HmIP-RF · FW 2.2.6
Stellt das Heizkörperventil; misst die Raumtemperatur und regelt auf den Sollwert.
000A1BE9A00001:1
Parametersätze dieses Kanals
| Parameter | TYPE | OPERATIONS | MIN…MAX / VALUE_LIST | Wert |
|---|---|---|---|---|
| ACTUAL_TEMPERATURE | FLOAT | 5 = Lesen + Ereignis | -20 … 60 °C | 20.5 °C |
| SET_POINT_TEMPERATURE | FLOAT | 7 = Lesen + Schreiben + Ereignis | 4.5 … 30.5 °C | 21 °C |
| LEVEL | FLOAT | 5 = Lesen + Ereignis | 0 … 1 100% | 12 % (0.12) |
| SET_POINT_MODE | ENUM | 5 = Lesen + Ereignis | 0=AUTOMATIC 1=MANUAL 2=PARTY | 0 (AUTOMATIC) |
| WINDOW_STATE | ENUM | 7 = Lesen + Schreiben + Ereignis | 0=CLOSED 1=OPEN | 0 (CLOSED) |
| BOOST_MODE | BOOL | 7 = Lesen + Schreiben + Ereignis | — | false |
SET_POINT_TEMPERATURE
Solltemperatur (4,5 = AUS, 30,5 = EIN)
ReGa-Datenpunkt: HmIP-RF.000A1BE9A00001:1.SET_POINT_TEMPERATURE
FLAGS: sichtbarDEFAULT 21
<?xml version="1.0"?>
<methodCall>
<methodName>getValue</methodName>
<params>
<param>
<value>000A1BE9A00001:1</value>
</param>
<param>
<value>SET_POINT_TEMPERATURE</value>
</param>
</params>
</methodCall>⚠️ Vereinfachte Beispielgeräte
Gerätetypen und Parameternamen sind echten Homematic-IP-Geräten nachempfunden, Seriennummern und das Haus sind erfunden. Kanalanzahl, Wertebereiche und Parameter sind gekürzt – die verbindliche Beschreibung liefert
getParamsetDescription() der eigenen Zentrale.🏷️Adressen und Datenpunkt-IDs zerlegen
Die Schnittstellenprozesse kennen Adressen wie 000A1BE9A00001:1. Die Logikschicht ReGaHss stellt das Interface davor und den Parameter dahinter.
Interface
HmIP-RF
Schnittstellenprozess
Seriennummer
000A1BE9A00001
Homematic IP (14 Hex-Zeichen)
Kanal
:1
Funktionskanal
Parameter
SET_POINT_TEMPERATURE
aus dem Parametersatz VALUES
🔌Interfaces
| Interface | Wofür | Port | Beispieladresse |
|---|---|---|---|
| BidCos-RF | klassische HomeMatic-Funkgeräte | 2001 | XYZ0000001:1 |
| HmIP-RF | Homematic IP (Funk und Wired) | 2010 | 000A1BE9A00001:1 |
| VirtualDevices | virtuelle Geräte der CCU, z. B. Heizungsgruppen | 9292 (/groups) | INT0000001:1 |
| BidCos-Wired | HomeMatic Wired (RS-485) | 2000 | — |