MQTT- und HTTP-API

Einführung

Die Varianten WARP Charger Smart und WARP Charger Pro können über MQTT und HTTP den aktuellen Zustand melden und gesteuert werden. Während die MQTT-API zunächst aktiviert und konfiguriert werden muss, kann die HTTP-API sofort verwendet werden, da sie auch vom Webinterface selbst benutzt wird.

MQTT

Konfiguration

Damit die Wallbox über MQTT kommuniziert, muss zunächst im Webinterface die Verbindung zum MQTT-Broker konfiguriert werden. Folgende Einstellungen können vorgenommen werden:

  • Broker-Hostname oder IP-Adresse: Der Hostname oder die IP-Adresse des Brokers zu dem sich die Wallbox verbinden soll.
  • Broker-Port: Der Port unter dem der Broker erreichbar ist. Der typische MQTT-Port 1883 ist voreingestellt.
  • Broker-Benutzername und Passwort: Manche Broker unterstützen eine Authentifizierung mit Benutzername und Passwort.
  • Topic-Präfix: Dieser Präfix wird allen Topics vorangestellt, die die Wallbox verwendet. Voreingestellt ist warp/ABC wobei ABC eine eindeutige Kennung pro Wallbox ist, es sind aber andere Präfixe wie z.B. garage_links möglich. Falls mehrere Wallboxen mit dem selben Broker kommunizieren müssen eindeutige Präfixe pro Box gewählt werden.
  • Client-ID: Mit dieser ID registriert sich die Wallbox beim Broker.

Nachdem die Konfiguration gesetzt und der "MQTT aktivieren"-Schalter gesetzt ist, kann die Konfiguration gespeichert werden. Der ESP startet dann neu und verbindet sich zum Broker. Auf der Status-Seite wird angezeigt, ob die Verbindung aufgebaut werden konnte.

MQTT-Konfiguration

Im Folgenden werden die mosquitto_pub und mosquitto_sub-Befehle des Mosquitto-MQTT-Brokers verwendet, um mit dem Broker zu kommunizieren.

Grundlagen

Wenn die Verbindung zum Broker erfolgreich aufgebaut wurde, sollten jetzt bereits erste Nachrichten der Wallbox eintreffen. Sämtliche Nachrichten der Wallbox sind Strings im JSON-Format. Genauso müssen alle Nachrichten, die zur Wallbox geschickt werden, das JSON-Format einhalten.

Mit mosquitto_sub -v -t "warp/ABC/#" können alle Nachrichten der Wallbox angezeigt werden. (Den Präfix warp/ABC gegebenenfalls durch den konfigurierten ersetzen) Es könnte z.B. die folgende Nachricht empfangen werden: warp/ABC/evse/state { "iec61851_state":1, "charger_state":2, "contactor_state":1, "contactor_error":0, "allowed_charging_current":32000, "error_state":0, "lock_state":0, "dc_fault_current_state":0 } Die Nachrichten des Topics evse/state geben einen Überblick über den Zustand des Ladecontrollers. Beispielsweise liegt der erlaubte Ladestrom gerade bei 32000, also 32 Ampere.

Durch Senden der Nachricht {"current":8000} an das Topic warp/ABC/evse/global_current_update kann der Ladestrom auf 8 Ampere begrenzt werden, zum Beispiel so: mosquitto_pub -t "warp/ABC/evse/global_current_update" -m "{\"current\": 8000}' (Damit die Beispiele auch mit cmd.exe von Windows kompatibel sind, werden nur doppelte Anführungszeichen verwendet. Anführungszeichen in JSON-Nachrichten müssen deshalb mit \ escapt werden.) Der Ladestrom ist jetzt auf 8 Ampere begrenzt, was die Wallbox durch eine neue Nachricht anzeigt: warp/ABC/evse/state {"iec61851_state":1, "charger_state":2, "contactor_state":1, "contactor_error":0, "allowed_charging_current":8000, "error_state":0, "lock_state":0, "dc_fault_current_state":0}

HTTP

Konfiguration

Die HTTP-API kann ohne vorherige Konfiguration verwendet werden.

Grundlagen

Die HTTP-API funktioniert strukturell identisch wie die MQTT-API: Wenn die MQTT-API beispielsweise das Topic warp/ABC/evse/state verwendet, kann die selbe API über die URL http://[IP-Adresse oder Hostname der Wallbox]/evse/state erreicht werden. Die HTTP-API verfügt allerdings über fortgeschrittene Funktionen, die nicht über MQTT verfügbar sind. Es können zusätzlich die WebSockets unter ws://[IP-Adresse oder Hostname der Wallbox]/ws verwendet werden. Über eine WebSocket-Verbindung überträgt die Wallbox (analog zu MQTT) automatisch aktualisierte Werte.

Um Analog zum MQTT-Beispiel alle von der Wallbox gesendeten Nachrichten zu empfangen, kann eine WebSocket-Verbindung benutzt werden. Hierzu und für die weiteren Beispiele werden websocat und cURL verwendet und davon ausgegangen, dass die Wallbox unter der IP-Adresse 10.0.0.1 erreichbar ist.

Mit websocat ws://10.0.0.1/ws könnte unter anderem folgende Nachricht empfangen werden:

{
    "topic":"evse/state",
    "payload":{
        "iec61851_state":1,
        "charger_state":2,
        "contactor_state":1,
        "contactor_error":0,
        "allowed_charging_current":32000,
        "error_state":0,
        "lock_state":0,
        "dc_fault_current_state":0
    }
}
Diese Nachricht ist äquivalent zu der aus den MQTT-Grundlagen, allerdings ist das MQTT-Topic hier Teil der JSON-Struktur, da kein vergleichbares Konzept für WebSockets existiert.

Wenn nur eine Information abgefragt werden soll, kann mit cURL eine einzelne URL aufgerufen werden: curl -s http://10.0.0.1/evse/state liefert äquivalente JSON-Daten: { "iec61851_state":1, "charger_state":2, "contactor_state":1, "contactor_error":0, "allowed_charging_current":32000, "error_state":0, "lock_state":0, "dc_fault_current_state":0 } Mit jq können einzelne Werte aus einem JSON-Objekt extrahiert werden. curl -s http://10.0.0.1/evse/state | jq ".allowed_charging_current" gibt 32000, also den erlaubten Ladestrom von 32 Ampere zurück.

Jetzt soll der Ladestrom auf 8 Ampere begrenzt werden. Dafür wird die Nachricht {"current":8000} an die URL http://10.0.0.1/evse/global_current_update geschickt: curl -H "Content-Type: application/json" -X PUT -d "{\"current\":8000}" 10.0.0.1/evse/global_current_update Wichtig ist hierbei, den Content-Type-Header auf application/json zu setzen, da die Anfrage sonst ignoriert wird. Für alle Anfragen, die Nachrichten an die Wallbox schicken muss HTTP PUT benutzt werden. POST, PATCH usw. werden derzeit nicht akzeptiert.

Zur Kontrolle: curl -s http://10.0.0.1/evse/state | jq ".allowed_charging_current" sollte jetzt 8000, also 8 Ampere zurückgeben.

Authentifizierung

Die HTTP-API und das Webinterface können durch einen Benutzernamen und ein Passwort geschützt werden. Die Authentifizierung kann im System-Abschnitt des Webinterfaces unter Zugangsdaten aktiviert werden. Alle Requests müssen dann mit der Digest access authentication authentisiert werden. Nicht authentifizierte Requests werden von der Wallbox mit dem HTTP-Code 401 beantwortet. Eine Ausnahme bildet die Hauptseite des Webinterfaces, die den meisten Browsern auf einen nicht authentifizierten Request mit der Login-Seite antwortet.

Zustände, Kommandos und Konfigurationen

Die Wallbox bietet über MQTT und HTTP drei Arten von Schnittstellen: Zustände, Kommandos und Konfigurationen.

Zustände

Zustände sind Statusinformationen, die die Wallbox kontinuierlich an aktive WebSocket-Verbindungen und den MQTT-Broker schickt. Zustände können nicht direkt geändert werden, es ist aber möglich, dass Kommandos und Konfigurationen auf indirekte Weise Zustände beeinflussen. So kann durch Verwenden des evse/global_current_update-Kommandos der konfigurierte Ladestrom soweit gesenkt werden, dass er den erlaubten Ladestrom des evse/state-Zustands verändert. Zustände können vom Broker durch Subscriptions abgefragt werden: mosquitto_sub -v -t "warp/ABC/evse/state" liefert beispielsweise warp/ABC/evse/state { "iec61851_state":1, "charger_state":2, "contactor_state":1, "contactor_error":0, "allowed_charging_current":32000, "error_state":0, "lock_state":0, "dc_fault_current_state":0 } Für die HTTP-API funktioniert ein GET auf die entsprechende URL identisch: curl -s http://10.0.0.1/evse/state liefert die selben Daten.

Kommandos

Kommandos können durch publishen auf das entsprechende Topic bzw ein HTTP-PUT auf die entsprechende URL ausgelöst werden. Der Payload eines Kommandos muss immer gültiges JSON sein. Das heißt insbesondere, dass ein Kommando, das keine Informationen benötigt, nicht mit einer leeren Nachricht aufgerufen werden darf, sondern mit null oder einem der folgenden "leeren" Werte: "", false, 0, [] oder {}. Um einen Neustart des ESPs auszulösen kann beispielsweise folgendes Kommando verwendet werden: mosquitto_pub -t "warp/ABC/reboot" -m "null" Der analoge HTTP-Request wäre: curl -H "Content-Type: application/json" -X PUT -d "null" http://10.0.0.1/reboot Bestimmte Kommandos ändern den Zustand der Wallbox nicht direkt, sondern lösen einmalige Ereignisse aus. Ein Beispiel ist evse/stop_charging, das einen Ladevorgang abbricht. Falls ein Kommando dieser Art mit dem MQTT-Retain-Flag auf dem Broker hinterlegt wird, wird es nach einen Verbindungsaufbau von der Wallbox ignoriert. Das verhindert, dass eigentlich einmalige Ereignisse mehrfach ausgeführt werden.

Konfigurationen

Konfigurationen können sowohl gelesen, als auch geschrieben werden. Da sie im Flash des ESPs abgelegt werden, muss aber, damit eine aktualisierte Konfiguration verwendet wird, nach der Aktualisierung ein Neustart des ESPs ausgelöst werden. Konfigurationen werden unter dem jeweiligen Pfad von der Wallbox gepublisht. Aktualisierungen werden auf dem speziellen Suffix _update entgegengenommen. Es können dabei nicht zu verändernde Einträge der Konfiguration durch null ausgedrückt werden.

Konfigurationen setzen per MQTT

Wenn zum Beispiel die Access-Point-Konfiguration der Wallbox wie folgt abgefragt wird: mosquitto_sub -v -t "warp/ABC/wifi/ap_config" "warp/ABC/wifi/ap_config": {"enable_ap":true, "ap_fallback_only":false, "ssid":"warp-ABC", "hide_ssid":false, "passphrase":null, "channel":1, "ip":"10.0.0.1", "gateway":"10.0.0.1", "subnet":"255.255.255.0"}, kann der Access Point danach folgendermaßen in den Fallback-Modus gebracht werden: mosquitto_pub -t "warp/ABC/wifi/ap_config_update" -m "{\"ap_fallback_only\": true, \"enable_ap\":null, \"ssid\":null, \"hide_ssid\":null, \"passphrase\":null, \"channel\":null, \"ip\":null, \"gateway\":null, \"subnet\":null}" Danach muss, um die Konfiguration anzuwenden noch ein Neustart durchgeführt werden: mosquitto_pub -t "warp/ABC/reboot" -m "null" Der Access Point sollte dann ab jetzt nur noch aktiv sein, wenn die Verbindung zum konfigurierten WLAN fehlgeschlagen ist.

Konfigurationen setzen per HTTP

Mit der HTTP-API kann äquivalent die Access-Point-Konfiguration mit curl -s http://10.0.0.1/wifi/ap_config abgefragt werden, der Fallback-Modus mit curl http://10.0.0.1/wifi/ap_config_update -H "Content-Type: application/json" -X PUT -d "{\"ap_fallback_only\": true, \"enable_ap\":null, \"ssid\":null, \"hide_ssid\":null, \"passphrase\":null, \"channel\":null, \"ip\":null, \"gateway\":null, \"subnet\":null}" aktiviert werden und danach der Neustart mit curl -H "Content-Type: application/json" -X PUT -d "null" http://10.0.0.1/reboot ausgelöst werden.

_modified und _reset

Neben der eigentlichen Konfiguration und dem Kommando mit dem Suffix _update existiert pro Konfiguration auch ein Zustand mit dem Suffix _modified, sowie ein Kommando mit Suffix _reset. Wenn beispielsweise der Access Point wie oben in den Fallback-Modus gebracht wurde, liefert mosquitto_sub -v -t "warp/ABC/wifi/ap_config_modified" "warp/ABC/wifi/ap_config_modified": {"modified": 3} Der _modified-Zustand gibt an, ob eine Konfiguration modifiziert wurde. Mögliche Werte sind dabei 0 bis 3:

  1. Derzeit wird die Standard-Konfiguration verwendet. Seit dem Starten wurde die Konfiguration nicht verändert.
  2. Derzeit wird die Standard-Konfiguration verwendet. Seit dem Starten wurde die Konfiguration verändert. Damit die Veränderung wirkt, muss ein Neustart durchgeführt werden.
  3. Derzeit wird nicht die Standard-Konfiguration verwendet. Seit dem Starten wurde die Konfiguration nicht verändert.
  4. Derzeit wird nicht die Standard-Konfiguration verwendet. Seit dem Starten wurde die Konfiguration verändert. Damit die Veränderung wirkt, muss ein Neustart durchgeführt werden.
Das parameterlose Kommando mit dem Suffix _reset setzt die entsprechende Konfiguration auf den Standard-Zustand zurück. Danach muss ein Neustart durchgeführt werden.

Abkürzungen

Die Nachrichten für Kommandos und Konfigurationen können abgekürzt werden, falls sie Objekte mit genau einem Eintrag sind. Es ist dann möglich, den Wert des Eintrags direkt zu übertragen.

Um zum Beispiel den Strom einer externen Steuerung auf 13 Ampere zu aktualisieren kann entweder mosquitto_pub -t "warp/ABC/evse/external_current_update" -m "{\"current\": 13000}" verwendet werden, oder es kann der neue Wert von 13000 direkt übergeben werden: mosquitto_pub -t "warp/ABC/evse/external_current_update" -m "13000"

Features

WARP Charger melden die jeweils unterstützten Features auf dem Topic info/features. Mithilfe der Features ist es möglich, dass eine Anwendung die API so verwendet, dass sie mit allen Versionen und Varianten des WARP Chargers kompatibel ist. Feature-Voraussetzungen sind an API-Topics in der Referenz vermerkt. Folgende Features kann eine Wallbox anbieten:

EVSE ("evse")

Ein Ladecontroller steht zur Verfügung. Dieses Feature sollte bei allen WARP Chargern, deren Hardware funktionsfähig ist, vorhanden sein.

Control Pilot Disconnect ("cp_disconnect")

Der Ladecontroller kann das Control Pilot-Signal unterbrechen.

Button-Konfiguration ("button_configuration")

Das Verhalten des Tasters an der Front der Wallbox kann umkonfiguriert werden. Bei WARP1 ist das nicht möglich, da der Taster und der Schlüsselschalter nicht voneinander unterschieden werden können.

Ethernet ("ethernet")

Es ist ein ESP Ethernet Brick verbaut. Eine LAN-Verbindung ist möglich.

Stromzähler ("meters")

Von mindestens einem Stromzähler konnten erfolgreich Werte gelesen werden.

NFC-Bricklet ("nfc")

Ein NFC-Bricklet wurde gefunden. Freischaltung per NFC ist möglich.

RTC-Bricklet ("rtc")

Ein RTC-Bricklet wurde gefunden. Die Systemzeit wird auch ohne Netzwerk-Zeitsynchronisierung über Neustarts hinweg erhalten.

(veraltete API) Stromzähler ("meter")

Ein Stromzähler und Hardware zum Auslesen desselben über RS485 ist verfügbar. Dieses Feature wird erst gesetzt, wenn ein Stromzähler mindestens einmal erfolgreich über Modbus ausgelesen wuerde.

(veraltete API) Stromzähler misst phasenweise ("meter_phases")

Der verbaute Stromzähler kann Energie und weitere Messwerte einzelner Phasen messen.

Stromzähler misst weitere Werte ("meter_all_values")

Der verbaute Stromzähler kann weitere Messwerte auslesen.

Unions

Verschiedene APIs des WARP Chargers benutzen Unions (auch bekannt als Summentypen), um veränderliche Objekte auszudrücken. Eine Union besteht aus deren Daten, sowie einem Tag, dass angibt welche Variante der Daten verwendet wird. Als Tag wird immer eine Zahl verwendet. Tag und Daten werden in einem JSON-Array mit immer genau zwei Einträgen dargestellt. Ein Wert der entweder ein Objekt mit zwei Einträgen oder eine Zeichenkette sein soll, könnte z.B. so ausgedrückt werden: [0, {"entry_a": 123, "entry_b": "abc"}] bzw. [1, "Hello World"].

API-Referenz

Ladecontroller (EVSE)

Benötigt das Feature "evse"
evse/state
Der Zustand des Ladecontrollers.
Name Bedeutung
iec61851_state
int
Der aktuelle Zustand nach IEC 61851
  1. 0 - A: Nicht verbunden
  2. 1 - B: Verbunden
  3. 2 - C: Lädt
  4. 3 - D: Lädt mit Belüftung (nicht unterstützt)
  5. 4 - E/F: Fehler
charger_state
int
Der aktuelle Zustand, aufbereitet vom Ladecontroller
  1. 0 - Nicht verbunden
  2. 1 - Warte auf Ladefreigabe
  3. 2 - Ladebereit
  4. 3 - Lädt
  5. 4 - Fehler
contactor_state
int
Schützüberwachung. Überwacht wird die Spannung vor und nach dem Schütz
  1. 0 - Nicht stromführend vor und nach dem Schütz
  2. 1 - Stromführend vor, aber nicht stromführend nach dem Schütz
  3. 2 - Nicht stromführend vor, aber stromführend nach dem Schütz
  4. 3 - Stromführend vor und nach dem Schütz
