🌡️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 Fensterkontakt
MASTER

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
ParameterTYPEOPERATIONSMIN…MAX / VALUE_LISTWert
ACTUAL_TEMPERATUREFLOAT5 = Lesen + Ereignis-20 … 60 °C20.5 °C
SET_POINT_TEMPERATUREFLOAT7 = Lesen + Schreiben + Ereignis4.5 … 30.5 °C21 °C
LEVELFLOAT5 = Lesen + Ereignis0 … 1 100%12 % (0.12)
SET_POINT_MODEENUM5 = Lesen + Ereignis0=AUTOMATIC 1=MANUAL 2=PARTY0 (AUTOMATIC)
WINDOW_STATEENUM7 = Lesen + Schreiben + Ereignis0=CLOSED 1=OPEN0 (CLOSED)
BOOST_MODEBOOL7 = 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

InterfaceWofürPortBeispieladresse
BidCos-RFklassische HomeMatic-Funkgeräte2001XYZ0000001:1
HmIP-RFHomematic IP (Funk und Wired)2010000A1BE9A00001:1
VirtualDevicesvirtuelle Geräte der CCU, z. B. Heizungsgruppen9292 (/groups)INT0000001:1
BidCos-WiredHomeMatic Wired (RS-485)2000—