IAMMETER Wi-Fi-Energiezähler: Lokale APIs und offene Schnittstellen
IAMMETER Wi-Fi-Energiezähler: Lokale APIs und offene Schnittstellen
Die Wi-Fi-Energiezähler von IAMMETER unterstützen sowohl IAMMETER-Cloud als auch lokale und Drittanbieter-Integrationen.
Die verfügbaren Schnittstellen umfassen:
- Lokale HTTP-API über das LAN
- MQTT- und MQTTS-Veröffentlichung
- Modbus TCP
- TCP/TLS-Upload
- HTTP/HTTPS-Upload
- Eigenständiger lokaler Betrieb
Diese Schnittstellen ermöglichen es den IAMMETER-Zählern, als offene Datenquellen zu fungieren für:
- Home Assistant und andere Smart-Home-Plattformen
- Node-RED-Automatisierung
- Selbstgehostete Dashboards
- SPS- und SCADA-Systeme
- Kundenspezifische Energiemanagementsysteme (EMS)
- Kundenspezifische Gebäudemanagementsysteme (BMS)
- Drittanbieter-Datenserver
Dieses Handbuch beschreibt zuerst die aktuelle Firmware und WebUI. Screenshots und Konfigurationsmethoden für ältere Firmware befinden sich im abschließenden Abschnitt Legacy.
Für eine einsatzbereite Anwendung, die auf diesen Funktionen basiert, siehe Home Energy Monitoring, Solar Energy Monitoring oder lokale Überwachung ohne Internetzugang.
1) Aktualisierung auf die neueste Firmware
Die IAMMETER-Firmware wird kontinuierlich aktualisiert. Überprüfen Sie vor der Konfiguration einer Integration die aktuelle Version und die Modellkompatibilität:
Die neueste Firmware-WebUI zeigt die häufig verwendeten Konfigurationsoptionen direkt an. Manuelle Konfigurations-API-Aufrufe, die später in diesem Artikel beschrieben werden, sind hauptsächlich bei der Wartung älterer Installationen nützlich.
2) Auswahl des Betriebsmodus in der aktuellen WebUI
Wählen Sie einen Betriebsmodus basierend darauf, wohin der Zähler Daten senden oder wie er lokal arbeiten soll.
| Modus | Verhalten | Typische Verwendung |
|---|---|---|
| Cloud | Upload an IAMMETER-Cloud | Fertige Dashboards und Berichte |
| TCP | Upload an einen Drittanbieter-Endpunkt mit TCP, TLS oder der unterstützten TCP-Modus-Konfiguration | Kundenspezifische Servererfassung |
| HTTP | Daten an einen HTTP/HTTPS-Drittanbieter-Endpunkt senden | REST oder Web-Backend |
| MQTT | Direkte Veröffentlichung an einen MQTT- oder MQTTS-Broker | Hausautomation und sichere IoT-Kommunikation |
| Stand-Alone | Kein Upload; Beantwortung lokaler API- oder Modbus-TCP-Anfragen | Nur LAN oder selbstgehostete Überwachung |

Der Betriebsmodus steuert das Daten-Upload-Verhalten. Die Verfügbarkeit von lokaler API und Modbus TCP sollte dennoch für das Zählermodell, die Firmware und die gewählte Integration überprüft werden.
3) Warum die offenen Schnittstellen wichtig sind
Offene Schnittstellen ermöglichen es Benutzern, selbst zu entscheiden, wo Energiedaten verarbeitet und gespeichert werden.
Typische Gründe sind:
- Messwerte im lokalen Netzwerk behalten
- Telemetrie an einen vorhandenen Server senden
- Energiedaten mit Home Assistant oder Node-RED verbinden
- Kundenspezifische Dashboards und Alarme erstellen
- Energiedaten mit Tarifen, Solar- oder Laststeuerungslogik kombinieren
- Betrieb an einem Standort mit eingeschränktem oder unzuverlässigem Internetzugang
Cloud und lokaler Zugang schließen sich nicht unbedingt gegenseitig aus. Die geeignete Architektur hängt davon ab, ob das Projekt IAMMETER-Cloud-Berichte, eine lokale Plattform, einen Drittanbieter-Server oder eine Kombination benötigt.
4) Daten an einen Drittanbieter-Server senden
4.1 TCP und TLS
IAMMETER kann Zählerdaten an einen TCP- oder TLS-Endpunkt senden.
In der aktuellen WebUI:
- Wählen Sie den TCP-Betriebsmodus.
- Geben Sie die Zieladresse ein.
- Konfigurieren Sie das Upload-Intervall.
- Speichern Sie die Einstellungen und überprüfen Sie die Daten auf dem Empfangsserver.
Für einen TCP-Server verwenden Sie:
{domain-or-ip}:{port}
Beispiel:
abc.com:12345