contactor_error
int
Fehlercode der Schützüberwachung. Ein Wert ungleich 0 zeigt einen Fehler an.
  1. 0 - Kein Fehler
  2. 1 - Schütz sollte durchschalten.
    Kein Strom vor Schütz, kein Strom nach Schütz.
    Stromversorgung prüfen.
  3. 2 - Schütz sollte durchschalten.
    Strom vor Schütz, kein Strom nach Schütz.
    Schütz defekt?
  4. 3 - Schütz sollte durchschalten.
    Kein Strom vor Schütz, Strom nach Schütz.
    Verkabelung prüfen.
  5. 4 - Schütz sollte nicht durchschalten.
    Kein Strom vor Schütz, kein Strom nach Schütz.
    Stromversorgung prüfen.
  6. 5 - Schütz sollte nicht durchschalten.
    Kein Strom vor Schütz, Strom nach Schütz.
    Verkabelung prüfen.
  7. 6 - Schütz sollte nicht durchschalten.
    Strom vor Schütz, Strom nach Schütz.
    Schütz defekt?
allowed_charging_current
int (mA)
Maximal erlaubter Ladestrom, der dem Fahrzeug zur Verfügung gestellt wird. Dieser Strom ist das Minimum der Stromgrenzen aller Ladeslots.
error_state
int
Der aktuelle Fehlerzustand. Siehe Handbuch für Details.
  1. 0 - OK
  2. 2 - Schalterfehler
  3. 3 - DC-Fehlerstromüberwachungsfehler
  4. 4 - Schützfehler
  5. 5 - Kommunikationsfehler
lock_state
int
Zustand der Kabelverriegelung (nur relevant für Wallboxen mit Typ-2-Dose)
  1. 0 - Initialisierung
  2. 1 - Offen
  3. 2 - Schließend
  4. 3 - Geschlossen
  5. 4 - Öffnend
  6. 5 - Fehler
dc_fault_current_state
int
(Nur WARP 2) Der Zustand des DC-Fehlerstrom-Schutzmoduls. Falls ein Gleichstromfehler auftritt, kann nicht mehr geladen werden, bis das Schutzmodul zurückgesetzt wurde. Vor dem Zurücksetzen muss der Grund des Fehlers unbedingt behoben werden! evse/reset_dc_fault_current_state setzt das Modul zurück.
  1. 0 - Kein Fehler
  2. 1 - 6 mA Fehlerstrom detektiert
  3. 2 - Systemfehler
  4. 3 - Unbekannter fehler
  5. 4 - Kalibrierungsfehler
evse/hardware_configuration
Die Hardwarekonfiguration des Ladecontrollers.
Name Bedeutung
jumper_configuration
int
Der Maximalstrom des eingehenden Kabels. Dieser Strom wird auf dem Ladecontroller durch Jumper oder eine Steckplatine mit Schaltern konfiguriert.
  1. 0 - 6 Ampere
  2. 1 - 10 Ampere
  3. 2 - 13 Ampere
  4. 3 - 16 Ampere
  5. 4 - 20 Ampere
  6. 5 - 25 Ampere
  7. 6 - 32 Ampere
  8. 7 - Kontrolliert durch Software
  9. 8 - Nicht konfiguriert
has_lock_switch
bool
Gibt an, ob die Wallbox über eine Kabelverriegelung verfügt.
  1. false - Wallbox hat fest angeschlagenes Typ-2-Ladekabel
  2. true - Wallbox hat eine Typ-2-Dose mit Kabelverriegelung
evse_version
int
Hardware-Version des Ladecontrollers
WARP 1:
  1. 14 - EVSE 1.4
  2. 15 - EVSE 1.5
WARP 2:
  1. 20 - EVSE 2.0
energy_meter_type
int
(Nur WARP 2) Typ des verbauten Stromzählers. Nicht jeder Stromzähler wird von jeder Wallbox unterstützt!
  1. 0 - Kein Stromzähler verfügbar
WARP 1:
  1. 1 - SDM72
WARP 2:
  1. 2 - SDM630
  2. 3 - SDM72V2
evse/slots
Der Zustand der Ladeslots. Siehe TODO LINK für Details.
Index Bedeutung
[0..14]
object
Ein Ladeslot
Name Bedeutung
max_current
int (mA)
Maximal erlaubter Ladestrom. 6000 (=6 Ampere) bis 32000 (=32 Ampere) oder 0 falls der Slot blockiert.
active
bool
Gibt an ob dieser Slot aktiv ist.
  1. true - Slot ist aktiv
  2. false - Slot ist nicht aktiv
clear_on_disconnect
bool
Gibt an, ob der Ladestrom dieses Slots beim Abziehen eines Fahrzeugs auf 0 gesetzt wird.
  1. true - Slot wird beim Abziehen blockieren
  2. false - Slot wird gesetzten Ladestrom beim Abziehen beibehalten
evse/button_state
Der Zustand des Tasters in der Frontblende.
Name Bedeutung
button_press_time
int (ms)
Zeit zu der zuletzt der Taster gedrückt wurde. 0 falls der Taster seit dem Start des Ladecontrollers nicht betätigt wurde.

Achtung: Diese Zeit wird direkt über den Takt des Prozessors gemessen. Die Genauigkeit ist damit nur ausreichend für Zeitmessungen im Bereich Minuten bis wenige Stunden. Die Zeitmessung läuft nach ungefähr 50 Tagen über und beginnt wieder bei 0.
button_release_time
int (ms)
Zeit zu der zuletzt der Taster losgelassen wurde. 0 falls der Taster seit dem Start des Ladecontrollers nicht betätigt wurde.

Achtung: Diese Zeit wird direkt über den Takt des Prozessors gemessen. Die Genauigkeit ist damit nur ausreichend für Zeitmessungen im Bereich Minuten bis wenige Stunden. Die Zeitmessung läuft nach ungefähr 50 Tagen über und beginnt wieder bei 0.
button_pressed
bool
true, falls der Taster derzeit gedrückt ist, sonst false
evse/indicator_led
Der Zustand der LED im Taster. Kann über evse/indicator_led_update mit dem selben Payload geschrieben werden, falls die LED-Steuerung per API (siehe evse/led_configuration) erlaubt wurde.
Name Bedeutung
indication
int
Aktuell gesetzter Zustand.
  1. -1 - EVSE kontrolliert LED
  2. 0 - Aus
  3. 1..254 - Per PWM gedimmtes leuchten
  4. 255 - An
  5. 1001 - Bestätigendes Blinken (z.B: NFC-Tag wurde erkannt)
  6. 1002 - Ablehnendes Blinken (z.B: NFC-Tag ist unbekannt)
  7. 1003 - Aufforderndes Blinken (z.B: NFC-Tag wird zum Laden benötigt)
  8. 2001..2010 - Fehler-Blinken 1 bis 10.
duration
int (ms)
Dauer für die der gesetzte Zustand erhalten bleibt.
evse/low_level_state
Der Low-Level-Zustand des Ladecontrollers.
Name Bedeutung
led_state
int
Der Zustand der am Ladecontroller angeschlossenen LED
  1. 0 - Aus
  2. 1 - An
  3. 2 - Blinkt
  4. 3 - Flackert
  5. 4 - Atmet
  6. 5 - API, siehe evse/indicator_led
cp_pwm_duty_cycle
int (%/10)
Tastverhältnis der Pulsweitenmodulation auf dem CP-Signal.
adc_values
int[..]
16-Bit ADC-Rohwerte der Spannungsmessungen
WARP 1:
  1. [0] - CP/PE
  2. [1] - PP/PE
WARP 2:
  1. [0] - CP/PE vor Widerstand (PWM High)
  2. [1] - CP/PE nach Widerstand (PWM High)
  3. [2] - CP/PE vor Widerstand (PWM Low)
  4. [3] - CP/PE nach Widerstand (PWM Low)
  5. [4] - PP/PE
  6. [5] - +12V Rail
  7. [6] - -12V Rail
voltages
int[..] (mV)
Aus den ADC-Werten berechnete Spannungen
WARP 1:
  1. [0] - CP/PE
  2. [1] - PP/PE
  3. [2] - Maximalspannung CP/PE
WARP 2:
  1. [0] - CP/PE vor Widerstand (PWM High)
  2. [1] - CP/PE nach Widerstand (PWM High)
  3. [2] - CP/PE vor Widerstand (PWM Low)
  4. [3] - CP/PE nach Widerstand (PWM Low)
  5. [4] - PP/PE
  6. [5] - +12V Rail
  7. [6] - -12V Rail
resistances
int[2] (Ω)
Aus den Spannungen berechnete Widerstände
  1. [0] - CP/PE
  2. [1] - PP/PE
gpio
bool[..]
Signale auf den GPIOs
WARP 1:
  1. [0] - Eingang
  2. [1] - Ausgang
  3. [2] - Motoreingangsschalter
  4. [3] - Relais
  5. [4] - Motorfehler
WARP 2:
  1. [0] - Stromkonfiguration 0
  2. [1] - Motorfehler
  3. [2] - Gleichstromfehler
  4. [3] - Stromkonfiguration 1
  5. [4] - DC-Fehlerstromschutz-Test
  6. [5] - Abschaltung
  7. [6] - Taster
  8. [7] - CP-PWM
  9. [8] - Motoreingangsschalter
  10. [9] - Schützsteuerung
  11. [10] - Konfigurierbarer Ausgang
  12. [11] - CP-Trennung
  13. [12] - Motor aktiv
  14. [13] - Motor-Phase
  15. [14] - Schützprüfung vorher
  16. [15] - Schützprüfung nachher
  17. [16] - Konfigurierbarer Eingang
  18. [17] - DC X6
  19. [18] - DC X30
  20. [19] - LED
  21. [20..23] - Nicht belegt
charging_time
int (ms)
Ungefähre Zeit des Ladevorgangs. Nur für Lastmanagementzwecke zu verwenden!
time_since_state_change
int (ms)
Zeit seit dem letzten IEC-61851-Zustandswechsel. Falls der Zustand 2 (= B: Lädt) ist, entspricht dieser Wert der Ladezeit.

Achtung: Diese Zeit wird direkt über den Takt des Prozessors gemessen. Die Genauigkeit ist damit nur ausreichend für Zeitmessungen im Bereich Minuten bis wenige Stunden. Die Zeitmessung läuft nach ungefähr 50 Tagen über und beginnt wieder bei 0.
uptime
int (ms)
Zeit seit Starten des Ladecontrollers.

Achtung: Diese Zeit wird direkt über den Takt des Prozessors gemessen. Die Genauigkeit ist damit nur ausreichend für Zeitmessungen im Bereich Minuten bis wenige Stunden. Die Zeitmessung läuft nach ungefähr 50 Tagen über und beginnt wieder bei 0.
time_since_dc_fault_check
int (ms)
(Nur WARP 2) Zeit seit dem letzten Test des DC-Fehlerstrom-Schutzmoduls. Achtung: Diese Zeit wird direkt über den Takt des Prozessors gemessen. Die Genauigkeit ist damit nur ausreichend für Zeitmessungen im Bereich Minuten bis wenige Stunden. Die Zeitmessung läuft nach ungefähr 50 Tagen über und beginnt wieder bei 0.
dc_fault_sensor_type
int
(Nur WARP 2) Typ des DC-Fehlerstrom-Sensors
  1. 0 - X904
  2. 0 - X804
dc_fault_pins
int
(Nur WARP 2) Zustand der Pins des DC-Schutzmodul beim letzten Fehler, falls ein Fehler aufgetreten ist. Kalibrierungsfehlercode, falls ein Kalibrierungsfehler aufgetreten ist.
evse/external_current
Der von der externen Steuerung vorgegebene Ladestrom. Kann über evse/external_current_update mit dem selben Payload gesetzt werden.
Name Bedeutung
current
int (mA)
Der von der externen Steuerung vorgegebene Ladestrom. 6000 (=6 Ampere) bis 32000 (=32 Ampere) oder 0 falls der Slot blockiert.
evse/external_clear_on_disconnect
Gibt an, ob der von der externen Ladesteuerung vorgegebene Ladestrom beim Abziehen eines Fahrzeugs automatisch auf 0 gesetzt werden soll. Kann über evse/external_clear_on_disconnect_update mit dem selben Payload gesetzt werden.
Name Bedeutung
clear_on_disconnect
bool
Gibt an, ob der Ladestrom dieses Slots beim Abziehen eines Fahrzeugs auf 0 gesetzt wird.
  1. true - Slot wird beim Abziehen blockieren
  2. false - Slot wird gesetzten Ladestrom beim Abziehen beibehalten
evse/management_current
Der vom Lastmanagement vorgegebene Ladestrom. Kann über evse/management_current_update mit dem selben Payload gesetzt werden.
Name Bedeutung
current
int (mA)
6000 (=6 Ampere) bis 32000 (=32 Ampere) oder 0 falls der Slot blockieren soll.
evse/auto_start_charging
Konfiguriert, ob ein angeschlossenes Fahrzeug selbstständig geladen wird. Dieser Wert kann über evse/auto_start_charging_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
auto_start_charging
bool
Konfiguriert, ob ein angeschlossenes Fahrzeug selbstständig geladen wird. Falls aktiviert, beginnt sofort, wenn das Fahrzeug angeschlossen wird der Ladevorgang. Falls deaktiviert, kann das Laden mit evse/start_charging gestartet werden.
evse/global_current
Der über das Webinterface vorgegebene Ladestrom. Kann über evse/global_current_update mit dem selben Payload gesetzt werden.
Name Bedeutung
current
int (mA)
Der über das Webinterface vorgegebene Ladestrom. 6000 (=6 Ampere) bis 32000 (=32 Ampere) oder 0 falls der Slot blockiert.
evse/management_enabled
Gibt an, ob der Ladeslot des Lastmanagements aktiv ist. Der Wert kann über evse/management_enabled_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
enabled
bool
true wenn Lastmanagement aktiviert ist, sonst false
evse/user_current
Der von der Benutzerautorisierung erlaubte Ladestrom.
Name Bedeutung
current
int (mA)
Der von der Benutzerautorisierung erlaubte Ladestrom. 6000 (=6 Ampere) bis 32000 (=32 Ampere) oder 0 falls der Slot blockiert.
evse/user_enabled
Gibt an, ob der Ladeslot der Benutzerautorisierung aktiv ist. Der Wert kann über evse/user_enabled_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
enabled
bool
true wenn die Benutzerautorisierung aktiviert ist, sonst false
evse/external_enabled
Gibt an, ob der Ladeslot der externen Steuerung aktiv ist. Der Wert kann über evse/external_enabled_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
enabled
bool
true wenn die externe Steuerung aktiviert ist, sonst false
evse/external_defaults
Die nach einem Neustart des Ladecontrollers übernommenen Einstellungen des Ladeslots der externen Steuerung. Der Wert kann über evse/external_defaults_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
current
int (mA)
Der nach einem Neustart übernommene Maximalstrom im Ladeslot der externen Steuerung. 6000 (=6 Ampere) bis 32000 (=32 Ampere) oder 0 falls der Slot blockiert.
clear_on_disconnect
bool
Gibt an, ob der Ladestrom dieses Slots beim Abziehen eines Fahrzeugs auf 0 gesetzt wird.
  1. true - Slot wird beim Abziehen blockieren
  2. false - Slot wird gesetzten Ladestrom beim Abziehen beibehalten
evse/modbus_tcp_enabled
Gibt an, ob die Ladeslots für Modbus-TCP aktiv sind (und damit ob Modbus-TCP Schreibzugriff gewährt wurde). Der Wert kann über evse/modbus_tcp_enabled_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
enabled
bool
true wenn die Ladeslots für Modbus-TCP aktiviert sind, sonst false
evse/ocpp_enabled
Gibt an, ob der Ladeslot für OCPP aktiv ist. Der Wert kann über evse/ocpp_enabled_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
enabled
bool
true wenn OCPP aktiviert ist, sonst false
evse/automation_current
Der von der Automatisierung erlaubte Ladestrom. Kann über evse/automation_current_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
current
int (mA)
Der von der Automatisierung erlaubte Ladestrom. 6000 (=6 Ampere) bis 32000 (=32 Ampere) oder 0 falls der Slot blockiert.
evse/gpio_configuration (Nur WARP 2)
Die Konfiguration der konfigurierbaren Ein- und Ausgänge. Kann über evse/gpio_configuration_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
shutdown_input
int
Die Konfiguration des Abschalteingangs.
  1. 0 - Nicht konfiguriert
  2. 1 - Abschalten wenn geöffnet
  3. 2 - Abschalten wenn geschlossen
input
int
Die Konfiguration des konfigurierbaren Eingangs.
  1. 0 - Nicht konfiguriert
  2. 1 - Blockiert wenn geschlossen
  3. 2 - Limitiert auf 6 A wenn geschlossen
  4. 3 - Limitiert auf 8 A wenn geschlossen
  5. 4 - Limitiert auf 10 A wenn geschlossen
  6. 5 - Limitiert auf 13 A wenn geschlossen
  7. 6 - Limitiert auf 16 A wenn geschlossen
  8. 7 - Limitiert auf 20 A wenn geschlossen
  9. 8 - Limitiert auf 25 A wenn geschlossen
  10. 9 - Blockiert wenn geöffnet
  11. 10 - Limitiert auf 6 A wenn geöffnet
  12. 11 - Limitiert auf 8 A wenn geöffnet
  13. 12 - Limitiert auf 10 A wenn geöffnet
  14. 13 - Limitiert auf 13 A wenn geöffnet
  15. 14 - Limitiert auf 16 A wenn geöffnet
  16. 15 - Limitiert auf 20 A wenn geöffnet
  17. 16 - Limitiert auf 25 A wenn geöffnet
output
int
Die Konfiguration des konfigurierbaren Ausgangs.
  1. 0 - Verbunden mit Masse
  2. 1 - Hochohmig
evse/button_configuration (Nur WARP 2)
Die Konfiguration des Tasters in der Frontblende. Diese kann über evse/button_configuration_update mit dem selben Payload aktualisiert werden. Benötigt das Feature "button_configuration"
Name Bedeutung
button
int
Die Konfiguration des Tasters in der Frontblende.
  1. 0 - Deaktiviert
  2. 1 - Ladestart wenn gedrückt
  3. 2 - Ladestop wenn gedrückt
  4. 3 - Ladestart/stop wenn gedrückt
