Zum Inhalt

Loxone Miniserver

Der WattWächter Plus lässt sich über seinen Modbus-TCP-Server in Loxone einbinden. Loxone Config hat keine SunSpec-Auto-Discovery — anders als z.B. Home Assistant oder evcc liest der Miniserver den SunSpec-Header nicht selbsttätig ein.

Damit du die Register trotzdem nicht von Hand abtippen musst, gibt es zwei fertige Loxone-Vorlagen. Sie legen alle Modbus-Sensoren an, setzen Datentyp, Abfragezyklus und Skalierung und liefern direkt Werte in kW, kWh, A, V und Hz. Die manuelle Variante ist weiterhin unter Register manuell anlegen beschrieben.

Anleitung als PDF

Zum Ausdrucken, Weitergeben und für die Loxone Library gibt es diese Anleitung auch als PDF: Deutsch · English


Voraussetzungen

  • WattWächter Plus mit Firmware 1.2.0 oder neuer
  • Modbus TCP am WattWächter aktiviert — Weboberfläche → EinstellungenModbus TCPModbus-TCP-Server aktivierenSpeichern. Weitere Wege unter Modbus TCP → Aktivieren
  • Loxone Miniserver (Gen 1 mit Modbus Extension oder Gen 2) im selben Netzwerk
  • Loxone Config 17.1.6.30 oder neuer — die Vorlagen deklarieren diese Mindestversion
  • Eine feste IP-Adresse für den WattWächter (siehe Warnung unten)

Loxone braucht die IP-Adresse — nicht den .local-Namen

Der Miniserver löst keine mDNS-/.local-Namen auf. Trage im Modbus-Server-Objekt die IP-Adresse des WattWächters ein, nicht wattwaechter-XXXXXXXXXXXX.local.

Vergib dafür im Router eine DHCP-Reservierung oder stelle am WattWächter eine feste IP ein. Ohne das bricht die Verbindung beim nächsten Lease-Wechsel — und Loxone zeigt dann still den zuletzt gelesenen Wert weiter, statt einen Fehler zu melden. Wie du die aktuelle IP findest, steht in den FAQs.


Vorlagen herunterladen

Vorlage Sensoren Inhalt Für wen?
WattWächter Plus 3 Wirkleistung, Bezug, Einspeisung Standardfall — diese drei Werte liefert jeder unterstützte Zähler
WattWächter Plus – All Values 15 zusätzlich Leistung/Strom/Spannung je Phase, Summenstrom, Spannungsmittelwert, Netzfrequenz Zähler, die auch Phasenwerte senden

Download — lade die Datei herunter, die zu deinem Zähler passt:

WattWächter Plus (3 Werte) All Values (15 Werte)

Im Zweifel die kleine Vorlage

Welche Register dein Zähler tatsächlich befüllt, hängt vom Zählermodell ab. W (Wirkleistung), TotWhImp (Bezug) und TotWhExp (Einspeisung) sind immer gültig — alles andere nur, wenn dein Zähler die passenden OBIS-Codes sendet. Nimmst du „All Values", zeigen die nicht gelieferten Sensoren feste Fehlwerte an; wie du die erkennst und entfernst, steht unter Nicht gelieferte Werte entfernen.


Schritt 1 — Modbus-Server anlegen

Wähle im Projektbaum unter MiniServer den Eintrag Network Periphery (1). Öffne im Menüband den Reiter Network Periphery (2), klicke auf Network (3) und wähle Modbus Server (4).

Loxone Config: Modbus Server über Network Periphery hinzufügen


Schritt 2 — Modbus-Server konfigurieren

Markiere den neu angelegten Modbus-Server im Projektbaum (1). Rechts öffnen sich die Properties. Trage dort einen Name ein (2) — z.B. WattWächter Plus Modbus — und als Address die IP-Adresse des WattWächters mit Port, getrennt durch Doppelpunkt (3):

Loxone Config: Eigenschaften des Modbus-Servers

Feld Wert
Name frei wählbar, z.B. WattWächter Plus Modbus
Address <IP-Adresse>:502 — z.B. 192.168.178.106:502
Delay after start [s] 0
Timeout [ms] 2000
Fragmented Packets aus
Monitor Online Status optional — meldet Verbindungsabbrüche

Loxone Config: Modbus-Server-Eigenschaften im Detail

Port gehört in dasselbe Feld

Loxone hat kein eigenes Port-Feld: Port 502 wird an die IP-Adresse angehängt. Hast du am WattWächter einen abweichenden Port eingestellt, trage den hier ein.

Solange noch kein Gerät unter dem Server hängt, zeigt Loxone „Device not fully configured" an. Das verschwindet mit dem nächsten Schritt.


Schritt 3 — Vorlage importieren

Markiere den Modbus-Server (1), öffne im Menüband Device Templates (2) und klicke auf Import Template… (3). Wähle dort die XML-Datei aus, die du oben heruntergeladen hast.