Für einen TLS-Server verwenden Sie:
tls://{domain-or-ip}:{port}
Beispiel:
tls://abc.com:12345

Die aktuelle Firmware-Übersicht dokumentiert ein minimales Upload-Intervall von 2 Sekunden. Bestätigen Sie die aktuelle Firmware und die Kapazität des Empfangsservers, bevor Sie ein kurzes Intervall wählen.
4.2 MQTT und MQTTS
IAMMETER kann Telemetriedaten direkt an einen einfachen MQTT-Broker senden oder MQTTS für die verschlüsselte Übertragung auf unterstützter Firmware verwenden.
In der aktuellen WebUI:
- Wählen Sie den MQTT-Betriebsmodus.
- Geben Sie die Broker-IP-Adresse oder den Domainnamen und Port im entsprechenden MQTT- oder MQTTS-Format ein.
- Geben Sie bei erforderlicher Authentifizierung den Broker-Benutzernamen und das Passwort ein.
- Konfigurieren Sie das Upload-Intervall.
- Speichern Sie und überprüfen Sie, ob Nachrichten beim Broker ankommen.
Für einfaches MQTT geben Sie die Broker-Adresse und den Port ohne das Präfix mqtt:// ein:
192.168.11.163:1883

Für MQTTS fügen Sie das Präfix mqtts:// hinzu:
mqtts://{mqtt-broker-address}:{port}
Beispiel:
mqtts://broker.example.com:8883

Die MQTTS-Unterstützung, die im November-2025-Firmware-Update dokumentiert ist, hat derzeit folgende Einschränkungen:
- Unterstützt TLS 1.2 und niedriger.
- Das Hochladen eines benutzerdefinierten CA-Zertifikats wird nicht unterstützt.
- Hostname-Überprüfung wird nicht unterstützt.
- Clientseitige Zertifikate für die gegenseitige TLS-Authentifizierung werden nicht unterstützt.
Diese Einschränkungen sind wichtig bei der Auswahl eines Brokers und bei der Bewertung der Sicherheitsanforderungen der Bereitstellung.
Die aktuelle Firmware-Übersicht dokumentiert ein minimales Upload-Intervall von 2 Sekunden.
Home Assistant MQTT Discovery ist eine zusätzliche Home-Assistant-Erkennungsfunktion; sie ist nicht für jede MQTT-Integration erforderlich. Siehe:
Ändern des uploadInterval aus der Ferne über MQTT/MQTTS
Mit der im November-2025-Update beschriebenen Firmware abonniert ein im MQTT-Modus laufender Zähler automatisch:
device/{sn}/config
Veröffentlichen Sie das folgende JSON von einem anderen MQTT-Client, um das Upload-Intervall aus der Ferne zu ändern:
{"uploadInterval": 10}
Ersetzen Sie 10 durch das gewünschte Intervall in Sekunden und {sn} durch die Seriennummer des Zählers im Topic.

Diese entfernte MQTT-Konfiguration unterscheidet sich von der älteren lokalen /api/uploadinterval-Methode, die im Legacy-Abschnitt aufbewahrt wird.
4.3 HTTP und HTTPS
IAMMETER kann Daten an einen benutzerdefinierten HTTP/HTTPS-Server senden.
In der aktuellen WebUI:
- Wählen Sie den HTTP-Betriebsmodus.
- Geben Sie die Server-Adresse und den Port ein.
- Konfigurieren Sie das Upload-Intervall.
- Speichern Sie und überprüfen Sie die Anfragen auf dem Server.
Die aktuelle Firmware unterstützt sowohl den Standard-HTTPS-Port als auch einen benutzerdefinierten HTTPS-Port.
Verwenden Sie eines dieser Formate:
- Einfaches HTTP ohne expliziten Port:
{address}— standardmäßig Port 80. - Einfaches HTTP mit benutzerdefiniertem Port:
{address}:{port}. - HTTPS ohne expliziten Port:
https://{address}— standardmäßig Port 443. - HTTPS mit benutzerdefiniertem Port:
https://{address}:{port}— verwendet den angegebenen Port.
Das Präfix https:// wählt HTTPS aus. Port 443 ist nicht länger der einzige für HTTPS verfügbare Port.
Beispiele:
api.example.com
api.example.com:8080
https://api.example.com
https://api.example.com:8443