evse/led_configuration
Die Konfiguration der LED des Tasters in der Frontblende. Diese kann über evse/led_configuration_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
enable_api
bool
Legt fest, ob die LED über die evse/indicator_led_update-API oder über Modbus TCP gesteuert werden darf.
  1. false - LED darf nicht gesteuert werden. Aufrufe von evse/indicator_led_update werden ignoriert
  2. true - LED darf gesteuert werden. Aufrufe von evse/indicator_led_update werden nur dann ignoriert, wenn das EVSE einen Fehlerzustand anzeigen möchte.
evse/user_calibration (Nur WARP 1)
Erlaubt es, die werksseitige Kalibrierung des EVSEs auszulesen und zu überschreiben. Dieser Wert kann über evse/user_calibration_update mit dem selben Payload aktualisiert werden. Um die Kalibierung auf den Werkszustand zurückzusetzen, kann ein Payload mit user_calibration_active auf false geschickt werden. Die weiteren Werte werden dann ignoriert.
Name Bedeutung
user_calibration_active
bool
Gibt an, ob die werksseitige Kalibrierung überschrieben wurde.
voltage_diff
int
Einer der Kalibrierungsparameter.
voltage_mul
int
Einer der Kalibrierungsparameter.
voltage_div
int
Einer der Kalibrierungsparameter.
resistance_2700
int
Einer der Kalibrierungsparameter.
resistance_880
int[..]
Einer der Kalibrierungsparameter.
evse/ev_wakeup (Nur WARP 2)
Gibt an, ob das EVSE automatisch versucht die Ladeelektronik des Fahrzeugs aus einem Energiesparmodus zu wecken, indem ein Abziehen und Anstecken des Ladekabels vorgetäuscht wird. (Control-Pilot-Trennung/CP-Trennung) Dieser Wert kann über evse/ev_wakeup_update mit dem selben Payload aktualisiert werden. Benötigt das Feature "cp_disconnect"
Name Bedeutung
enabled
bool
true wenn die Ladeelektronik des Fahrzeugs geweckt werden soll
evse/control_pilot_disconnect (Nur WARP 2)
Gibt an, ob ein Abziehen und Anstecken des Ladekabels vorgetäuscht ist. (Control-Pilot-Trennung/CP-Trennung) Dieser Wert kann über evse/control_pilot_disconnect_update mit dem selben Payload aktualisiert werden. Aktualisierungen werden ignoriert, falls das Lastmanagement aktiviert ist. Siehe evse/management_enabled. Benötigt das Feature "cp_disconnect"
Name Bedeutung
disconnect
bool
true CP getrennt ist, sonst false
evse/boost_mode
Gibt an, ob das EVSE der Ladeelektronik des Fahrzeugs einen leicht höheren Ladestrom vorgibt (+ 0,24 A) um Messfehler der Ladeelektronik zu kompensieren. Nur Verwenden, falls ein Fahrzeug mit einem kleineren als dem erlaubten Ladestrom lädt! Dieser Wert kann über evse/boost_mode_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
enabled
bool
true CP getrennt ist, sonst false
evse/reset_dc_fault_current_state (Nur WARP 2)
Setzt das DC-Fehlerstrom-Schutzmodul zurück. Vor dem Zurücksetzen muss der Grund des Fehlers unbedingt behoben werden!
Kann abgekürzt werden.
Name Bedeutung
password
int
Passwort, das zum Zurücksetzen benötigt wird. Das Passwort lautet 0xDC42FA23.
evse/trigger_dc_fault_test (Nur WARP 2)
Startet einen Test des DC-Fehlerstrom-Schutzmoduls.
Leerer Payload. Es muss einer der folgenden Werte übergeben werden: null, "", false, 0, [] oder {}
evse/gp_output (Nur WARP 2)
Der aktuelle Wert des konfigurierbaren Ausgangs. Dieser Wert kann über evse/gp_output_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
gp_output
int
Der aktuelle Wert des konfigurierbaren Ausgangs.
  1. 0 - Verbunden mit Masse
  2. 1 - Hochohmig
evse/stop_charging
Beendet den laufenden Ladevorgang. Ein Aufruf dieser Funktion ist äquivalent zum Stoppen über den Taster an der Wallbox: Es wird TODO LINK Slot 4 blockiert. Ein Ladevorgang kann mit evse/start_charging wieder gestartet werden.
Leerer Payload. Es muss einer der folgenden Werte übergeben werden: null, "", false, 0, [] oder {}
Löst eine einmalige Aktion aus. Nachrichten, die über den Broker retained wurden, werden ignoriert.
evse/start_charging
Startet einen Ladevorgang. Ein Aufruf dieser Funktion ist äquivalent zum Starten über den Taster an der Wallbox: Es wird TODO LINK Slot 4 freigegeben. Ein Ladevorgang kann mit evse/stop_charging wieder gestoppt werden.
Leerer Payload. Es muss einer der folgenden Werte übergeben werden: null, "", false, 0, [] oder {}
Löst eine einmalige Aktion aus. Nachrichten, die über den Broker retained wurden, werden ignoriert.
evse/start_debug
Startet ein Ladeprotokoll. Es werden hochfrequent Messwerte des Ladecontrollers auf die WebSockets geschrieben, bis evse/stop_debug aufgerufen wird.
evse/stop_debug
Stoppt ein Ladeprotokoll. Siehe evse/start_debug für Details.
evse/meter_config
Gibt an, welcher Stromzähler für Berechnungen im Zusammenhang mit Ladevorgängen verwendet werden soll. (z.B. Ladetracker, Ladelimits, usw.)
Kann abgekürzt werden.
Name Bedeutung
slot
int
Stromzählerslot, der verwendet werden soll

Stromzähler

WARP Charger und Energy Manager unterstützen mehrere Stromzähler. Die Stromzähler-API ist aufgeteilt in einem allgemeinen Teil unter meters/... und einen Stromzähler-spezifischen Teil unter meters/X/... wobei X einer Stromzähler-Nummer entspricht. Der Stromzähler-spezifische Teil beinhaltet immer meters/X/value_ids, meters/X/values, meters/X/live und meters/X/history mit dem unten dokumentierten Inhalt. Beispielsweise können die Messwerte des ersten Stromzählers (der die Stromzählernummer 0 besitzt) unter meters/0/values gelesen werden. Außerdem hat jeder Zähler die APIs meters/X/config, meters/X/state und meters/X/errors, deren Inhalt von der Klasse des Stromzählers abhängt. Die Stromzählerklasse wird als das Union-Tag von meters/X/config angegeben.

Jeder Stromzähler meldet seine Messwerte unter meters/X/values als ein Array von Floats. Welcher Messwert wie zu interpretieren ist, kann unter meters/X/value_ids (einem Array von Ints, den sogenannten MeterValueIDs) ausgelesen werden: Wenn beispielsweise an Index 3 in meters/X/value_ids die MeterValueID 13 gelesen wird, dann ist der meters/X/values-Wert an Index 3 als der Phasenstrom auf L1 zu interpretieren. Alle MeterValueIDs sind auf Github dokumentiert: Dokumentation der MeterValueIDs

meters/X/values
Die Messwerte des X. Stromzählers. Die Bedeutung der Messwerte kann aus meters/X/value_ids ermittelt werden. Bei einem API-Stromzähler können diese Werte über meters/X/update geschrieben werden
meters/X/value_ids
Die MeterValueIDs des X. Stromzählers. Der n-te Eintrag in diesem Array gibt die Bedeutung des n-ten Messwerts aus meters/X/values an. Dokumentation der MeterValueIDs
meters/X/history
Eine 48-Stunden-Historie der Ladeleistung des X. Stromzählers in Watt. Bisher fehlende Werte werden durch null angezeigt. Die Historie wird von hinten nach vorne gefüllt, sodass null-Werte nur geschlossen am Anfang des Arrays auftreten, falls der ESP innerhalb der letzten 48 Stunden neugestartet wurde. Es werden bis zu 720 Werte ausgegeben, das entspricht einem Messwert alle 4 Minuten. Diese Messwerte sind der jeweilige Durchschnitt dieser 4 Minuten.
Name Bedeutung
offset
float (s)
Das Alter des zuletzt gemessenen Wertes.
samples
int[..]
Die gemessenen Werte.
meters/X/live
Die letzten Ladeleistungs-Messwerte des X. Stromzählers. Auf Basis dieser Werte werden die Durchschnittswerte für meters/X/history generiert.
Name Bedeutung
offset
float (s)
Das Alter des zuletzt gemessenen Wertes.
samples_per_second
float (Hz)
Die Anzahl der gemessenen Werte pro Sekunde.
samples
int[..]
Die gemessenen Werte. Abhängig von der Länge des Arrays und dem samples_per_second-Wert kann ermittelt werden, wie weit in die Vergangenheit die Messwerte reichen.
meters/X/config
Die Konfiguration des X. Stromzählers. Das Union-Tag gibt die Zählerklasse an.
Tag Bedeutung
0
null
Kein Stromzähler konfiguriert.
1
object
(Nur WARP 1) Interner Stromzähler (an RS485-Bricklet)
Name Bedeutung
display_name
string
Anzeigename des Stromzählers
type_override
int
Erlaubt es den verbauten Zählertyp zu überschreiben, falls die Auto-Detektion nicht funktioniert.
  1. 0 - Kein Stromzähler verfügbar
  2. 1 - SDM72
  3. 2 - SDM630
  4. 3 - SDM72V2
  5. 255 - Typ-Override nicht aktiv. Stromzählertyp wird automatisch detektiert.
2
object
(Nur WARP 2) Interner Stromzähler (an EVSE-2.0-Bricklet)
Name Bedeutung
display_name
string
Anzeigename des Stromzählers
3
object
(Nur Energy Manager) Stromzähler angeschlossen am WARP Energy Manager
Name Bedeutung
display_name
string
Anzeigename des Stromzählers
4
object
API-Stromzähler
Name Bedeutung
display_name
string
Anzeigename des Stromzählers
value_ids
int[..]
MeterValueIDs, die über die API meters/X/update gesetzt werden können sollen. Dokumentation der MeterValueIDs
5
object
SunSpec-Stromzähler über Modbus-TCP
Name Bedeutung
display_name
string
Anzeigename des Stromzählers
host
string
Hostname oder IP-Adresse des SunSpec-Geräts
port
int
Port des SunSpec-Geräts. Typischerweise 502
device_addess
int
Modbus-Device-Adresse des Sunspec-Geräts
model_id
int
SunSpec-Model-ID
meters/X/state
Der Zustand des X. Stromzählers. Der Inhalt dieser API hängt vom Typ des Stromzählers ab, der in meters/X/config konfiguriert wurde.
Name Bedeutung
0
null
Kein Stromzähler konfiguriert.
1, 2, 3
object
Zustand des internen Stromzählers
Name Bedeutung
type
int
Typ des verbauten Stromzählers. Nicht jeder Stromzähler wird von jedem Gerät unterstützt!
  1. 0 - Kein Stromzähler verfügbar
  2. 2 - SDM630
  3. 3 - SDM72V2
WARP 1:
  1. 1 - SDM72
Energy Manager:
  1. 4 - SDM72CTM
  2. 5 - SDM630MCT
4
null
Zustand des API-Stromzählers. Im Moment leer.
5
null
Zustand des SunSpec-Stromzählers. Im Moment leer.
meters/X/errors
Fehlerzähler der Kommunikation mit dem Stromzähler. Der Inhalt dieser API hängt vom Typ des Stromzählers ab, der in meters/X/config konfiguriert wurde.
Name Bedeutung
0
null
Kein Stromzähler konfiguriert.
1, 2, 3
object
Fehlerzähler des internen Stromzählers
Name Bedeutung
meter
int
(Nur WARP 1) Kommunikationsfehler zwischen RS485 Bricklet und Stromzähler.
bricklet
int
(Nur WARP 1) Kommunikationsfehler zwischen ESP Brick und RS485 Bricklet.
bricklet_reset
int
(Nur WARP 1) Unerwartete Resets des RS485 Bricklets.
local_timeout
int
(Nur WARP 2,Energy Manager) Local Timeout
global_timeout
int
(Nur WARP 2,Energy Manager) Global Timeout
illegal_function
int
(Nur WARP 2,Energy Manager) Illegal Function
illegal_data_access
int
(Nur WARP 2,Energy Manager) Illegal Data Access
illegal_data_value
int
(Nur WARP 2,Energy Manager) Illegal Data Value
slave_device_failure
int
(Nur WARP 2,Energy Manager) Slave Device Failure
4
null
Fehlerzähler des API-Stromzählers. Im Moment leer.
5
null
Fehlerzähler des SunSpec-Stromzählers. Im Moment leer.
meters/X/reset
Setzt alle zurücksetzbaren (Alle Werte deren "kind"-Eintrag "resettable" ist: Dokumentation der MeterValueIDs) Zählerwerte des X. Stromzählers zurück.
Leerer Payload. Es muss einer der folgenden Werte übergeben werden: null, "", false, 0, [] oder {}
Löst eine einmalige Aktion aus. Nachrichten, die über den Broker retained wurden, werden ignoriert.
meters/X/last_reset
Der Zeitpunkt des letzten Zähler-Resets (siehe meters/X/reset) als Unix-Timestamp. 0 falls kein Reset durchgeführt wurde. Falls zum Zeitpunkt des letzten Resets keine Zeitsynchronisierung vorlag, ist dieser Wert stattdessen ein Zähler, der angibt, wie oft ein Reset durchgeführt wurde.
Name Bedeutung
last_reset
int (s)
Unix-Timestamp des Zeitpunkts des letzten Zähler-Resets.
meters/history
Eine 48-Stunden-Historie der Ladeleistung in Watt. Bisher fehlende Werte werden durch null angezeigt. Die Historie wird von hinten nach vorne gefüllt, sodass null-Werte nur geschlossen am Anfang des Arrays auftreten, falls der ESP innerhalb der letzten 48 Stunden neugestartet wurde. Es werden bis zu 720 Werte ausgegeben, das entspricht einem Messwert alle 4 Minuten. Diese Messwerte sind der jeweilige Durchschnitt dieser 4 Minuten.
Name Bedeutung
offset
float (s)
Das Alter des zuletzt gemessenen Wertes.
samples
int[..][2]
Die gemessenen Werte aller Stromzähler. Die Größe des Arrays ist 2 bei WARP1 und WARP2, 7 beim WARP Energy Manager.
  1. [0..1] - Die gemessenen Werte des jeweiligen Stromzählers
meters/live
Die letzten Ladeleistungs-Messwerte. Auf Basis dieser Werte werden die Durchschnittswerte für meters/history generiert.
Name Bedeutung
offset
float (s)
Das Alter des zuletzt gemessenen Wertes.
samples_per_second
float (Hz)
Die Anzahl der gemessenen Werte pro Sekunde.
samples
int[..][2]
Die gemessenen Werte aller Stromzähler. Die Größe des Arrays ist 2 bei WARP1 und WARP2, 7 beim WARP Energy Manager..
  1. [0..1] - Die gemessenen Werte. Abhängig von der Länge des Arrays und dem samples_per_second-Wert kann ermittelt werden, wie weit in die Vergangenheit die Messwerte reichen.

Zählerüberwachung

require_meter/config
Die Konfiguration der Zählerüberwachung. Kann über require_meter/config_update mit dem selben Payload aktualisiert werden.
Kann abgekürzt werden.
Name Bedeutung
config
int
Konfiguration der Zählerüberwachung.
  1. 0 - Es wurde noch nie ein Stromzähler gesehen. Zählerüberwachung deaktiviert. Sobald das erste Mal ein Stromzähler erkannt wird, wird dieser Wert automatisch auf 1 geändert.
  2. 1 - Es wurde bereits einmal ein Stromzähler gesehen. Zählerüberwachung aktiviert.
  3. 2 - Es wurde bereits einmal ein Stromzähler gesehen. Zählerüberwachung deaktiviert.

Lastmanager

charge_manager/available_current
Der derzeit zur Verfügung stehende Strom. Kann über charge_manager/available_current_update aktualisiert werden. Dieser Strom wird unter den konfigurierten Wallboxen aufgeteilt.
Name Bedeutung
current
int (mA)
Der zur Verfügung stehende Strom. Darf nicht großer sein als der konfigurierte Maximalstrom maximum_available_current aus charge_manager/config.
charge_manager/available_phases
Anzahl der derzeit verbundenen Phasen der Wallboxen. Kann über charge_manager/available_phases_update aktualisiert werden.
Name Bedeutung
phases
int (mA)
Anzahl der verbundenen Phasen. Legt fest, ob der einphasige oder dreiphasige minimale Ladestrom für die Stromverteilung beachtet wird. Wird üblicherweise durch die Phasenumschaltung des Energy Managers vorgegeben.
charge_manager/state
Der Zustand des Lastmanagers und aller konfigurierten Wallboxen. Wird vom Webinterface zur Anzeige verwendet. Änderungen an diesem Object werden nicht als API-Bruch betrachtet!
charge_manager/config
Die Lastmanager-Konfiguration. Diese kann über charge_manager/config_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
enable_charge_manager
bool
Gibt an, ob der Lastmanager aktiviert sein soll.
  1. true - Wenn der Lastmanager aktiviert ist.
  2. false - Wenn der Lastmanager nicht aktiviert ist.
enable_watchdog
bool
Gibt an, ob der Watchdog aktiviert sein soll. Der Watchdog setzt, wenn 30 Sekunden lang keine Nachricht auf charge_manager/available_current_update einging, den verfügbaren Strom auf die Default-Einstellung (default_available_current). Damit kann die Robustheit gegen Ausfall einer externen Steuerung, z.B. bei PV-Überschussladung erhöht werden.
  1. true - Wenn der Watchdog aktiviert ist.
  2. false - Wenn der Watchdog nicht aktiviert ist.
verbose
bool
Gibt an, ob jeder Stromverteilung im Ereignis-Log vermerkt werden soll.
  1. true - Wenn Stromverteilungen geloggt werden sollen.
  2. false - Wenn Stromverteilungen nicht geloggt werden sollen.