Loxone Config: Vorlage über Import Template einlesen


Schritt 4 — Vorlage auswählen

Nach dem Import steht die Vorlage unter Device Templates im Abschnitt My templates. Klicke sie an — Loxone legt daraufhin das Modbus-Gerät samt aller Sensoren unter dem Modbus-Server an.

Loxone Config: importierte Vorlage unter My templates auswählen

Wo liegen die Vorlagen auf der Platte?

Show Templates in Explorer… öffnet den Ordner, in dem Loxone Config seine Modbus-Vorlagen ablegt. Du kannst die XML-Dateien auch direkt dorthin kopieren; sie müssen mit MB_ beginnen und werden nach einem Neustart von Loxone Config erkannt.


Schritt 5 — Angelegte Sensoren prüfen

Im Projektbaum hängen unter dem Modbus-Server jetzt das Gerät und darunter der Zweig Sensors mit den Analogeingängen. Bei der kleinen Vorlage sind das drei:

Loxone Config: angelegte Modbus-Sensoren im Projektbaum


Schritt 6 — Sensoren auf eine Seite ziehen

Zieh die Sensoren aus dem Projektbaum auf eine Programmierseite, damit du sie verdrahten und im LIVE-Modus beobachten kannst.

Loxone Config: Sensoren auf der Programmierseite


Schritt 7 — Mit dem Miniserver verbinden und speichern

Klicke auf Connect to Miniserver (1), wähle deinen Miniserver aus und bestätige mit Connect (2).

Loxone Config: Verbindung zum Miniserver herstellen

Anschließend überträgst du das Programm mit Save program in Miniserver:

Loxone Config: Programm im Miniserver speichern


Schritt 8 — Werte im LIVE-Modus prüfen

Starte den LIVE-Modus:

Loxone Config: LIVE-Modus starten

Die Sensoren zeigen jetzt links den Rohwert aus dem Register und rechts den umgerechneten Wert mit Einheit:

Loxone Config: Live-Werte vom WattWächter Plus

Im Beispiel steht 217,000 → 2,17 kW: Register 40088 liefert den Rohwert 217, die Korrektur der Vorlage macht daraus 2,17 kW.


Nicht gelieferte Werte entfernen

Die Vorlage „All Values" legt alle 15 Register an — unabhängig davon, ob dein Zähler sie befüllt. Register ohne Daten liefern den SunSpec-Sentinel 0x8000 (not implemented), also den Rohwert -32768. Nach der Skalierung sieht das im LIVE-Modus so aus:

Loxone Config: All-Values-Vorlage mit Sentinel-Werten

Anzeige Bedeutung
-327,68 kW Leistungsregister wird vom Zähler nicht geliefert
-327,68 A Stromregister wird nicht geliefert
-3276,8 V Spannungsregister wird nicht geliefert
-327,68 Hz Netzfrequenz wird nicht geliefert

Einfach löschen statt filtern

Für diese Sensoren brauchst du keinen Status-Baustein zum Ausfiltern — lösch sie im Projektbaum. Was dein Zähler nicht sendet, sendet er auch nach einem Neustart nicht. Nur wenn du einen Wert bewusst behalten willst (z.B. weil der Zähler ihn zeitweise liefert), filtere Werte ≤ −32000 per Status-Baustein heraus.

Welche Register dein Gerät gerade mit gültigen Werten befüllt, zeigt der Status-Endpunkt — ohne Loxone-Umweg.


Was die Vorlagen enthalten

Alle Sensoren lesen mit Function Code 0x03 (Read Holding Registers). Die Spalte Korrektur ist der Faktor, den die Vorlage im Sensor hinterlegt — er enthält bereits den SunSpec-Skalierungsfaktor und die Umrechnung auf die Zieleinheit.

Sensor Register Typ Zyklus Korrektur Einheit Vorlage
Active Power 40088 int16 5 s ×0,01 kW beide
Energy Import 40116 acc32 30 s ×0,001 kWh beide
Energy Export 40108 acc32 30 s ×0,001 kWh beide
Active Power L1 40089 int16 5 s ×0,01 kW All Values
Active Power L2 40090 int16 5 s ×0,01 kW All Values
Active Power L3 40091 int16 5 s ×0,01 kW All Values
Current L1 40073 int16 10 s ×0,01 A All Values
Current L2 40074 int16 10 s ×0,01 A All Values
Current L3 40075 int16 10 s ×0,01 A All Values
Current Total 40072 int16 10 s ×0,01 A All Values
Voltage L1 40078 int16 10 s ×0,1 V All Values
Voltage L2 40079 int16 10 s ×0,1 V All Values
Voltage L3 40080 int16 10 s ×0,1 V All Values
Voltage Average 40077 int16 10 s ×0,1 V All Values
Grid Frequency 40086 int16 10 s ×0,01 Hz All Values

