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. Wird noch nicht unterstützt

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 ("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.

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.

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.

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..11]
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
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)
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.
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/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
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/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/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/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.

Stromzähler

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 - SDM630
  3. 3 - SDM72V2
WARP 1:
  1. 1 - SDM72
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) Local Timeout
global_timeout
int
(Nur WARP 2) Global Timeout
illegal_function
int
(Nur WARP 2) Illegal Function
illegal_data_access
int
(Nur WARP 2) Illegal Data Access
illegal_data_value
int
(Nur WARP 2) Illegal Data Value
slave_device_failure
int
(Nur WARP 2) 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.
meter/live
Die letzten Ladeleistungs-Messwerte. Auf Basis dieser Werte werden die Durchschnittswerte für meter/history generiert.
Name Bedeutung
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.

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/state
Der Zustand des Lastmanagers und aller konfigurierten Wallboxen. Wird vom Webinterface zur Anzeige verwendet
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
int (mA)
Kleinste Strommenge, die einer Wallbox zugeteilt werden soll, damit diese einen Ladevorgang beginnt. Hiermit kann beeinflusst werden wie viele Wallboxen gleichzeitig laden.
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[8]
Die Benutzer
  1. [0..7] - 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 Ladungen vorkommen in einem Binärformat aus.

Ladetracker

charge_tracker/state
Zustand des Ladeträckers
Name Bedeutung
tracked_charges
int
Anzahl der insgesamt aufgezeichneten Ladungen.
first_charge_timestamp
int (min)
Ein Unix-Timestamp in Minuten, der den Startzeitpunkt der ersten Ladung angibt. 0 falls zum Startzeitpunkt keine Zeitsynchronisierung verfügbar war.
charge_tracker/last_charges
Die letzten (bis zu) 30 aufgezeichneten Ladungen
Index Bedeutung
[0..29]
object
Eine getrackte Ladung
Name Bedeutung
timestamp_minutes
int (min)
Ein Unix-Timestamp in Minuten, der den Startzeitpunkt der Ladung angibt. 0 falls zum Startzeitpunkt keine Zeitsynchronisierung verfügbar war.
charge_duration
int (s)
Dauer des Ladevorgangs.
user_id
int
ID des Benutzers der die Ladung 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 die Ladung 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 der Ladung. null falls zum Startzeitpunkt kein Zähler verfügbar war.
evse_uptime_start
int (s)
Uptime des Ladecontrollers beim Start der Ladung. 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 der Ladung angibt. 0 falls zum Startzeitpunkt keine Zeitsynchronisierung verfügbar war.
authorization_type
int
Gibt an wie der Ladevorgang freigeschaltet wurde.
  1. 0 - Benutzerfreigabe deaktiviert, Ladung 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 - Ladung 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 - Ladung 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 Ladungen und die Nutzernamenhistorie. Kann nicht rückgängig gemacht werden! Danach wird automatisch ein Neustart ausgeführt.
Kann abgekürzt werden.
Name Bedeutung
do_i_know_what_i_am_doing
bool
Gibt an ob der Löschvorgang ausgeführt werden soll
  1. true - Alle aufgezeichneten Ladungen und die Nutzernamenhistorie löschen
  2. false - Keine Aktion durchführen
charge_tracker/charge_log
Gibt alle aufgezeichneten Ladungen in folgendem Binärformat aus. Ladeeinträge sind 16 Byte lang und werden nacheinander ausgegeben. Die folgenden Indizes sind Byte-Offsets relativ zum Start einer aufgezeichneten Ladung. Alle Werte sind im Little-Endian-Format.
Index Bedeutung
[0..3]
int (min)
Ein Unix-Timestamp in Minuten, der den Startzeitpunkt der Ladung angibt. 0 falls zum Startzeitpunkt keine Zeitsynchronisierung verfügbar war.
[4..7]
float (kWh)
Zählerstand bei Start der Ladung. NaN falls zum Startzeitpunkt kein Zähler verfügbar war.
[8]
int
ID des Benutzers der die Ladung 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 der Ladung. 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[8]
Eine Liste authorisierter Tags.
  1. [0..7] - 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.

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_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.
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.
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.
full_duplex
bool
true bei einer Full-Duplex-Verbindung, sonst false
link_speed
int (Mbit/s)
Ausgehandelte Verbindungsgeschwindigkeit.
  1. 10 -
  2. 100 -
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 Ladungen 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.
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.

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
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.

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.
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
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.

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.