default_available_current
int (mA)
Strom der nach Neustart des Lastmanagers zur Verfügung stehen soll. Beim Auslösen setzt der Watchdog den verfügbaren Strom auf diesen Strom zurück.
maximum_available_current
int (mA)
Maximum, das über die API und das Webinterface jeweils als verfügbarer Strom gesetzt werden darf. Sollte auf den maximal erlaubten Strom der Anbindung des Wallbox-Verbunds konfiguriert werden, der z.b. durch Hausanschlusses, die Absicherung oder die Zuleitung begrenzt ist.
minimum_current_auto
bool
Gibt an, ob der Minimal-Ladestrom anhand des gewählten Fahrzeugtypes (minimum_current_vehicle_type) gesetzt wird.
  1. true - Minimal-Ladestrom wird anhand des gewählten Fahrzeugtypes gesetzt. minimum_current und minimum_current_1p werden ignoriert, bzw. überschrieben.
  2. false - minimum_current und minimum_current_1p bestimmen den Minimal-Ladestrom.
minimum_current_vehicle_type
int
Fahrzeugtyp für den der Minimal-Ladestrom gewählt wird.
  1. 0 - Kein spezifischer Fahrzeugtyp gewählt.
  2. 1 - Renault Twingo Z.E., Renault ZOE R110 oder R135
minimum_current
int (mA)
Kleinste Strommenge, die einer Wallbox im dreiphasigen Betrieb zugeteilt werden soll, damit diese einen Ladevorgang beginnt. Hiermit kann beeinflusst werden wie viele Wallboxen gleichzeitig laden.
minimum_current_1p
int (mA)
Kleinste Strommenge, die einer Wallbox im einphasigen Betrieb zugeteilt werden soll, damit diese einen Ladevorgang beginnt. Hiermit kann beeinflusst werden wie viele Wallboxen gleichzeitig laden.
requested_current_threshold
int (s)
Wallboxen mit einem Stromzähler, der Phasenströme misst, werden requested_current_threshold Sekunden nach dem Ladestart auf den größten Phasenstrom plus den konfigurierten Spielraum limitiert. Damit kann der verfügbare Strom effizienter auf mehrere Wallboxen verteilt werden.
requested_current_margin
int (mA)
Spielraum, der auf den größten gemessenen Phasenstrom aufgeschlagen wird.
chargers
object[10]
Wallboxen, die vom Lastmanager gesteuert werden sollen.
  1. [0..9] - Eine zu steuernde Wallbox
    Name Bedeutung
    host
    string
    IP-Adresse der zu steuernden Wallbox
    name
    string
    Anzeigename der zu steuernden Wallbox

Benutzerverwaltung

users/config
Die Benutzerkonfiguration. Kann über die nachfolgenden Kommandos modifiziert werden.
Name Bedeutung
users
object[17]
Die Benutzer
  1. [0..16] - Ein Benutzer
    Name Bedeutung
    id
    int
    ID des Benutzers (1-255)
    roles
    int
    Berechtigungen des Benutzers. Wird noch nicht verwendet.
    current
    int (mA)
    Diesem Benutzer erlaubter Ladestrom 6000 (=6 Ampere) bis 32000 (=32 Ampere) oder 0 um diesem Nutzer das Laden zu verbieten
    display_name
    string
    Anzeigename des Benutzers. Wird auch im Ladetracker verwendet.
    username
    string
    Nutzername zum Anmelden im Webinterface und der HTTP-API.
    digest_hash
    string
    HTTP-Digest-Hash. Wird als leerer String zurückgegeben, falls die Anmeldung für diesen Nutzer deaktiviert ist.
next_user_id
int
ID des nächsten anzulegenden Nutzers.
http_auth_enabled
bool
Gibt an ob zur Verwendung von Webinterface und HTTP-API Zugangsdaten nötig sein sollen.
  1. true - Falls Zugangsdaten verlangt werden sollen.
  2. false - Wenn nicht.
users/add
Fügt einen neuen Benutzer hinzu.
Name Bedeutung
id
int
ID des anzulegenden Nutzers. Muss dem aktuellen Wert von next_user_id aus users/config entsprechen.
roles
int
Berechtigungen des Benutzers. Wird noch nicht verwendet.
current
int (mA)
Diesem Benutzer erlaubter Ladestrom 6000 (=6 Ampere) bis 32000 (=32 Ampere) oder 0 um diesem Nutzer das Laden zu verbieten
display_name
string
Anzeigename des Benutzers. Wird auch im Ladetracker verwendet.
username
string
Nutzername zum Anmelden im Webinterface und der HTTP-API.
digest_hash
string
HTTP-Digest-Hash des anzulegenden Nutzers. Ein leerer String verbietet das Anmelden im Webinterface.
users/remove
Löscht einen Benutzer.
Kann abgekürzt werden.
Name Bedeutung
id
int
ID des zu löschenden Nutzers
users/modify
Modifiziert einen Benutzer.
Name Bedeutung
id
int
ID des zu modifizierenden Nutzers.
roles
int
Berechtigungen des Benutzers. Wird noch nicht verwendet.
current
int (mA)
Diesem Benutzer erlaubter Ladestrom 6000 (=6 Ampere) bis 32000 (=32 Ampere) oder 0 um diesem Nutzer das Laden zu verbieten
display_name
string
Anzeigename des Benutzers. Wird auch im Ladetracker verwendet.
username
string
Nutzername zum Anmelden im Webinterface und der HTTP-API.
digest_hash
string
HTTP-Digest-Hash des Nutzers. Ein leerer String verbietet das Anmelden im Webinterface.
users/http_auth_update
Schreibt http_auth_enabled aus users/config.
Kann abgekürzt werden.
Name Bedeutung
enabled
bool
Legt fest ob zur Verwendung von Webinterface und HTTP-API Zugangsdaten nötig sein sollen.
  1. true - Falls Zugangsdaten verlangt werden sollen.
  2. false - Wenn nicht.
users/all_usernames
Für das Ladetracking werden die Anzeigenamen gelöschter Benutzer separat im Flash gespeichert. Diese Funktion gibt alle Anzeigenamen, die möglicherweise in den getrackten Ladevorgängen vorkommen in einem Binärformat aus.

Ladetracker

charge_tracker/state
Zustand des Ladeträckers
Name Bedeutung
tracked_charges
int
Anzahl der insgesamt aufgezeichneten Ladevorgänge.
first_charge_timestamp
int (min)
Ein Unix-Timestamp in Minuten, der den Startzeitpunkt des ersten Ladevorgangs angibt. 0 falls zum Startzeitpunkt keine Zeitsynchronisierung verfügbar war.
charge_tracker/last_charges
Die letzten (bis zu) 30 aufgezeichneten Ladevorgänge
Index Bedeutung
[0..29]
object
Ein getrackter Ladevorgang
Name Bedeutung
timestamp_minutes
int (min)
Ein Unix-Timestamp in Minuten, der den Startzeitpunkt des Ladevorgangs angibt. 0 falls zum Startzeitpunkt keine Zeitsynchronisierung verfügbar war.
charge_duration
int (s)
Dauer des Ladevorgangs.
user_id
int
ID des Benutzers der den Ladevorgang gestartet hat. 0 falls eine Freigabe ohne Nutzerzuordnung erfolgt ist.
energy_charged
float (kWh)
Geladene Energie. null falls zum Start- oder Endzeitpunkt kein Zähler verfügbar war.
charge_tracker/current_charge
Information zum aktuell laufenden Ladevorgang. Falls kein Ladevorgang läuft, hat die user_id den Wert -1
Name Bedeutung
user_id
int
ID des Benutzers der den Ladevorgang gestartet hat. 0 falls eine Freigabe ohne Nutzerzuordnung erfolgt ist. -1 falls gerade kein Ladevorgang läuft.
meter_start
float (kWh)
Zählerstand bei Start des Ladevorgangs. null falls zum Startzeitpunkt kein Zähler verfügbar war.
evse_uptime_start
int (s)
Uptime des Ladecontrollers beim Start des Ladevorgangs. Um zu berechnen, wie lange der Ladevogang bereits läuft kann die aktuelle Uptime aus evse/low_level_state verwendet werden.
timestamp_minutes
int (min)
Ein Unix-Timestamp in Minuten, der den Startzeitpunkt des Ladevorgangs angibt. 0 falls zum Startzeitpunkt keine Zeitsynchronisierung verfügbar war.
authorization_type
int
Gibt an wie der Ladevorgang freigeschaltet wurde.
  1. 0 - Benutzerfreigabe deaktiviert, Ladevorgang wurde bei Anstecken des Fahrzeugs freigegeben. authorization_info ist null.
  2. 1 - Typ der Freischaltung ging verloren, da der ESP während des Ladevorgangs neugestartet wurde. authorization_info ist null.
  3. 2 - Ladevorgang wurde durch NFC-Tag freigegeben. NFC-Tag wurde physisch an den WARP Charger gehalten. authorization_info enthält tag_id und tag_type.
  4. 3 - Ladevorgang wurde durch NFC-Tag freigegeben. NFC-Tag wurde per nfc/inject_tag vorgetäuscht. authorization_info enthält tag_id und tag_type.
authorization_info
None
Weiterführende Informationen zur Benutzerfreigabe. Format hängt vom authorization_type ab.
charge_tracker/remove_all_charges
Löscht alle aufgezeichneten Ladevorgänge und die Nutzernamenhistorie. Kann nicht rückgängig gemacht werden! Danach wird automatisch ein Neustart ausgeführt.
Name Bedeutung
do_i_know_what_i_am_doing
bool
Gibt an ob der Löschvorgang ausgeführt werden soll
  1. true - Alle aufgezeichneten Ladevorgänge und die Nutzernamenhistorie löschen
  2. false - Keine Aktion durchführen
charge_tracker/charge_log
Gibt alle aufgezeichneten Ladevorgänge in folgendem Binärformat aus. Einträge entsprechen jeweils einem Ladevorgang, sind 16 Byte lang und werden nacheinander ausgegeben. Die folgenden Indizes sind Byte-Offsets relativ zum Start eines aufgezeichneten Ladevorgangs. Alle Werte sind im Little-Endian-Format.
Index Bedeutung
[0..3]
int (min)
Ein Unix-Timestamp in Minuten, der den Startzeitpunkt des Ladevorgangs angibt. 0 falls zum Startzeitpunkt keine Zeitsynchronisierung verfügbar war.
[4..7]
float (kWh)
Zählerstand bei Start des Ladevorgangs. NaN falls zum Startzeitpunkt kein Zähler verfügbar war.
[8]
int
ID des Benutzers der den Ladevorgang gestartet hat. 0 falls eine Freigabe ohne Nutzerzuordnung erfolgt ist.
[9..11]
int (s)
Dauer des Ladevorgangs.
[12..15]
float (kWh)
Zählerstand bei Ende des Ladevorgangs. NaN falls zum Endzeitpunkt kein Zähler verfügbar war.
charge_tracker/config
Die Ladetracker-Konfiguration. Diese kann über charge_tracker/config_update mit dem selben Payload aktualisiert werden.
Kann abgekürzt werden.
Name Bedeutung
electricity_price
int (ct/kWh/100)
Strompreis der im Webinterface und Ladelog verwendet wird um Ladekosten zu berechnen

NFC-Ladefreigabe

Benötigt das Feature "nfc".
nfc/seen_tags
Die zuletzt von der Wallbox gesehenen NFC-Tags.
Index Bedeutung
[0..7]
object
Ein gesehenes NFC-Tag
Name Bedeutung
tag_type
int
Typ des Tags
  1. 0 - Mifare Classic
  2. 1 - NFC Forum Typ 1
  3. 2 - NFC Forum Typ 2
  4. 3 - NFC Forum Typ 3
  5. 4 - NFC Forum Typ 4
tag_id
string
ID des Tags. Je nach Tag-Typ bis zu 10 Hex-Bytes, separiert durch ':'. z.B. 01:23:ab:3d
last_seen
int (ms)
Zeit in Millisekunden vor der das Tag zuletzt gesehen wurde.
[8]
object
Das von nfc/inject_tag vorgetäuschte Tag
Name Bedeutung
tag_type
int
Typ des Tags
  1. 0 - Mifare Classic
  2. 1 - NFC Forum Typ 1
  3. 2 - NFC Forum Typ 2
  4. 3 - NFC Forum Typ 3
  5. 4 - NFC Forum Typ 4
tag_id
string
ID des Tags. Je nach Tag-Typ bis zu 10 Hex-Bytes, separiert durch ':'. z.B. 01:23:ab:3d
last_seen
int (ms)
Zeit in Millisekunden vor der das Tag zuletzt gesehen wurde.
nfc/inject_tag
Täuscht vor, dass ein Tag vom NFC-Leser erkannt wurde. Hiermit kann über die API ein Ladevorgang für einen bestimmten Benutzer gestartet oder gestoppt werden. Analog zur physischen Verwendung eines Tags wird der Ladevorgang bei Aufruf der API abwechselnd freigegeben oder blockiert. Siehe nfc/inject_tag_start und nfc/inject_tag_stop für genauere Kontrolle. Das vorgetauschte Tag ist immer der letzte Eintrag in nfc/seen_tags
Name Bedeutung
tag_type
int
Typ des Tags.
  1. 0 - Mifare Classic
  2. 1 - NFC Forum Typ 1
  3. 2 - NFC Forum Typ 2
  4. 3 - NFC Forum Typ 3
  5. 4 - NFC Forum Typ 4
tag_id
string
ID des Tags. Je nach Tag-Typ bis zu 10 Hex-Bytes, separiert durch ':'. z.B. 01:23:ab:3d
nfc/inject_tag_start
Täuscht vor, dass ein Tag vom NFC-Leser erkannt wurde. Das Tag wird nur zum Starten eines Ladevorgangs verwendet. Das vorgetauschte Tag ist immer der letzte Eintrag in nfc/seen_tags
Name Bedeutung
tag_type
int
Typ des Tags.
  1. 0 - Mifare Classic
  2. 1 - NFC Forum Typ 1
  3. 2 - NFC Forum Typ 2
  4. 3 - NFC Forum Typ 3
  5. 4 - NFC Forum Typ 4
tag_id
string
ID des Tags. Je nach Tag-Typ bis zu 10 Hex-Bytes, separiert durch ':'. z.B. 01:23:ab:3d
nfc/inject_tag_stop
Täuscht vor, dass ein Tag vom NFC-Leser erkannt wurde. Das Tag wird nur zum Stoppen eines Ladevorgangs verwendet. Das vorgetauschte Tag ist immer der letzte Eintrag in nfc/seen_tags
Name Bedeutung
tag_type
int
Typ des Tags.
  1. 0 - Mifare Classic
  2. 1 - NFC Forum Typ 1
  3. 2 - NFC Forum Typ 2
  4. 3 - NFC Forum Typ 3
  5. 4 - NFC Forum Typ 4
tag_id
string
ID des Tags. Je nach Tag-Typ bis zu 10 Hex-Bytes, separiert durch ':'. z.B. 01:23:ab:3d
nfc/config
Die NFC-Konfiguration. Diese kann über nfc/config_update mit dem selben Payload aktualisiert werden.
Kann abgekürzt werden.
Name Bedeutung
authorized_tags
object[16]
Eine Liste authorisierter Tags.
  1. [0..15] - Ein autorisiertes NFC-Tag
    Name Bedeutung
    user_id
    int
    ID des Nutzers dem dieses Tag zugeordnet ist, oder 0 falls es keinem Nutzer zugeordnet ist.
    tag_type
    int
    Typ des Tags.
    1. 0 - Mifare Classic
    2. 1 - NFC Forum Typ 1
    3. 2 - NFC Forum Typ 2
    4. 3 - NFC Forum Typ 3
    5. 4 - NFC Forum Typ 4
    tag_id
    string
    ID des Tags. Je nach Tag-Typ bis zu 10 Hex-Bytes, separiert durch ':'. z.B. 01:23:ab:3d

Netzwerk-Konfiguration

network/config
Allgemeine Netzwerkeinstellungen
Name Bedeutung
hostname
string
Hostname den die Wallbox in allen konfigurierten Netzwerken verwenden soll.
enable_mdns
bool
Gibt an, ob die Wallbox das Webinterface per mDNS im Netzwerk bekanntgeben soll. Per mDNS wird das Webinterface unter http://[hostname].local (z.B. http://warp2-AbC.local) erreichbar sein.
web_server_port
int
Listen-Port des Webinterfaces. Typischerweise 80

WLAN-Konfiguration

wifi/state
Der aktuelle WLAN-Zustand.
Name Bedeutung
connection_state
int
Zustand der Verbindung zum konfigurierten WLAN. Siehe wifi/sta_config
  1. 0 - Nicht konfiguriert
  2. 1 - Nicht verbunden
  3. 2 - Verbinde
  4. 3 - Verbunden
ap_state
int
Zustand des WLAN-Access-Points. Siehe wifi/ap_config
  1. 0 - Deaktiviert
  2. 1 - Aktiviert
  3. 2 - Fallback inaktiv
  4. 3 - Fallback aktiv
ap_bssid
string
BSSID des WLAN-Access-Points.
sta_ip
string
Aktuelle IP der Wallbox im konfigurierten Netz. 0.0.0.0 falls keine Verbindung besteht.
sta_subnet
string
Aktuelle Subnetzmaske der Wallbox im konfigurierten Netz. 0.0.0.0 falls keine Verbindung besteht.
sta_rssi
int
Die aktuelle Empfangsqualität. 0 falls keine Verbindung besteht, sonst negativ. Werte näher 0 entsprechen einem besseren Empfang.
sta_bssid
string
Die BSSID der Gegenstelle, zu der die Wallbox verbunden ist.
connection_start
int (ms)
Zeit in Millisekunden zu der die letzte Verbindung aufgebaut wurde.
connection_end
int (ms)
Zeit in Millisekunden zu der die letzte Verbindung getrennt wurde.
wifi/scan
Löst einen Scan nach WLANs aus. Die Scan-Ergebnisse können derzeit nur über HTTP abgefragt werden.
Leerer Payload. Es muss einer der folgenden Werte übergeben werden: null, "", false, 0, [] oder {}
Löst eine einmalige Aktion aus. Nachrichten, die über den Broker retained wurden, werden ignoriert.
wifi/sta_config
Die WLAN-Verbindungskonfiguration. Diese kann über wifi/sta_config_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
enable_sta
bool
Gibt an ob eine WLAN-Verbindung zum konfigurierten Netzwerk aufgebaut werden soll.
  1. true - Wenn eine WLAN-Verbindung aufgebaut werden soll.
  2. false - Wenn nicht.