Die vollständige Register-Map (alle SunSpec-Felder, Datentypen, OBIS-Codes) steht in der Modbus-TCP-Referenz.

Skalierung ist in der Vorlage fest verdrahtet

Loxone kann die SunSpec-SF-Register nicht zur Laufzeit auswerten. Die Vorlagen tragen den Faktor deshalb fest in die Sensor-Korrektur ein — passend zu den aktuellen Skalierungsfaktoren (W_SF = 1, A_SF = -2, V_SF = -1, Hz_SF = -2, TotWh_SF = 0).

W_SF hat sich mit Firmware 1.2.0 von 0 auf 1 geändert: die Leistungsregister zählen seitdem Zehnerschritte Watt statt einzelner Watt, damit auch Anschlüsse über 32,7 kW abgedeckt sind. Ältere Firmware liefert deshalb Werte, die um den Faktor 10 danebenliegen — dafür sind die Vorlagen nicht gedacht. Prüfe nach einem Firmware-Update die SF-Register (40092, 40076, 40085, 40087, 40124) und lade bei Bedarf die aktuelle Vorlage neu.


Bezug und Einspeisung trennen

Die Gesamtleistung W (40088) ist vorzeichenbehaftet: positiv bei Bezug, negativ bei Einspeisung. Für den Loxone-Energiemonitor zerlegst du den Wert per Status-Baustein in zwei Größen:

  • Bezug = MAX(W, 0)
  • Einspeisung = MAX(-W, 0)

Die Energie-Zählerstände TotWhImp (Bezug) und TotWhExp (Einspeisung) liegen ohnehin in getrennten Registern — die kannst du direkt verdrahten.


Register manuell anlegen

Brauchst du ein Register, das in keiner Vorlage steckt, oder willst du ohne Vorlage arbeiten: Lege unter dem Modbus-Server über Add Modbus device ein Gerät an und darunter je Wert einen analogen Sensor (Add analogue sensor).

Wert Adresse Anzahl Datentyp Skalierung (SF-Register)
Gesamtwirkleistung 40088 1 int16 (signed!) 40092 (W_SF)
Wirkleistung L1 / L2 / L3 40089 / 40090 / 40091 1 int16 40092 (W_SF)
Strom L1 / L2 / L3 40073 / 40074 / 40075 1 int16 40076 (A_SF)
Spannung L1 / L2 / L3 40078 / 40079 / 40080 1 int16 40085 (V_SF)
Frequenz 40086 1 int16 40087 (Hz_SF)
Bezug gesamt 40116 2 uint32 (acc32) 40124 (TotWh_SF)
Einspeisung gesamt 40108 2 uint32 (acc32) 40124 (TotWh_SF)

Pro Sensor einzustellen:

  • Function Code 0x03 (Read Holding Registers)
  • Datentyp wie in der Tabelle — die 16-Bit-Werte sind signed
  • Korrektur: Wert = Rohwert × 10^SF, ggf. mal der Umrechnung auf die Zieleinheit. Lies den aktuellen Faktor aus dem jeweiligen SF-Register aus, statt ihn zu raten.
  • Sentinel-Filter oder Sensor löschen — siehe Nicht gelieferte Werte entfernen

Fehlerbehebung

Alle Sensoren bleiben auf 0 / keine Verbindung
  • Ist Modbus am WattWächter aktiviert? Prüfe /api/v1/modbus/statusenabled: true, running: true.
  • Steht im Feld Address eine IP-Adresse mit Port (192.168.178.106:502) und kein .local-Name?
  • Hast du das Programm nach der Änderung in den Miniserver gespeichert?
  • Der WattWächter erlaubt maximal 2 gleichzeitige Modbus-Verbindungen. Läuft parallel noch ein Test mit modpoll oder Home Assistant, trenn den zuerst.
Werte waren da und stehen jetzt still

Typisches Zeichen für einen IP-Wechsel per DHCP: Loxone hält den letzten Wert, statt einen Fehler zu zeigen. Prüf die aktuelle IP des WattWächters und richte eine DHCP-Reservierung ein.

Ein Sensor zeigt −327,68 / −3276,8

Das ist der SunSpec-Sentinel 0x8000 — dein Zähler liefert diesen OBIS-Code nicht. Siehe Nicht gelieferte Werte entfernen.

Bei den Leistungsregistern gibt es eine zweite Ursache: Werte außerhalb von ±327,67 kW passen nicht in ein int16 und werden ebenfalls als Sentinel gemeldet, statt auf das Maximum geklemmt zu werden. Betrifft nur Anschlüsse jenseits von 327 kW.

Werte sind um Faktor 10 daneben

Dann passt die Korrektur im Sensor nicht mehr zum Skalierungsfaktor des Geräts — meist nach einem Firmware-Update. Lies die SF-Register aus (40092 für Leistung) und korrigier den Faktor bzw. importiere die aktuelle Vorlage neu.

Weitere Punkte in der Modbus-TCP-Fehlerbehebung.