Siehe New Firmware Adds MQTTS, Remote Config, and Custom HTTPS Port für den Firmware-Versionshinweis.
Für die serverseitige Nutzlastverarbeitung siehe auch Integrate IAMMETER with a Third-party Server.
5) Lokales Auslesen von Daten über HTTP
Verbinden Sie den Zähler mit dem LAN und fordern Sie Daten von seiner lokalen IP-Adresse an. Diese Anfragen erfordern keine IAMMETER-Cloud.
Testen Sie die APIs interaktiv: Öffnen Sie den IAMMETER Local API Explorer, geben Sie die lokale IP-Adresse des Zählers ein und wählen Sie die WEM-API-Testseite. Der Swagger-ähnliche Explorer listet die verfügbaren lokalen APIs auf und ermöglicht es Ihnen, Testanfragen direkt aus dem Browser zu senden. Ihr Browser und der IAMMETER-Zähler müssen sich im selben LAN befinden.
5.1 GET /api/monitorjson
Gibt Echtzeit-Strommesswerte zurück.
Die Standarddaten enthalten Werte wie:
- Spannung (Voltage)
- Stromstärke (Current)
- Wirkleistung (Active power)
- Bezogene/Importierte kWh
- Gelieferte/Exportierte kWh
- Frequenz
- Leistungsfaktor
Beispielantwort:
{
"method": "uploadsn",
"mac": "B0F8933C4F94",
"version": "i.75.97.9",
"server": "em",
"SN": "3E0BAF87",
"Datas": [
[220.0, 9.99, 2198, 11.337, 11.201, 49.99, 1.00],
[222.5, 9.99, 1100, 11.039, 10.908, 49.99, 0.50],
[263.5, 9.99, 1213, 10.975, 10.846, 49.99, 0.55]
]
}
Die Anzahl der Messwert-Arrays hängt vom Zählermodell und der Anzahl der Kanäle ab.
Wenn die Blindleistungsmessung bei einem unterstützten Modell/Firmware aktiviert ist, kann das Antwortformat zusätzliche Felder enthalten. Siehe Reactive Power Measurement Data Format.
5.2 GET /api/monitor
Gibt eine erweiterte Echtzeit-Antwort zurück, die auch Wi-Fi-Informationen wie die folgenden enthält:
ssid— Name des verbundenen Zugangspunktssig— Wi-Fi-Signalstärke
Verwenden Sie diesen Endpunkt, wenn eine Integration sowohl elektrische Messwerte als auch den grundlegenden Wi-Fi-Status benötigt.
5.3 GET /api/wifidata
Gibt Informationen zur Firmware-, Geräte- und Netzwerkkonfiguration zurück.
Beispiel:
{
"version": "i.75.97.9",
"SN": "3E0BAF87",
"mac": "B0F8933C4F94",
"type": "PM",
"ssid": "example-wifi",
"ip": "192.168.11.62",
"netmask": "255.255.255.0",
"gw": "192.168.11.1",
"dns": "192.168.11.1",
"dhcp": 1,
"runMode": "tcp",
"uploadinterval": 60
}
Veröffentlichen Sie keine Antworten, die Geräteseriennummern, MAC-Adressen, interne Adressierung oder Wi-Fi-Informationen enthalten, es sei denn, die Werte wurden bereinigt.
6) JSON-Format über alle Upload-Modi hinweg
IAMMETER verwendet eine konsistente Kern-JSON-Messstruktur über HTTP, TCP, MQTT und die lokale API hinweg. Dies reduziert den Aufwand, wenn ein Empfangssystem mehrere Transportmethoden unterstützt.
Die Transportmethode und der Rahmen können dennoch beeinflussen, wie ein Empfänger eine Verbindung herstellt, sich authentifiziert oder eine Nachricht rahmt. Implementieren Sie das Empfangssystem gemäß dem dokumentierten Format für den gewählten Modus.
7) Modbus TCP
IAMMETER-Zähler unterstützen Modbus TCP für die direkte LAN-Integration mit kompatiblen Clients.
Typische Clients umfassen:
- Home Assistant
- SPSen
- SCADA-Systeme
- Industrie-Gateways
- Kundenspezifische Modbus-Anwendungen
Referenzen:
Bestätigen Sie das Zählermodell, die Firmware, die Registerdefinition, das Abfrageintervall und das Client-Verhalten vor der Bereitstellung.
8) Integrationsszenarien
| System | Typisches Protokoll | Beispielverwendung | Referenz |
|---|---|---|---|
| Home Assistant | HTTP, Modbus TCP oder MQTT | Lokales Dashboard und Automatisierung | Home Assistant Guide |
| Node-RED | HTTP, Modbus TCP oder MQTT | Automatisierungsabläufe | Node-RED Guide |
| openHAB / ioBroker | HTTP oder unterstützter Adapter | Lokales Dashboard | ioBroker Integration |
| Zabbix | HTTP | Überwachungs-Dashboard | Zabbix Example |
| ThingsBoard | HTTP oder MQTT | IoT-Visualisierung | ThingsBoard Example |
| Kundenspezifischer Server | HTTP, MQTT, TCP oder TLS | Lokale oder Unternehmenserfassung | Build Your Own System |
9) Zusammenfassung der aktuellen Schnittstellen und Ressourcen
| Anforderung | Aktuelle Schnittstelle |
|---|---|
| Echtzeit-Messwerte über LAN auslesen | /api/monitorjson oder /api/monitor |
| Netzwerk-/Geräteinformationen auslesen | /api/wifidata |
| An einen Broker senden | MQTT oder MQTTS, konfiguriert in der aktuellen WebUI |
| An einen benutzerdefinierten TCP/TLS-Server senden | TCP/TLS, konfiguriert in der aktuellen WebUI |
| An einen benutzerdefinierten Web-Endpunkt senden | HTTP/HTTPS, konfiguriert in der aktuellen WebUI |
| Von einem standardmäßigen industriellen Client abfragen | Modbus TCP |
| Betrieb ohne kontinuierlichen Daten-Upload | Stand-Alone-Modus |
Zusätzliche Ressourcen:
- Latest Firmware
- MQTTS and Custom HTTPS Port Firmware Note
- Video Tutorials
- JSON Data Definition
- Modbus TCP Overview
- Develop Your Own System
- Monitor without Internet Access
Die lokalen APIs und offenen Protokolle von IAMMETER machen es möglich, mit der Echtzeit-Überwachung zu beginnen und später ein benutzerdefiniertes EMS, ein selbstgehostetes Dashboard oder einen Automatisierungs-Workflow hinzuzufügen.
10) Legacy-Firmware-Seiten und Konfigurationsmethoden
Das folgende Material wird nur für Zähler aufbewahrt, die noch ältere Firmware ausführen, oder für Benutzer, die eine bestehende Integration warten. Für eine Neuinstallation aktualisieren Sie auf die neueste Firmware und verwenden Sie die aktuelle WebUI, wo immer die gewünschte Option verfügbar ist.
10.1 Legacy-Betriebsmodus-Seite
Ältere Firmware verwendete die folgende Seite zur Auswahl des Betriebsmodus:

Das Layout und die Optionsnamen können von der aktuellen WebUI abweichen, die weiter vorne in diesem Handbuch gezeigt wird.
10.2 Legacy-TCP/TLS-Seite
Integrationen mit älterer Firmware verweisen möglicherweise auf diese TCP/TLS-Konfigurationsseite und das zugehörige Handbuch:

10.3 Legacy-MQTT-Seite
Die ältere MQTT-Dokumentation verwendete diese Konfigurationsoberfläche:

Für den aktuellen Workflow verwenden Sie die weiter vorne in diesem Artikel beschriebenen aktuellen WebUI-Anweisungen und das aktualisierte MQTT Integration Guide.
10.4 Legacy-HTTP/HTTPS-Seite
Ältere Firmware verwendete die folgende HTTP/HTTPS-Zielseite:

Das Legacy-Integrationshandbuch ist unter Upload via HTTP/HTTPS erhalten.
In diesem älteren Workflow war HTTPS mit dem Standard-Port 443 verbunden und erforderte nicht das Präfix https://. Die aktuelle Firmware verwendet stattdessen das Präfix https://, um HTTPS auszuwählen, und unterstützt entweder den Standard-Port 443 oder einen explizit angegebenen benutzerdefinierten Port.
10.5 Legacy-Konfigurations-APIs
Die folgenden lokalen API-Aufrufe erschienen in früheren Konfigurations-Workflows. In der aktuellen Firmware sollten die entsprechenden Einstellungen normalerweise über die WebUI konfiguriert werden, wenn die Option verfügbar ist.
/api/uploadinterval?x=<seconds>
Legacy-Methode zum Einstellen des Nicht-Cloud-Upload-Intervalls.
/api/mqtt
Legacy-Methode zum Konfigurieren von MQTT-Anmeldeinformationen.
/api/netmetring
Legacy-Methode zum Aktivieren oder Deaktivieren des Net Energy Metering-Modus.
/api/ctcratio
Legacy-Methode zum Anwenden des dokumentierten Phase-C-Multiplikators in bestimmten Split-Phase- oder symmetrischen Szenarien.
/api/reactive
Legacy-Methode zum Aktivieren oder Deaktivieren der Blindleistungs- und Blindenergiemessung auf unterstützter Firmware/unterstützten Modellen.
/api/ratio — nur WEM3046T
Der WEM3046T verwendet externe Stromwandler mit 5-A-Sekundärausgängen. Ältere Konfigurationsanleitungen stellen das CT-Verhältnis ein mit:
/api/ratio?x={ct_ratio}
Beispiel:
/api/ratio?x=400
Dieser Endpunkt ist spezifisch für den WEM3046T und für andere IAMMETER-Modelle ungültig. Verwenden Sie für die aktuelle Firmware die aktuelle WebUI-Konfiguration des Modells, sofern verfügbar.
Legacy-Material für die Rückwärtsreferenz aufbewahrt; aktuelle Installationen sollten der neuesten Firmware-WebUI folgen.