ssid
string
SSID zu der sich verbunden werden soll.
bssid
int[6]
BSSID zu der sich verbunden werden soll. Dieser Eintrag ist optional und kann leer übergeben werden, wird aber für das bssid_lock benötigt.
bssid_lock
bool
Legt fest, ob sich nur zum WLAN mit der gesetzten BSSID verbunden werden soll. Deaktiviert lassen, falls Repeater o.Ä. verwendet werden sollen.
  1. true - Verbindet sich nur zum Access Point mit der übergebenen BSSID.
  2. false - Verbindet sich nur zu jedem Access Point mit der konfigurierten SSID, z.B. mit Repeatern.
passphrase
string
Die WLAN-Passphrase. Maximal 63 Byte. Dieser Eintrag ist optional und kann leer übergeben werden, falls sich zu einem unverschlüsselten WLAN verbunden werden soll.
ip
string
IP-Adresse, die die Wallbox im konfigurierten Netz verwenden soll. Dieser Eintrag und die folgenden sind optional und können als "0.0.0.0" übergeben werden, falls die automatische IP-Adressvergabe (DHCP) verwendet werden soll.
gateway
string
Gateway-Adresse, die die Wallbox im konfigurierten Netz verwenden soll.
subnet
string
Subnetzmaske, die die Wallbox im konfigurierten Netz verwenden soll.
dns
string
DNS-Server-Adresse, die die Wallbox im konfigurierten Netz verwenden soll.
dns2
string
Alternative DNS-Server-Adresse, die die Wallbox im konfigurierten Netz verwenden soll.
wpa_eap_config
union
WPA-Enterprise-Konfiguration
Tag Bedeutung
0
null
WPA Personal
1
object
EAP-TLS
Name Bedeutung
ca_cert_id
int
ID des CA-Zertifikats, dass zur Prüfung des Zertifikats des RADIUS-Servers genutzt wird. Siehe certs/state
identity
string
Anonyme Identität für dem Verbindungsaufbau zum RADIUS-Server. (Optional) Siehe hier für Details
client_cert_id
int
ID des Client-Zertifikats mit dem sich beim RADIUS-Server autorisiert werden soll. (Optional) Siehe certs/state
client_key_id
int
ID des Zertifikats-Keys mit dem das Client-Zertifikat verschlüsselt ist. (Optional) Siehe certs/state
2
object
EAP-PEAP oder EAP-TTLS
Name Bedeutung
ca_cert_id
int
ID des CA-Zertifikats, dass zur Prüfung des Zertifikats des RADIUS-Servers genutzt wird. Siehe certs/state
identity
string
Anonyme Identität für dem Verbindungsaufbau zum RADIUS-Server. (Optional) Siehe hier für Details
username
string
Benutzername
password
string
Passwort
client_cert_id
int
ID des Client-Zertifikats mit dem sich beim RADIUS-Server autorisiert werden soll. (Optional) Siehe certs/state
client_key_id
int
ID des Zertifikats-Keys mit dem das Client-Zertifikat verschlüsselt ist. (Optional) Siehe certs/state
wifi/ap_config
Die WLAN-Access-Point-Konfiguration. Diese kann über wifi/ap_config_update mit dem selben Payload aktualisiert werden. Achtung! Wenn der Access Point deaktiviert wird, und die WLAN-Verbindung bzw. LAN-Verbindung nicht aufgebaut werden kann, bzw. nicht konfiguriert wurde, kann der ESP nur noch durch einen Factory-Reset erreicht werden! Wir empfehlen, den Access Point immer im Fallback-Modus zu belassen.
Name Bedeutung
enable_ap
bool
Gibt an ob der Access Point aktiviert werden soll.
  1. true - Der AP soll aktiviert werden. Ggfalls. nur als Fallback (siehe ap_fallback_only)
  2. false - Der AP soll immer deaktiviert bleiben.
ap_fallback_only
bool
Gibt an ob der Access Point nur aktiviert werden soll, falls die WLAN- und LAN-Verbindungen nicht aufgebaut werden können. Wird ignoriert, falls enable_ap false ist.
  1. true - Der AP soll nur aktiviert werden, falls die WLAN- und LAN-Verbindungen nicht aufgebaut werden können.
  2. false - Der AP soll immer aktiviert bleiben.
ssid
string
SSID zu der sich verbunden werden soll.
hide_ssid
bool
true falls die SSID versteckt werden soll, ansonsten false.
passphrase
string
Die WLAN-Passphrase. Maximal 63 Byte.
channel
int
Kanal, auf dem der Access Point erreichbar sein soll. Gültige Werte sind 1 bis 13 und 0, falls beim Start ein möglichst unbelegter Kanal ausgewählt werden soll.
ip
string
IP-Adresse, die die Wallbox im konfigurierten Netz verwenden soll. Dieser Eintrag und die folgenden sind optional und können als "0.0.0.0" übergeben werden, falls die automatische IP-Adressvergabe (DHCP) verwendet werden soll.
gateway
string
Gateway-Adresse, die die Wallbox im konfigurierten Netz verwenden soll.
subnet
string
Subnetzmaske, die die Wallbox im konfigurierten Netz verwenden soll.
wifi/scan_results
Die WLANs, die aufgrund einer durch wifi/scan ausgelösten Suche gefunden wurden. Ein Array aus Objekten des folgenden Formats:
Name Bedeutung
ssid
string
SSID des gefundenen WLANs. Leer bei versteckten Access Points.
bssid
string
BSSID des gefundenen WLANs.
rssi
int
Die Empfangsqualität des gefundenen WLANs. Immer ein negativer Wert, wobei Werte nahe 0 eine bessere Empfangsqualität bedeuten. Siehe hier für Details.
channel
int
Kanal des gefundenen WLANs.
encryption
int
Verschlüsselungsstandard des gefundenen WLANs
  1. 0 - Unverschlüsselt
  2. 1 - WEP
  3. 2 - WPA-PSK
  4. 3 - WPA2-PSK
  5. 4 - WPA/WPA2-PSK
  6. 5 - WPA2-Enterprise
  7. 6 - Unbekannt

LAN-Verbindung

Benötigt das Feature "ethernet".
ethernet/state
Der aktuelle LAN-Zustand.
Name Bedeutung
connection_state
int
Zustand der Verbindung zum konfigurierten LAN.
  1. 0 - Nicht konfiguriert
  2. 1 - Nicht verbunden
  3. 2 - Verbinde
  4. 3 - Verbunden
ip
string
Aktuelle IP der Wallbox im konfigurierten Netz. 0.0.0.0 falls keine Verbindung besteht.
subnet
string
Aktuelle Subnetzmaske der Wallbox im konfigurierten Netz. 0.0.0.0 falls keine Verbindung besteht.
full_duplex
bool
true bei einer Full-Duplex-Verbindung, sonst false
link_speed
int (Mbit/s)
Ausgehandelte Verbindungsgeschwindigkeit.
  1. 0 - nicht verbunden
  2. 10 -
  3. 100 -
connection_start
int (ms)
Zeit in Millisekunden zu der die letzte Verbindung aufgebaut wurde.
connection_end
int (ms)
Zeit in Millisekunden zu der die letzte Verbindung getrennt wurde.
ethernet/config
Die LAN-Verbindungskonfiguration. Diese kann über ethernet/config_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
enable_ethernet
bool
Gibt an ob eine LAN-Verbindung zum konfigurierten Netzwerk aufgebaut werden soll.
  1. true - Wenn eine LAN-Verbindung aufgebaut werden soll.
  2. false - Wenn nicht.
ip
string
IP-Adresse, die die Wallbox im konfigurierten Netz verwenden soll. Dieser Eintrag und die folgenden sind optional und können als "0.0.0.0" übergeben werden, falls die automatische IP-Adressvergabe (DHCP) verwendet werden soll.
gateway
string
Gateway-Adresse, die die Wallbox im konfigurierten Netz verwenden soll.
subnet
string
Subnetzmaske, die die Wallbox im konfigurierten Netz verwenden soll.
dns
string
DNS-Server-Adresse, die die Wallbox im konfigurierten Netz verwenden soll.
dns2
string
Alternative DNS-Server-Adresse, die die Wallbox im konfigurierten Netz verwenden soll.

Zeitsynchronisierung

ntp/state
Der Zustand der Netzwerkzeitsynchronisierung.
Name Bedeutung
synced
bool
Gibt an, ob die Wallbox ihre Zeit per NTP synchronisieren konnte.
time
int
Ein Unix-Timestamp in Minuten, der die aktuelle Zeit der Wallbox angibt, oder 0 falls keine Zeitsynchronisierung besteht
ntp/config
Die Konfiguration der Netzwerkzeitsynchronisierung.
Name Bedeutung
enable
bool
Gibt an, ob die Wallbox per NTP ihre Zeit synchronisieren soll. Die erhaltene Zeit wird zur Bestimmung der Startzeitpunkte von getrackten Ladevorgängen und im Ereignislog verwendet.
use_dhcp
bool
Gibt an, ob die Wallbox NTP-Server per DHCP empfangen soll. Funktioniert nur, wenn DHCP zur IP-Addressvergabe verwendet wird.
timezone
string
Die Zeitzone, in der sich die Wallbox befindet. z.B. "Europe/Berlin"
server
string
IP-Adresse oder Hostname des zu verwendenden Zeitservers
server2
string
IP-Adresse oder Hostname des alternativ zu verwendenden Zeitservers

MQTT-Verbindung

mqtt/state
Der aktuelle MQTT-Zustand.
Name Bedeutung
connection_state
int
Zustand der Verbindung zum MQTT-Broker
  1. 0 - Nicht konfiguriert
  2. 1 - Nicht verbunden
  3. 2 - Verbunden
  4. 3 - Fehler
last_error
int
Der zuletzt aufgetretene Fehler. -1 falls kein Fehler aufgetreten ist.
connection_start
int (ms)
Zeit in Millisekunden zu der die letzte Verbindung aufgebaut wurde.
connection_end
int (ms)
Zeit in Millisekunden zu der die letzte Verbindung getrennt wurde.
mqtt/config
Die MQTT-Konfiguration. Diese kann über mqtt/config_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
enable_mqtt
bool
Gibt an ob eine MQTT-Verbindung zum konfigurierten Broker aufgebaut werden soll.
  1. true - Wenn MQTT aktiviert ist.
  2. false - Wenn MQTT deaktiviert ist.
broker_host
string
Hostname oder IP-Adresse des MQTT-Brokers, zu dem sich die Wallbox verbinden soll.
broker_port
int
Port des MQTT-Brokers zu dem sich die Wallbox verbinden soll. Typischerweise 1883.
broker_username
string
Username mit dem sich zum Broker verbunden werden soll. Leer falls keine Authentifizierung verwendet wird.
broker_password
string
Passwort mit dem sich zum Broker verbunden werden soll. Leer falls keine Authentisierung verwendet wird.
global_topic_prefix
string
Präfix der allen MQTT-Topics vorangestellt wird. Normalerweise warp/[UID der Wallbox] bzw. warp2/[UID der Wallbox].
client_name
string
Name unter dem sich die Wallbox beim Broker registriert. Das ist nicht der Username zur Authentisierung.
interval
int (s)
Minimales Sendeintervall pro Topic in Sekunden. Nachrichten werden grundsätzlich nur verschickt, wenn Änderungen am Payload vorliegen. Durch ein Sendeintervall von x Sekunden wird alle x Sekunden höchstens eine Nachricht eines Topics verschickt. Falls sich der Inhalt in x Sekunden mehrfach ändert wird nur der aktuellste Inhalt übertragen.
mqtt/auto_discovery_config (Nur WARP 1 und WARP 2)
Die Konfiguration der MQTT Auto Discovery. Diese kann über mqtt/auto_discovery_config_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
auto_discovery_mode
int
Gibt an ob eine MQTT-Verbindung zum konfigurierten Broker aufgebaut werden soll.
  1. 0 - Auto Discovery deaktiviert
  2. 1 - Auto Discovery im generischen Modus; Kompatibel zu z.B. openHAB und Domoticz
  3. 2 - Auto Discovery im Home-Assistant-Modus
auto_discovery_prefix
string
Präfix auf den die für Auto Discovery verwendeten Informationen gesendet werden. Typischerweise homeassistent

Modbus/TCP

modbus_tcp/config
Konfiguration des Modbus/TCP-Servers
Name Bedeutung
enable
bool
Gibt an, ob der Modbus/TCP-Server aktiv ist. Damit nicht nur das Auslesen des Zustands, sondern zusätzlich eine Steuerung möglich ist, muss außerdem evse/modbus_tcp_enabled true sein.
port
int
Port auf dem der Modbus/TCP-Server auf eingehende Verbindungen wartet. Typischerweise 502.
table
int
Registertabelle, die vom Modbus/TCP-Server verwendet wird.
  1. 0 - WARP-Charger-Registertabelle
  2. 1 - Registertabelle kompatibel zu Bender CC612/613
  3. 2 - Registertabelle kompatibel zu Keba C-Series

OCPP-Verbindung

ocpp/config
Konfiguration der OCPP-Verbindung
Name Bedeutung
enable
bool
Gibt an, ob eine Verbindung zum konfigurierten OCPP-Server aufgebaut werden soll. Damit nicht nur das Auslesen des Zustands, sondern zusätzlich eine Steuerung möglich ist, muss außerdem evse/ocpp_enabled true sein.
url
string
Endpoint-URL des OCPP-Servers. Muss mit dem Schema ws:// (unverschlüsselt!) oder wss:// (TLS-verschlüsselt) beginnen und darf nicht auf / enden.
identity
string
Identität der Wallbox. Wird an die Endpoint-URL angehangen und als Benutzername für die Autorisierung verwendet
enable_auth
bool
Gibt an, dass eine Autorisierung per HTTP-Basic-Auth durchgeführt werden soll.
pass
string
HTTP-Basic-Auth Passwort. Wenn das Passwort exakt 40 Zeichen lang ist und nur aus Hex-Zeichen (0-9, A-F, a-f) besteht, wird es als hexadezimale Repräsentation eines 20 Byte langen Authorization-Keys betrachtet.
cert_id
int
ID des TLS-Zertifikats, dass zum Aufbau einer TLS-verschlüsselten Verbindung verwendet werden soll.
  1. -1 - Verwende eingebettetes Zertifikatsbundle
  2. >= 0 - Verwende Zertifikat mit dieser ID
ocpp/reset
Setzt den OCPP-Zustand zurück. Nicht gesendete Transaktionsdaten gehen verloren!
Leerer Payload. Es muss einer der folgenden Werte übergeben werden: null, "", false, 0, [] oder {}

WireGuard-Verbindung

wireguard/state
Der aktuelle WireGuard-Zustand.
Name Bedeutung
state
int
Zustand der Verbindung zum WireGuard-Peer
  1. 0 - Nicht konfiguriert
  2. 1 - Warte auf Zeitsynchronisierung
  3. 2 - Nicht verbunden
  4. 3 - Verbunden
connection_start
int (ms)
Zeit in Millisekunden zu der die letzte Verbindung aufgebaut wurde.
connection_end
int (ms)
Zeit in Millisekunden zu der die letzte Verbindung getrennt wurde.
wireguard/config
Die WireGuard-Konfiguration. Diese kann über wireguard/config_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
enable
bool
Gibt an ob eine WireGuard-Verbindung zum konfigurierten Peer aufgebaut werden soll.
  1. true - Wenn WireGuard aktiviert ist.
  2. false - Wenn WireGuard deaktiviert ist.
make_default_interface
bool
Gibt an ob aller nicht-lokaler Netzwerkverkehr über WireGuard geroutet werden soll.
  1. true - Wenn WireGuard das Default-Interface ist: Sämtlicher nicht-lokaler Netzwerkverkehr wird über WireGuard geroutet.
  2. false - Wenn WireGuard nicht das Default-Interface ist: Nur Netzwerkverkehr im WireGuard-Subnetz wird über WireGuard geroutet.
internal_ip
string
IP-Adresse der Wallbox im WireGuard-Netzwerk
internal_subnet
string
Subnetzmaske des WireGuard-Netzwerks
internal_gateway
string
Gateway des WireGuard-Netzwerks
remote_host
string
öffentliche Adresse oder Hostname des Peers zu dem eine WireGuard-Verbindung aufgebaut werden soll
remote_port
int
Port des Peers zu dem eine WireGuard-Verbindung aufgebaut werden soll
private_key
string
Privater Schlüssel der Wallbox (44 Base64-Zeichen oder leer)
remote_public_key
string
Öffentlicher Schlüssel des Peers zu dem eine WireGuard-Verbindung aufgebaut werden soll (44 Base64-Zeichen oder leer)
preshared_key
string
Geteilter Schlüssel (PSK) der Verbindung zwischen Wallbox und Peer (44 Base64-Zeichen oder leer)
allowed_ip
string
Erlaubte Quell-IP von Paketen, die über die WireGuard-Verbindung empfangen werden. 0.0.0.0 damit alle empfangenen Pakete verarbeitet werden
allowed_subnet
string
Erlaubte Subnetzmaske von Paketen, die über die WireGuard-Verbindung empfangen werden. 0.0.0.0 damit alle empfangenen Pakete verarbeitet werden

Zeiteinstellungen der Real-Time Clock

Benötigt das Feature "rtc".
rtc/time
Die aktuelle Zeit auf der Real-Time Clock. Kann über rtc/time_update mit dem selben Payload gesetzt werden.
Name Bedeutung
year
int
Das Jahr. 2000 bis 2099
month
int
Der Monat. 1 bis 12
day
int
Der Tag. 1 bis 31
hour
int
Die Stunde. 0 bis 23
minute
int
Die Minute. 0 bis 59
second
int
Die Sekunde. 0 bis 59
weekday
int
Der Wochentag. 0 (Montag) bis 6 (Sonntag).
rtc/config
Die Real-Time-Clock-Konfiguration. Diese kann über rtc/config_update mit dem selben Payload aktualisiert werden.
Kann abgekürzt werden.
Name Bedeutung
auto_sync
bool
Gibt an, ob beim Laden des Webinterfaces automatisch die Zeit auf der RTC gestellt werden soll, falls keine Netzwerk-Zeitsynchronisierung vorliegt.
  1. true - Die RTC-Zeit wird automatisch auf die Systemzeit des Geräts gesetzt, dass das Webinterface aufgerufen hat.
  2. false - Die RTC-Zeit wird nur manuell gesetzt.

TLS-Zertifikatsverwaltung

certs/state
Der aktuelle Zustand der TLS-Zertifikatsverwaltung.
Name Bedeutung
certs
object[8]
Bekannte TLS-Zertifikate.
  1. [0..7] - Ein TLS-Zertifikat
    Name Bedeutung
    id
    int
    ID des Zertifikats
    name
    string
    Anzeigename des Zertifikats
certs/add
Fügt ein neues TLS-Zertifikat hinzu.
Name Bedeutung
id
int
ID des Zertifikats, dass hinzugefügt werden soll. Darf nicht bereits von einem Zertifikat verwendet werden.
name
string
Anzeigename des Zertifikats.
cert
string
Zertifikatsdatei im PEM-Format
certs/modify
Modifiziert ein vorhandenes TLS-Zertifikat.
Name Bedeutung
id
int
ID des Zertifikats, dass modifiziert werden soll.
name
string
Anzeigename des Zertifikats.
cert
string
Zertifikatsdatei im PEM-Format
certs/remove
Löscht ein vorhandenes TLS-Zertifikat.
Kann abgekürzt werden.
Name Bedeutung
id
int
ID des Zertifikats, dass gelöscht werden soll.

Allgemeine Informationen

info/version
Version der Wallbox-Firmware.
Name Bedeutung
firmware
string
Die Firmware-Version, die aktuell ausgeführt wird.
config
string
Die Version der Konfiguration, die aktuell verwendet wird.
config_type
string
Typ der auf diesem Gerät gespeicherten Konfiguration.
info/modules
Initialisierungszustand der Firmware-Module.
info/features
Unterstützte Hardwarefeatures. Siehe Features für Details.
info/name
Name und Typ der Wallbox
Name Bedeutung
name
string
Der Name der Wallbox. Besteht aus Typ und UID der Wallbox.
type
string
Typ der Wallbox.
  1. warp - Ein WARP Charger
  2. warp2 - Ein WARP2 Charger
  3. wem - Ein WARP Energy Manager
display_type
string
Benutzerlesbarer Typ der Wallbox. Gibt neben der Hardware-Version die Variante (Smart, Pro), die maximale Ladeleistung und eventuelle Upgrades an. z.B. "WARP2 Charger Pro 11kW +NFC"
uid
string
UID der Wallbox bzw. des verbauten ESP (Ethernet) Bricks.
info/display_name
Benutzerlesbarer Name der Wallbox. Kann über info/display_name_update mit dem selben Payload gesetzt werden.
Kann abgekürzt werden.
Name Bedeutung
display_name
string
Der Anzeigename.
info/last_boots
Debug-Informationen über die letzten Firmware-Ausführungen
Index Bedeutung
[0..9]
object
Debug-Informationen über eine Firmware-Ausführung
Name Bedeutung
reset_reason
int
Grund des Neustarts. Siehe Espressif-Dokumentation
boot_count
int
Zähler der angibt, der wievielte Neustart seit dem die Wallbox vom Strom getrennt wurde, durchgeführt wird. Ein Eintrag in last_boots wird erst fünf Minuten nach dem Start der Wallbox geschrieben um den Flash zu schonen. Falls innerhalb der ersten fünf Minuten neugestartet wird, kann ein Eintrag verloren gehen, was anhand dieses Zählers bemerkt werden kann
uptime
int (ms)
Laufzeit der Firmware-Ausführung (32-Bit).
uptime_overflows
int
Anzahl der Überläufe von uptime.
timestamp_min
int
Unix-Timestamp in Minuten der Firmware-Ausführung.

Zugangsdaten

authentication/config
Zugangsdaten, die für die Verwendung von Webinterface und HTTP-API abgefragt werden sollen.
Name Bedeutung
enable_auth
bool
Gibt an ob zur Verwendung von Webinterface und HTTP-API Zugangsdaten nötig sein sollen.
  1. true - Falls Zugangsdaten verlangt werden sollen.
  2. false - Wenn nicht.
username
string
Der Benutzername, dem Zugriff auf Webinterface und HTTP-API gewährt werden.
digest_hash
string
Der Digest Hash, dem Zugriff auf Webinterface und HTTP-API gewährt werden.

Sonstiges

reboot
Startet den ESP neu, um beispielsweise Konfigurationsänderungen anzuwenden.
Leerer Payload. Es muss einer der folgenden Werte übergeben werden: null, "", false, 0, [] oder {}
Löst eine einmalige Aktion aus. Nachrichten, die über den Broker retained wurden, werden ignoriert.
debug_report
Generiert einen Debug-Report. Dieser besteht aus allen Zuständen und Konfigurationen, sowie den letzten empfangenen Kommandos und Konfigurationsupdates. Passwörter werden, genau wie bei Konfigurationsabfragen, zensiert.
force_reboot
Erzwingt einen sofortigen Neustart des ESPs. Nützlich, falls reboot aus irgendwelchen Gründen hängt.
update
Notfall-Update-Seite mit der eine Firmware-Aktualisierung eingespielt werden kann, auch wenn das normale Webinterface nicht funktioniert.
flash_firmware
Nimmt ein Firmware-Update als POST entgegen, dass dann geflasht wird.
config_reset
Setzt alle Einstellungen zurück aber behält aufgezeichnete Ladevorgänge und die Nutzernamenhistorie. Kann nicht rückgängig gemacht werden! Danach wird automatisch ein Neustart ausgeführt.
Name Bedeutung
do_i_know_what_i_am_doing
bool
Gibt an ob der Löschvorgang ausgeführt werden soll
  1. true - Alle Einstellungen löschen
  2. false - Keine Aktion durchführen
factory_reset
Setzt alle Einstellungen zurück und löscht alle aufgezeichneten Ladevorgänge. Kann nicht rückgängig gemacht werden! Danach wird automatisch ein Neustart ausgeführt.
Name Bedeutung
do_i_know_what_i_am_doing
bool
Gibt an ob der Löschvorgang ausgeführt werden soll
  1. true - Alle Einstellungen, aufgezeichneten Ladevorgänge und die Nutzernamenhistorie löschen
  2. false - Keine Aktion durchführen

Energy-Manager-Konfiguration

energy_manager/config
Konfiguration des Energy Managers
Kann abgekürzt werden.
Name Bedeutung
contactor_installed
bool
Gibt an, ob ein Schütz angeschlossen ist, mit dem die gesteuerten Wallboxen zwischen dreiphasigem und einphasigem Betrieb umgeschaltet werden können. Eingang 4 wird dann automatisch zur Schützüberwachung verwendet.
energy_manager/state
Zustand des Energy Managers
Name Bedeutung
phases_switched
int
Zustand der Phasenumschaltung
  1. 1 - Eine Phase verbunden
  2. 3 - Drei Phasen verbunden
input3_state
bool
Zustand des Eingangs 3
  1. true - Eingang geschlossen
  2. false - Eingang geöffnet
input4_state
bool
Zustand des Eingangs 4
  1. true - Eingang geschlossen
  2. false - Eingang geöffnet
relay_state
bool
Zustand des Relais
  1. true - Relais geschlossen
  2. false - Relais geöffnet
error_flags
int
Aktive Fehlerzustände des Energy Managers. Es handelt sich hierbei um eine Bitmaske, sodass sämtliche Kombinationen aus Fehlerwerten auftreten können.
  1. 0 - Kein Fehler
  2. 0x00000002 - Keine Netzwerkverbindung (LAN/WLAN)
  3. 0x00010000 - Schützüberwachung hat ausgelöst
  4. 0x01000000 - Interner Fehler, Bricklet nicht erreichbar
  5. 0x02000000 - Interner Fehler, SD-Karten-Fehler
  6. 0x80000000 - Ungültige Konfiguration, Details in config_error_flags
config_error_flags
int
Aktive Konfigurationsfehler des Energy Managers. Es handelt sich hierbei um eine Bitmaske, sodass sämtliche Kombinationen aus Konfigurationsfehlern auftreten können.
  1. 0 - Kein Fehler
  2. 0x00000001 - Phasenumschaltung oder Schütz nicht konfiguriert
  3. 0x00000002 - Maximaler Gesamtstrom der Wallboxen nicht konfiguriert
  4. 0x00000004 - Keine Wallboxen konfiguriert
  5. 0x00000008 - Überschussladen aktiviert aber kein Stromzähler eingerichtet
energy_manager/low_level_state
Low-Level-Zustand des Energy Managers
Name Bedeutung
consecutive_bricklet_errors
int
Anzahl aufeinander folgender interner Kommunikationsfehler
contactor
bool
Vom Energy Manager gesetzter Zustand des Schützes
  1. true - Schütz geschlossen
  2. false - Schütz geöffnet
contactor_check_state
int
Zustand der Schützprüfung
  1. 0 - Schützüberwachung hat ausgelöst (Schütz defekt)
  2. 1 - Kein Schützfehler bekannt (Schütz in Ordnung)
input_voltage
int (mV)
Interne Versorgungsspannung in Millivolt.
led_rgb
int[3]
Farbe der Status-LED
  1. [0] - Rot: 0 (aus) bis 255 (maximale Intensität)
  2. [1] - Grün: 0 (aus) bis 255 (maximale Intensität)
  3. [2] - Blau: 0 (aus) bis 255 (maximale Intensität)
uptime
int (ms)
Zeit seit Starten des Energy Manager Bricklets.

Achtung: Diese Zeit wird direkt über den Takt des Prozessors gemessen. Die Genauigkeit ist damit nur ausreichend für Zeitmessungen im Bereich Minuten bis wenige Stunden. Die Zeitmessung läuft nach ungefähr 50 Tagen über und beginnt wieder bei 0.
energy_manager/sdcard_state
Informationen über die eingelegte MicroSD-Karte.
Name Bedeutung
sd_status
int
Status der SD-Karte
  1. 0 - OK
  2. 1 - READ_BLOCK_TIMEOUT
  3. 2 - WRITE_BLOCK_TIMEOUT
  4. 3 - RESPONSE_TIMEOUT
  5. 11 - ERROR_INIT_TYPE
  6. 12 - ERROR_INIT_VER_OR_VOLTAGE
  7. 13 - ERROR_INIT_ACMD41
  8. 14 - ERROR_INIT_CMD58
  9. 15 - ERROR_INIT_CMD0
  10. 21 - ERROR_CID_START
  11. 22 - ERROR_CID_CMD10
  12. 31 - ERROR_CSD_START
  13. 32 - ERROR_CSD_CMD9
  14. 41 - ERROR_COUNT_TO_HIGH
  15. 51 - ERROR_NO_CARD
  16. 255 - ERROR_API_FAILURE
lfs_status
int
Status des Dateisystems (LittleFS) auf der SD-Karte
  1. 0 - OK
  2. 255 - ERROR_API_FAILURE
  3. 256 - SD-Karte wird gerade formatiert
card_type
int
SD-Kartentyp
  1. 0 - Keine SD-Karte gefunden
  2. 1 - MMC
  3. 2 - SD
  4. 4 - SDSC
  5. 12 - SDHC/SDXC
sector_count
int
Größe der SD-Karte in Sektoren
sector_size
int
Größe eines Sektors
manufacturer_id
int
Hersteller-ID
product_rev
int
Produktrevision
product_name
string
Produktname
energy_manager/sdcard_format
Formatiert die eingelegte SD-Karte und löscht damit die Historie der Energiebilanz. Kann nicht rückgängig gemacht werden! Danach wird automatisch ein Neustart ausgeführt.
Name Bedeutung
do_i_know_what_i_am_doing
bool
Gibt an ob die SD-Karte formatiert werden soll
  1. true - SD-Karte formatieren
  2. false - Keine Aktion durchführen

Konfiguration des PV-Überschussladens

power_manager/config
Konfiguration des Energy Managers
Name Bedeutung
default_mode
int
Der nach einem Neustart des Energy Managers verwendete Lademodus
  1. 0 - Schnell. Lädt Fahrzeuge so schnell wie möglich, selbst wenn dafür Netzbezug notwendig ist.
  2. 1 - Aus. Fahrzeuge werden nicht geladen.
  3. 2 - PV. Fahrzeuge werden nur vom PV-Überschuss geladen. Steht nur zur Verfügung, wenn excess_charging_enable true ist.
  4. 3 - Min + PV. Erlaubt die konfigurierte Mindest-Ladeleistung (guaranteed_power), auch wenn diese (teilweise) aus dem Netz bezogen werden muss. Wenn ein größerer PV-Überschuss zur Verfügung steht, wird dieser verwendet. Steht nur zur Verfügung, wenn excess_charging_enable true ist.
excess_charging_enable
bool
Wenn aktiviert, regelt der Energy Manager die an ihn angeschlossenen Verbraucher abhängig vom Überschuss einer vorhandenen Photovoltaikanlage. Wenn deaktiviert, wird die maximale Leistung unter Einhaltung der maximale Strombelastbarkeit der Zuleitungen erlaubt.
phase_switching_mode
int
  1. 0 - Automatischer Wechsel zwischen drei- und einphasigem Laden. Nur möglich, wenn contactor_installed true ist.
  2. 1 - Immer einphasig
  3. 2 - Immer dreiphasig
  4. 4 - Einphasiger PV-Modus, dreiphasiger Schnell-Modus
target_power_from_grid
int (W)
Soll-Netzbezug für Überschussregelung. Gibt den gewünschten Netzbezug (positive Werte) bzw. Netzeinspeisung (negative Werte) im PV-Lademodus vor. Damit kann auch die Priorität gegenüber einem Batteriespeicher beeinflusst werden.
guaranteed_power
int (W)
Mindest-Ladeleistung, die für den Min + PV-Lademodus verwendet wird. Diese Leistung wird bei unzureichendem PV-Überschuss (teilweise) aus dem Netz bezogen.
cloud_filter_mode
int
Modus des Wolkenfilters, um im PV-Lademodus Überreaktionen bei kurzzeitiger Änderung der Bewölkung zu vermeiden.
  1. 0 - Kein Wolkenfilter.
  2. 1 - Schwacher Wolkenfilter.
  3. 2 - Mittlerer Wolkenfilter.
  4. 3 - Starker Wolkenfilter.
meter_slot_grid_power
int
Gibt an, welcher Stromzähler für die Regelung als Hausanschlusszähler betrachtet wird
power_manager/state
Zustand des Energy Managers
Name Bedeutung
config_error_flags
int
Aktive Konfigurationsfehler des Energy Managers. Es handelt sich hierbei um eine Bitmaske, sodass sämtliche Kombinationen aus Konfigurationsfehlern auftreten können.
  1. 0 - Kein Fehler
  2. 0x00000001 - Phasenumschaltung oder Schütz nicht konfiguriert
  3. 0x00000002 - Maximaler Gesamtstrom der Wallboxen nicht konfiguriert
  4. 0x00000004 - Keine Wallboxen konfiguriert
  5. 0x00000008 - Überschussladen aktiviert aber kein Stromzähler eingerichtet
external_control
int
Status der externen Steuerung zur Phasenumschaltung.
  1. 0 - Externe Steuerung bereit für Kommandos.
  2. 1 - Externe Steuerung über die Einstellungen deaktiviert.
  3. 2 - Externe Steuerung ist aktiviert aber aktuell nicht verfügbar. Gründe sind unter anderem: ausgelöste Schützüberwachung, eine oder mehrere Wallboxen nicht erreichbar oder unterstützen keine CP-Trennung, Ladevorgang blockiert durch Eingang 3.
  4. 3 - Phasenumschaltung wird gerade durchgeführt; ankommende Kommandos werden ignoriert.
power_manager/low_level_state
Low-Level-Zustand des Energy Managers
Name Bedeutung
power_at_meter
float (W)
Gemessene Leistung am Hausanschluss
power_at_meter_filtered
float (W)
Geglättete gemessene Leistung am Hausanschluss
power_available
int (W)
Zum Laden verfügbare Leistung. Dies ist ein virtueller Wert, der nicht direkt der Ladeleistung entspricht.
power_available_filtered
int (W)
Geglättete zum Laden verfügbare Leistung. Dies ist ein virtueller Wert, der nicht direkt der Ladeleistung entspricht.
overall_min_power
int (W)
Ladeleistung, die der Energy Manager in der aktuellen Konfiguration minimal einstellen kann, abhängig von Phasenanzahl und minimalem Ladestrom.
threshold_3to1
int (W)
Grenzwert der Ladeleistung, unter der der Energy Manager vom dreiphasigen in den einphasigen Modus wechseln möchte.
threshold_1to3
int (W)
Grenzwert der Ladeleistung, über der der Energy Manager vom einphasigen Modus in den dreiphasigen Modus wechseln möchte.
charge_manager_available_current
int (mA)
Ladestrom, den der Energy Manager dem Lastmanagement aktuell zur Verfügung stellt.
charge_manager_allocated_current
int (mA)
Ladestrom, der aktuell vom Lastmanager an Wallboxen verteilt wurde.
max_current_limited
int (mA)
Maximaler Ladestrom unter Beachtung externer Strombegrenzung
uptime_past_hysteresis
bool
Zeitraum nach einem Start des Energy Managers, in dem ohne Wartezeit umgeschaltet werden kann.
  1. true - Startphase beendet, Wartezeiten müssen eingehalten werden
  2. false - Startphase läuft, Wartezeiten werden ignoriert
is_3phase
bool
Zustand der Phasenumschaltung
  1. true - Kontrollierte Wallboxen werden dreiphasig versorgt
  2. false - Kontrollierte Wallboxen werden einphasig versorgt
wants_3phase
bool
Entscheidung der Phasenumschaltung
  1. true - Dreiphasiger Betrieb erwünscht
  2. false - Einphasiger Betrieb erwünscht
wants_3phase_last
bool
Vorige Entscheidung der Phasenumschaltung
  1. true - Dreiphasiger Betrieb war erwünscht
  2. false - Einphasiger Betrieb war erwünscht
is_on_last
bool
Voriger Zustand der Stromfreigabe
  1. true - Ladestrom für Wallboxen war freigegeben
  2. false - Ladestrom für Wallboxen war nicht freigegeben
wants_on_last
bool
Vorige Entscheidung der Stromfreigabe
  1. true - Freigabe für Ladestrom für Wallboxen war erwünscht
  2. false - Freigabe für Ladestrom für Wallboxen war nicht erwünscht
phase_state_change_blocked
bool
Blockierung der Phasenumschaltung aufgrund von Lastschwankungen
  1. true - Phasenumschaltung ist aufgrund kürzlicher Laständerungen blockiert
  2. false - Phasenumschaltung ist nicht blockiert
phase_state_change_delay
int (ms)
Wartezeit, bis die Phasenumschaltung nicht mehr blockiert ist
on_state_change_blocked
bool
Blockierung der Ladestromfreigabe aufgrund von Lastschwankungen
  1. true - Ladestrom darf aufgrund kürzlicher Laständerungen nicht freigegeben oder blockiert werden
  2. false - Ladestrom darf freigegeben oder blockiert werden
on_state_change_delay
int (ms)
Wartezeit, bis die Ladestromfreigabe nicht mehr blockiert ist
charging_blocked
int
Ladefreigabe wird extern blockiert, falls Wert nicht 0.
switching_state
int
Interne Automatenzustände der Phasenumschaltung
  1. 0 - Es wird gerade keine Phasenumschaltung durchgeführt. Strom und Leistung werden überwacht.
  2. 1 - Ladevorgänge aller Wallboxen werden beendet
  3. 2 - Alle Wallboxen führen CP-Trennung durch
  4. 3 - Schütz wird geschaltet
  5. 4 - Alle Wallboxen heben CP-Trennung auf
power_manager/charge_mode
Aktuell verwendeter Lademodus. Kann über power_manager/charge_mode_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
mode
int
  1. 0 - Schnell. Lädt Fahrzeuge so schnell wie möglich, selbst wenn dafür Netzbezug notwendig ist.
  2. 1 - Aus. Fahrzeuge werden nicht geladen.
  3. 2 - PV. Fahrzeuge werden nur vom PV-Überschuss geladen. Steht nur zur Verfügung, wenn excess_charging_enable true ist.
  4. 3 - Min + PV. Erlaubt die konfigurierte Mindest-Ladeleistung (guaranteed_power), auch wenn diese (teilweise) aus dem Netz bezogen werden muss. Wenn ein größerer PV-Überschuss zur Verfügung steht, wird dieser verwendet. Steht nur zur Verfügung, wenn excess_charging_enable true ist.
power_manager/external_control
Phasenanforderung für externe Steuerung. Nimmt über energy_manager/external_control_update Kommandos zur Phasenumschaltung an, wenn external_control in energy_manager/state 0 ist.
Name Bedeutung
phases_wanted
int
  1. 0 - Keine Phasen angefordert, keine Stromfreigabe.
  2. 1 - Eine Phase angefordert.
  3. 3 - Drei Phasen angefordert.

Ladezeit- und -energielimits

charge_limits/state
Aktueller Zustand der Zeit- und Energielimits
Name Bedeutung
start_timestamp_ms
int (ms)
Startzeitstempel des aktuellen Ladevorgangs. 0 falls kein Ladevorgang läuft.
target_timestamp_ms
int (ms)
Zielzeitstempel des aktuellen Ladevorgangs. 0 falls kein Ladevorgang läuft. Gleich dem Startzeitstempel, falls kein Zeitlimit gesetzt ist.
start_energy_kwh
float (kWh)
Startzählerwert des aktuellen Ladevorgangs. null falls kein Ladevorgang läuft, oder kein Stromzähler zur Verfügung steht.
target_energy_kwh
float (kWh)
Zielzählerwert des aktuellen Ladevorgangs. null falls kein Ladevorgang läuft, oder kein Stromzähler zur Verfügung steht. Gleich dem Startzählerwert, falls kein Energiewert gesetzt ist.
charge_limits/default_limits
Konfiguration der Zeit- und Energielimits für Ladevorgänge. Diese kann über charge_limits/default_limits_update mit dem selben Payload aktualisiert werden.
Name Bedeutung
duration
int
Zeitlimit eines Ladevorgangs. Nach Ablaufen des Zeitlimits wird der Ladevorgang gestoppt.
  1. 0 - Unbegrenzt
  2. 1 - 15 Minuten
  3. 2 - 30 Minuten
  4. 3 - 45 Minuten
  5. 4 - 1 Stunde
  6. 5 - 2 Stunden
  7. 6 - 3 Stunden
  8. 7 - 4 Stunden
  9. 8 - 6 Stunden
  10. 9 - 8 Stunden
  11. 10 - 12 Stunden
energy_wh
int (Wh)
Energielimit eines Ladevorgangs. Nach Ablaufen des Energielimits wird der Ladevorgang gestoppt.
charge_limits/active_limits
Aktive Zeit- und Energielimits für den aktuellen oder nächsten Ladevorgang. Können über charge_limits/override_duration und charge_limits/override_energy aktualisiert werden.
Name Bedeutung
duration
int
Zeitlimit eines Ladevorgangs. Nach Ablaufen des Zeitlimits wird der Ladevorgang gestoppt.
  1. 0 - Unbegrenzt
  2. 1 - 15 Minuten
  3. 2 - 30 Minuten
  4. 3 - 45 Minuten
  5. 4 - 1 Stunde
  6. 5 - 2 Stunden
  7. 6 - 3 Stunden
  8. 7 - 4 Stunden
  9. 8 - 6 Stunden
  10. 9 - 8 Stunden
  11. 10 - 12 Stunden
energy_wh
int (Wh)
Energielimit eines Ladevorgangs. Nach Ablaufen des Energielimits wird der Ladevorgang gestoppt.
charge_limits/override_duration
Überschreibt das Zeitlimit für den aktuellen oder nächsten Ladevorgang.
Kann abgekürzt werden.
Name Bedeutung
duration
int
Zeitlimit eines Ladevorgangs. Nach Ablaufen des Zeitlimits wird der Ladevorgang gestoppt.
  1. 0 - Unbegrenzt
  2. 1 - 15 Minuten
  3. 2 - 30 Minuten
  4. 3 - 45 Minuten
  5. 4 - 1 Stunde
  6. 5 - 2 Stunden
  7. 6 - 3 Stunden
  8. 7 - 4 Stunden
  9. 8 - 6 Stunden
  10. 9 - 8 Stunden
  11. 10 - 12 Stunden
charge_limits/override_energy
Überschreibt das Energielimit für den aktuellen oder nächsten Ladevorgang.
Kann abgekürzt werden.
Name Bedeutung
energy_wh
int (Wh)
Energielimit eines Ladevorgangs. Nach Ablaufen des Energielimits wird der Ladevorgang gestoppt.
charge_limits/restart
Setzt die Ladelimits zurück, so als ob ein neuer Ladevorgang begonnen hätte, behält aber die überschriebenen Ladelimits bei. Mit dieser API und charge_limits/override_duration und charge_limits/override_energy kann zu einem beliebigen Zeitpunkt ein neues "absolutes" Ladelimit gesetzt werden.
Leerer Payload. Es muss einer der folgenden Werte übergeben werden: null, "", false, 0, [] oder {}

Automatisierung

automation/config
Die Konfiguration der Automatisierung.
Kann abgekürzt werden.
Name Bedeutung
tasks
object[14]
Konfigurierte Regeln
  1. [0..13] - Eine Automatisierungsregel
    Name Bedeutung
    trigger
    union
    Bedingung, die zutreffen muss, damit Aktion ausgeführt wird
    Tag Bedeutung
    0
    null
    Keine Bedingung konfiguriert.
    1
    object
    Zu einem bestimmten Zeitpunkt.
    Name Bedeutung
    mday
    int
    Tag des Monats (1 bis 31 oder -1, 0, 32)
    1. -1 - Jeder Tag des Monats
    2. 0 - Jeder Tag des Monats
    3. 32 - Letzter Tag des Monats
    wday
    int
    Wochentag
    1. -1 - Jeder Tag der Woche
    2. 0 - Sonntag
    3. 1 - Montag
    4. 2 - Dienstag
    5. 3 - Mittwoch
    6. 4 - Donnerstag
    7. 5 - Freitag
    8. 6 - Samstag
    9. 7 - Sonntag
    10. 8 - Wochentags (Montag bis Freitag)
    11. 9 - Am Wochenende (Samstag und Sonntag)
    hour
    int
    Stunde des Tages (0 bis 23 oder -1)
    1. -1 - Stündlich
    minute
    int
    Minute des Tages (0 bis 59 oder -1)
    1. -1 - Minütlich
    2
    object
    (Nur WARP 1,WARP 2) Wechsel des Ladestatus
    Name Bedeutung
    old_charger_state
    int
    Ladestatus vor dem Übergang
    1. -1 - Beliebiger Ladestatus
    2. 0 - Fahrzeug getrennt
    3. 1 - Warte auf Freigabe
    4. 2 - Ladebereit
    5. 3 - Lädt
    6. 4 - Fehler
    new_charger_state
    int
    Ladestatus nach dem Übergang
    1. -1 - Beliebiger Ladestatus
    2. 0 - Fahrzeug getrennt
    3. 1 - Warte auf Freigabe
    4. 2 - Ladebereit
    5. 3 - Lädt
    6. 4 - Fehler
    3
    object
    Empfang einer MQTT-Nachricht
    Name Bedeutung
    topic
    string
    MQTT-Topic-Filter, mit dem auf Nachrichten gewartet werden soll.
    payload
    string
    Payload, der in der Nachricht enthalten sein soll
    retain
    bool
    Gibt an, ob auf retained-Pakete reagiert werden soll
    use_prefix
    bool
    Gibt an, ob der konfigurierte Global-Topic-Prefix (siehe mqtt/config) vor dem konfigurierten Topic vorangestellt werden soll.
    4
    null
    (Nur WARP 2) Drücken des Fronttasters
    5
    object
    (Nur WARP 1,WARP 2) Erkennen eines NFC-Tags
    Name Bedeutung
    tag_type
    int
    Typ des Tags
    1. 0 - Mifare Classic
    2. 1 - NFC Forum Typ 1
    3. 2 - NFC Forum Typ 2
    4. 3 - NFC Forum Typ 3
    5. 4 - NFC Forum Typ 4
    tag_id
    string
    ID des Tags. Je nach Tag-Typ bis zu 10 Hex-Bytes, separiert durch ':'. z.B. 01:23:ab:3d
    6
    null
    (Nur WARP 1,WARP 2) Erreichen des Ladezeit- oder Energie-Limits
    7
    object
    (Nur WARP 1,WARP 2) Schalten des Abschalteingangs
    Name Bedeutung
    high
    bool
    Gibt an, ob bei geöffnetem oder geschlossenem Eingang reagiert werden soll
    1. true - Reagieren bei geöffnetem Eingang
    2. false - Reagieren bei geschlossenem Eingang
    8
    object
    (Nur WARP 1,WARP 2) Schalten des konfigurierbaren Eingangs
    Name Bedeutung
    high
    bool
    Gibt an, ob bei geöffnetem oder geschlossenem Eingang reagiert werden soll
    1. true - Reagieren bei geöffnetem Eingang
    2. false - Reagieren bei geschlossenem Eingang
    9
    null
    (Nur WARP 1,WARP 2) Auslösen des Watchdogs der externen Steuerung. Der Watchdog löst aus, wenn die externe Steuerung aktiv ist und evse/external_current_update mindestens 30 Sekunden lang nicht aufgerufen wurde.
    10
    null
    (Nur WARP 1,WARP 2) Erkennen eines Fehlers durch die Zählerüberwachung
    11
    null
    Auslösen des Watchdogs des Lastmanagements. Siehe charge_manager/config
    12
    object
    (Nur Energy Manager) Schalten von Eingang 3
    Name Bedeutung
    state
    bool
    Gibt an, ob bei geöffnetem oder geschlossenem Eingang reagiert werden soll
    1. true - Reagieren bei geöffnetem Eingang
    2. false - Reagieren bei geschlossenem Eingang
    13
    object
    (Nur Energy Manager) Schalten von Eingang 4
    Name Bedeutung
    state
    bool
    Gibt an, ob bei geöffnetem oder geschlossenem Eingang reagiert werden soll
    1. true - Reagieren bei geöffnetem Eingang
    2. false - Reagieren bei geschlossenem Eingang
    14
    object
    (Nur Energy Manager) Schalten der Phasenumschaltung
    Name Bedeutung
    phase
    int
    Gibt an, ob beim Umschalten auf ein- oder dreiphasig reagiert werden soll
    1. 1 - Reagieren beim Wechsel auf einphasig
    2. 3 - Reagieren beim Wechsel auf dreiphasig
    15
    object
    (Nur Energy Manager) Erkennen eines Fehlers durch die Schützüberwachung
    Name Bedeutung
    contactor_okay
    bool
    Gibt an, ob reagiert werden soll, wenn ein oder kein Schützfehler vorliegt.
    1. true - Reagieren wenn ein Schützfehler erkannt wurde
    2. false - Reagieren wenn kein Schützfehler erkannt wurde
    16
    object
    (Nur Energy Manager) Strom verfügbar TODO
    Name Bedeutung
    power_available
    bool
    Gibt an, ob reagiert werden soll, wenn Strom verfügbar, oder nicht verfügbar ist.
    1. true - Reagieren wenn Strom verfügbar ist
    2. false - Reagieren wenn kein Strom verfügbar ist
    17
    object
    (Nur Energy Manager) Netzbezug- oder Einspeisung gemessen
    Name Bedeutung
    drawing_power
    bool
    Gibt an, ob reagiert werden soll, wenn Strom ins Netz eingespeist, oder aus dem Netz bezogen wird.
    1. true - Reagieren wenn Strom bezogen wird
    2. false - Reagieren wenn Strom eingespeist wird
    action
    union
    Aktion, die ausgeführt werden soll
    Tag Bedeutung
    0
    null
    Keine Aktion konfiguriert.
    1
    object
    Schreibe ins Ereignislog
    Name Bedeutung
    message
    string
    Nachricht, die ins Ereignislog geschrieben werden soll
    2
    object
    Sende eine MQTT-Nachricht
    Name Bedeutung
    topic
    string
    MQTT-Topic, an das die Nachricht gesendet werden soll.
    payload
    string
    Payload, der in der Nachricht enthalten sein soll
    retain
    bool
    Gibt an, ob die Nachricht retained werden soll
    use_prefix
    bool
    Gibt an, ob der konfigurierte Global-Topic-Prefix (siehe mqtt/config) vor dem konfigurierten Topic vorangestellt werden soll.
    3
    object
    (Nur WARP 1,WARP 2) Limitiere den Ladestrom
    Name Bedeutung
    current
    int
    Ladestromlimit, dass gesetzt werden soll
    4
    object
    (Nur WARP 1,WARP 2) Zeige auf der Fronttaster-LED an
    Name Bedeutung
    state
    int
    Blinkmuster, dass angezeigt werden soll.
    1. -1 - EVSE kontrolliert LED
    2. 0 - Aus
    3. 1..254 - Per PWM gedimmtes leuchten
    4. 255 - An
    5. 1001 - Bestätigendes Blinken (z.B: NFC-Tag wurde erkannt)
    6. 1002 - Ablehnendes Blinken (z.B: NFC-Tag ist unbekannt)
    7. 1003 - Aufforderndes Blinken (z.B: NFC-Tag wird zum Laden benötigt)
    8. 2001..2010 - Fehler-Blinken 1 bis 10.
    duration
    int (ms)
    Dauer für die der gesetzte Zustand erhalten bleibt.
    5
    object
    Setze einen Stromzähler zurück
    Name Bedeutung
    meter_slot
    int
    Meter-Slot-ID des Zählers, der zurückgesetzt werden soll
    6
    object
    Setze den für den Lastmanager verfügbaren Strom.
    Name Bedeutung
    current
    int
    Verfügbarer Strom, der gesetzt werden soll
    7
    object
    (Nur WARP 1,WARP 2) Simuliere ein NFC-Tags
    Name Bedeutung
    tag_type
    int
    Typ des Tags.
    1. 0 - Mifare Classic
    2. 1 - NFC Forum Typ 1
    3. 2 - NFC Forum Typ 2
    4. 3 - NFC Forum Typ 3
    5. 4 - NFC Forum Typ 4
    tag_id
    string
    ID des Tags. Je nach Tag-Typ bis zu 10 Hex-Bytes, separiert durch ':'. z.B. 01:23:ab:3d
    tag_action
    int
    Gibt an ob das Tag nur zum Starten oder Stoppen eines Ladevorgangs, oder für beides genutzt werden soll
    1. 0 - Tag kann Ladevorgänge starten und stoppen
    2. 0 - Tag kann Ladevorgänge starten
    3. 0 - Tag kann Ladevorgänge stoppen
    8
    object
    (Nur WARP 1,WARP 2) Setze das Ladezeit- oder Energielimit
    Name Bedeutung
    restart
    bool
    Gibt an, ob die neuen Limits relativ zum bestehenden Ladevorgang, oder absolut gelten sollen. Wenn beispielsweise ein Ladevorgang seit 17 Minuten läuft und diese Aktion mit duration = 2 (30 Minuten) ausgelöst wird, dann darf, wenn restart false ist, der Ladevorgang noch weitere 13 Minuten laufen, sodass insgesamt 30 Minuten geladen wurde. Wenn restart true ist, darf weitere 30 Minuten, insgesamt also 47 Minuten geladen werden.
    1. false - Neues Ladelimit gilt relativ zum laufenden Ladevorgang. Z.B. Verlängerung auf 30 Minuten.
    2. true - Neues Ladelimit gilt absolut. Z.B. Verlängerung um 30 Minuten.
    duration
    int
    Zeitlimit eines Ladevorgangs. Nach Ablaufen des Zeitlimits wird der Ladevorgang gestoppt.
    1. -1 - Zeitlimit nicht verändern
    2. 0 - Unbegrenzt
    3. 1 - 15 Minuten
    4. 2 - 30 Minuten
    5. 3 - 45 Minuten
    6. 4 - 1 Stunde
    7. 5 - 2 Stunden
    8. 6 - 3 Stunden
    9. 7 - 4 Stunden
    10. 8 - 6 Stunden
    11. 9 - 8 Stunden
    12. 10 - 12 Stunden
    energy_wh
    int (Wh)
    Energielimit eines Ladevorgangs. Nach Ablaufen des Energielimits wird der Ladevorgang gestoppt.
    1. -1 - Energielimit nicht verändern
    9
    object
    (Nur WARP 1,WARP 2) Schalte den konfigurierbaren Ausgang
    Name Bedeutung
    state
    int
    Gibt an, ob der konfigurierte Ausgang geschlossen oder geöffnet werden soll.
    1. 0 - Geschlossen (verbunden mit Masse)
    2. 1 - Geöffnet (hochohmig)
    11
    object
    (Nur Energy Manager) Starte eine Phasenumschaltung
    Name Bedeutung
    phase
    int
    Gibt an, auf ein- oder dreiphasig umgeschalted werden soll
    1. 1 - Wechsele auf einphasig
    2. 3 - Wechsele auf dreiphasig
    12
    object
    (Nur Energy Manager) Wechsle den Lademodus
    Name Bedeutung
    mode
    int
    Gewünschter Lademodus. Siehe power_manager/charge_mode
    1. 0 - Schnell
    2. 1 - Aus
    3. 2 - PV
    4. 3 - Min + PV
    13
    object
    (Nur Energy Manager) Schalte den Relais-Ausgang
    Name Bedeutung
    state
    bool
    Gibt an, ob der Relais-Ausgang geschlossen oder geöffnet werden soll.
    1. true - Geschlossen
    2. false - Geöffnet
    14
    object
    (Nur Energy Manager) Limitiere den ???TODO???-Strom
    Name Bedeutung
    current
    int
    Stromlimit, dass gesetzt werden soll
    1. -1 - Stromlimit aufheben
    15
    object
    (Nur Energy Manager) Blockiere oder gebe Ladevorgänge frei
    Name Bedeutung
    slot
    int
    Blockierslot, der verwendet werden soll. Ladevorgänge werden nur dann erlaubt, wenn alle 4 Blockierslots nicht blockieren.
    block
    bool
    Gibt an, ob der gewählte Blockierslot blockiert, oder freigegeben werden soll
    1. false - Gib gewählten Blockierslot frei
    2. true - Blockiere gewählten Blockierslot

Konfiguration der emulierten veralteten Stromzähler-API

meters_legacy_api/state
Der Zustand der emulierten veralteten Stromzähler-API
Name Bedeutung
writable
bool
Gibt an, ob die veraltete Stromzähler-API geschrieben werden kann.
meters_legacy_api/config
Die Konfiguration der emulierten veralteten Stromzähler-API
Kann abgekürzt werden.
Name Bedeutung
linked_meter_slot
int
Stromzähler, auf den die emulierte veraltete Stromzähler-API abgebildet werden soll

Veraltete Stromzähler-API

Bei Neuentwicklungen stattdessen meters verwenden!
meter/state
Der Zustand des Stromzählers.
Name Bedeutung
state
int
Zustand des Stromzählers
  1. 0 - Kein Stromzähler verbunden
  2. 1 - Stromzähler unzuverlässig, eventuell nur einphasig verbunden.
  3. 2 - Stromzähler verbunden
type
int
Typ des verbauten Stromzählers. Nicht jeder Stromzähler wird von jeder Wallbox unterstützt!
  1. 0 - Kein Stromzähler verfügbar
  2. 2 - Eastron SDM630
  3. 3 - Eastron SDM72V2
WARP 1:
  1. 1 - Eastron SDM72
WARP 2,Energy Manager:
  1. 4 - Eastron SDM72CTM
  2. 5 - Eastron SDM630MCT
  3. 6 - Eltako DSZ15DZMOD
  4. 7 - YTL DEM4A
meter/values
Die Messwerte des Stromzählers. Benötigt das Feature "meter"
Name Bedeutung
power
float (W)
Die aktuelle Ladeleistung.
energy_rel
float (kWh)
Die geladene Energie seit dem letzten Reset.
energy_abs
float (kWh)
Die geladene Energie seit der Herstellung des Stromzählers.
meter/phases
Angeschlossene und aktive Phasen. Benötigt das Feature "meter_phases".
Name Bedeutung
phases_active
bool[3]
Die derzeit aktiven Phasen
  1. [0] - Phase L1 aktiv
  2. [1] - Phase L2 aktiv
  3. [2] - Phase L3 aktiv
phases_connected
bool[3]
Die angeschlossenen Phasen
  1. [0] - Phase L1 angeschlossen
  2. [1] - Phase L2 angeschlossen
  3. [2] - Phase L3 angeschlossen
meter/error_counters
Fehlerzähler der Kommunikation mit dem Stromzähler.
Name Bedeutung
meter
int
(Nur WARP 1) Kommunikationsfehler zwischen RS485 Bricklet und Stromzähler.
bricklet
int
(Nur WARP 1) Kommunikationsfehler zwischen ESP Brick und RS485 Bricklet.
bricklet_reset
int
(Nur WARP 1) Unerwartete Resets des RS485 Bricklets.
local_timeout
int
(Nur WARP 2,Energy Manager) Local Timeout
global_timeout
int
(Nur WARP 2,Energy Manager) Global Timeout
illegal_function
int
(Nur WARP 2,Energy Manager) Illegal Function
illegal_data_access
int
(Nur WARP 2,Energy Manager) Illegal Data Access
illegal_data_value
int
(Nur WARP 2,Energy Manager) Illegal Data Value
slave_device_failure
int
(Nur WARP 2,Energy Manager) Slave Device Failure
meter/all_values
Alle Messwerte, die vom eingebauten Stromzähler gemessen werden. Benötigt das Feature "meter_all_values". Hintereinanderliegende Werte die mit .. gekennzeichnet sind, beziehen sich auf die drei Phasen L1, L2 und L3.
Index Bedeutung
[0..2]
float (V)
Spannung gegen Neutral
[3..5]
float (A)
Strom
[6..8]
float (W)
Wirkleistung
[9..11]
float (VA)
Scheinleistung
[12..14]
float (var)
Blindleistung
[15..17]
float
Leistungsfaktor; Das Vorzeichen des Leistungsfaktors gibt die Richtung des Stromflusses an.
[18..20]
float (°)
relative Phasenverschiebung
[21]
float (V)
Durchschnittliche Spannung gegen Neutral
[22]
float (A)
Durchschnittlicher Strom
[23]
float (A)
Summe der Phasenströme
[24]
float (W)
Gesamtwirkleistung
[25]
float (VA)
Gesamtscheinleistung
[26]
float (var)
Gesamtblindleistung
[27]
float
Gesamtleistungsfaktor
[28]
float (°)
Gesamtphasenverschiebung
[29]
float (Hz)
Frequenz der Versorgungsspannung
[30]
float (kWh)
Wirkenergie (Import; vom Fahrzeug aufgenommen)
[31]
float (kWh)
Wirkenergie (Export; vom Fahrzeug abgegeben)
[32]
float (kvarh)
Blindenergie (Import; vom Fahrzeug aufgenommen)
[33]
float (kvarh)
Blindenergie (Export; vom Fahrzeug abgegeben)
[34]
float (kVAh)
Gesamtscheinenergie
[35]
float (Ah)
Transportierte elektrische Ladung
[36]
float (W)
Bezogene Wirkleistung; Entspricht Import-Export-Differenz
[37]
float (W)
Max. bezogene Wirkleistung; Höchster gemessener Wert
[38]
float (VA)
Bezogene Scheinleistung; Entspricht Import-Export-Differenz
[39]
float (VA)
Max. bezogene Scheinleistung; Höchster gemessener Wert
[40]
float (A)
Bezogener Neutralleiterstrom
[41]
float (A)
Max. bezogener Neutralleiterstrom; Höchster gemessener Wert
[42]
float (V)
Spannung L1 zu L2
[43]
float (V)
Spannung L2 zu L3
[44]
float (V)
Spannung L3 zu L1
[45]
float (V)
Durchschnittliche Spannung zwischen Phasen
[46]
float (A)
Neutralleiterstrom
[47..49]
float (%)
Total Harmonic Distortion (THD) der Spannung
[50..52]
float (%)
Total Harmonic Distortion (THD) des Stroms
[53]
float (%)
Durchschnittliche Spannungs-THD
[54]
float (%)
Durchschnittliche Strom-THD
[55..57]
float (A)
Bezogener Strom
[58..60]
float (A)
Max. bezogener Strom; Höchster gemessener Wert
[61]
float (%)
Spannungs-THD L1 zu L2
[62]
float (%)
Spannungs-THD L2 zu L3
[63]
float (%)
Spannungs-THD L3 zu L1
[64]
float (%)
Durchschnittliche Spannungs-THD zwischen Phasen
[65]
float (kWh)
Summe der Gesamtwirkenergien; Import-Export-Summe aller Phasen
[66]
float (kvarh)
Summe der Gesamtblindenergien; Import-Export-Summe aller Phasen
[67..69]
float (kWh)
Wirkenergie (Import; vom Fahrzeug aufgenommen)
[70..72]
float (kWh)
Wirkenergie (Export; vom Fahrzeug abgegeben)
[73..75]
float (kWh)
Gesamtwirkenergie; Import-Export-Summe
[76..78]
float (kvarh)
Blindenergie (Import; vom Fahrzeug aufgenommen)
[79..81]
float (kvarh)
Blindenergie (Export; vom Fahrzeug abgegeben)
[82..84]
float (kvarh)
Gesamtblindenergie; Import-Export-Summe
meter/state_update
Setzt den Stromzählerzustand. Kann verwendet werden, um einen externen Stromzähler an einen WARP Charger Smart anzubinden. Nicht gleichzeitig mit einem internen Stromzähler verwenden!
Name Bedeutung
state
int
Zustand des Stromzählers
  1. 0 - Kein Stromzähler verbunden
  2. 1 - Stromzähler unzuverlässig, eventuell nur einphasig verbunden.
  3. 2 - Stromzähler verbunden
type
int
Typ des verbauten Stromzählers. Nicht jeder Stromzähler wird von jeder Wallbox unterstützt!
  1. 0 - Kein Stromzähler verfügbar
  2. 2 - SDM630
  3. 3 - SDM72V2
WARP 1:
  1. 1 - SDM72
meter/values_update
Setzt die Messwerte des Stromzählers. Kann verwendet werden, um einen externen Stromzähler an einen WARP Charger Smart anzubinden. Nicht gleichzeitig mit einem internen Stromzähler verwenden!
Name Bedeutung
power
float (W)
Die aktuelle Ladeleistung.
energy_rel
float (kWh)
Die geladene Energie seit dem letzten Reset.
energy_abs
float (kWh)
Die geladene Energie seit der Herstellung des Stromzählers.
meter/phases_update
Setzt die angeschlossenen und aktive Phasen. Kann verwendet werden, um einen externen Stromzähler an einen WARP Charger Smart anzubinden. Nicht gleichzeitig mit einem internen Stromzähler verwenden!
Name Bedeutung
phases_active
bool[3]
Die derzeit aktiven Phasen
  1. [0] - Phase L1 aktiv
  2. [1] - Phase L2 aktiv
  3. [2] - Phase L3 aktiv
phases_connected
bool[3]
Die angeschlossenen Phasen
  1. [0] - Phase L1 angeschlossen
  2. [1] - Phase L2 angeschlossen
  3. [2] - Phase L3 angeschlossen
meter/all_values_update
Setzt alle Messwerte, die von unterstützten Stromzählern gemessen werden. Kann verwendet werden, um einen externen Stromzähler an einen WARP Charger Smart anzubinden. Nicht gleichzeitig mit einem internen Stromzähler verwenden! Hintereinanderliegende Werte die mit .. gekennzeichnet sind, beziehen sich auf die drei Phasen L1, L2 und L3.
Index Bedeutung
[0..2]
float (V)
Spannung gegen Neutral
[3..5]
float (A)
Strom
[6..8]
float (W)
Wirkleistung
[9..11]
float (VA)
Scheinleistung
[12..14]
float (var)
Blindleistung
[15..17]
float
Leistungsfaktor; Das Vorzeichen des Leistungsfaktors gibt die Richtung des Stromflusses an.
[18..20]
float (°)
relative Phasenverschiebung
[21]
float (V)
Durchschnittliche Spannung gegen Neutral
[22]
float (A)
Durchschnittlicher Strom
[23]
float (A)
Summe der Phasenströme
[24]
float (W)
Gesamtwirkleistung
[25]
float (VA)
Gesamtscheinleistung
[26]
float (var)
Gesamtblindleistung
[27]
float
Gesamtleistungsfaktor
[28]
float (°)
Gesamtphasenverschiebung
[29]
float (Hz)
Frequenz der Versorgungsspannung
[30]
float (kWh)
Wirkenergie (Import; vom Fahrzeug aufgenommen)
[31]
float (kWh)
Wirkenergie (Export; vom Fahrzeug abgegeben)
[32]
float (kvarh)
Blindenergie (Import; vom Fahrzeug aufgenommen)
[33]
float (kvarh)
Blindenergie (Export; vom Fahrzeug abgegeben)
[34]
float (kVAh)
Gesamtscheinenergie
[35]
float (Ah)
Transportierte elektrische Ladung
[36]
float (W)
Bezogene Wirkleistung; Entspricht Import-Export-Differenz
[37]
float (W)
Max. bezogene Wirkleistung; Höchster gemessener Wert
[38]
float (VA)
Bezogene Scheinleistung; Entspricht Import-Export-Differenz
[39]
float (VA)
Max. bezogene Scheinleistung; Höchster gemessener Wert
[40]
float (A)
Bezogener Neutralleiterstrom
[41]
float (A)
Max. bezogener Neutralleiterstrom; Höchster gemessener Wert
[42]
float (V)
Spannung L1 zu L2
[43]
float (V)
Spannung L2 zu L3
[44]
float (V)
Spannung L3 zu L1
[45]
float (V)
Durchschnittliche Spannung zwischen Phasen
[46]
float (A)
Neutralleiterstrom
[47..49]
float (%)
Total Harmonic Distortion (THD) der Spannung
[50..52]
float (%)
Total Harmonic Distortion (THD) des Stroms
[53]
float (%)
Durchschnittliche Spannungs-THD
[54]
float (%)
Durchschnittliche Strom-THD
[55..57]
float (A)
Bezogener Strom
[58..60]
float (A)
Max. bezogener Strom; Höchster gemessener Wert
[61]
float (%)
Spannungs-THD L1 zu L2
[62]
float (%)
Spannungs-THD L2 zu L3
[63]
float (%)
Spannungs-THD L3 zu L1
[64]
float (%)
Durchschnittliche Spannungs-THD zwischen Phasen
[65]
float (kWh)
Summe der Gesamtwirkenergien; Import-Export-Summe aller Phasen
[66]
float (kvarh)
Summe der Gesamtblindenergien; Import-Export-Summe aller Phasen
[67..69]
float (kWh)
Wirkenergie (Import; vom Fahrzeug aufgenommen)
[70..72]
float (kWh)
Wirkenergie (Export; vom Fahrzeug abgegeben)
[73..75]
float (kWh)
Gesamtwirkenergie; Import-Export-Summe
[76..78]
float (kvarh)
Blindenergie (Import; vom Fahrzeug aufgenommen)
[79..81]
float (kvarh)
Blindenergie (Export; vom Fahrzeug abgegeben)
[82..84]
float (kvarh)
Gesamtblindenergie; Import-Export-Summe
meter/reset
Setzt den Energiezähler zurück.
Leerer Payload. Es muss einer der folgenden Werte übergeben werden: null, "", false, 0, [] oder {}
Löst eine einmalige Aktion aus. Nachrichten, die über den Broker retained wurden, werden ignoriert.
meter/last_reset
Der Zeitpunkt des letzten Zähler-Resets (siehe meter/reset) als Unix-Timestamp. 0 falls kein Reset durchgeführt wurde, oder zum Zeitpunkt des Resets keine Netzwerk-Zeitsynchronisierung vorlag.
Name Bedeutung
last_reset
int (s)
Unix-Timestamp des Zeitpunkts des letzten Zähler-Resets.
meter/type_override (Nur WARP 1)
Erlaubt es den verbauten Zählertyp zu überschreiben, falls die Auto-Detektion nicht funktioniert. Der Wert kann über meter/type_override_update mit dem selben Payload aktualisiert werden.
Kann abgekürzt werden.
Name Bedeutung
type
int
Stromzählertyp, der verwendet werden soll
  1. 0 - Kein Stromzähler verfügbar
  2. 1 - SDM72
  3. 2 - SDM630
  4. 3 - SDM72V2
  5. 255 - Typ-Override nicht aktiv. Stromzählertyp wird automatisch detektiert.
meter/history
Eine 48-Stunden-Historie der Ladeleistung in Watt. Bisher fehlende Werte werden durch null angezeigt. Die Historie wird von hinten nach vorne gefüllt, sodass null-Werte nur geschlossen am Anfang des Arrays auftreten, falls der ESP innerhalb der letzten 48 Stunden neugestartet wurde. Es werden bis zu 720 Werte ausgegeben, das entspricht einem Messwert alle 4 Minuten. Diese Messwerte sind der jeweilige Durchschnitt dieser 4 Minuten.
Name Bedeutung
offset
float (s)
Das Alter des zuletzt gemessenen Wertes.
samples
int[..]
Die gemessenen Werte.
meter/live
Die letzten Ladeleistungs-Messwerte. Auf Basis dieser Werte werden die Durchschnittswerte für meter/history generiert.
Name Bedeutung
offset
float (s)
Das Alter des zuletzt gemessenen Wertes.
samples_per_second
float (Hz)
Die Anzahl der gemessenen Werte pro Sekunde.
samples
int[..]
Die gemessenen Werte. Abhängig von der Länge des Arrays und dem samples_per_second-Wert kann ermittelt werden, wie weit in die Vergangenheit die Messwerte reichen.