Hallo zusammen,
beim Anbinden der Warp2 an meine Hausautomation, die ich hauptsächlich in Node-Red realisiert habe, bin ich auf ein Problem gestoßen:
Laut der Warp2-API-Dokumentation muss beim Senden von stop_charging / start_charging via MQTT eine leere Payload (null) übergeben werden.
Über den in Node-Red standardmäßig integrierten "MQTT out node" habe ich keine Möglichkeit gefunden, dass der Start- oder Stopp-Befehl angenommen wird. Bei Übergabe von
msg.payload=null;
wird im Ereignislog der Warp2 "MQTT: Failed to update evse/start_charging from MQTT payload: Failed to deserialize string: EmptyInput" angezeigt.
Bei Übergabe von
msg.payload={};
wird "MQTT: Failed to update evse/start_charging from MQTT payload: JSON null node was not null" angezeigt.
Ich habe noch diverse weitere Kombinationen ausprobiert, aber das Ergebnis war immer einer der o.g. Fehler. Nach etwas Suche habe ich vermutlich die Ursache gefunden, der Node-Red-MQTT-Node nutzt eine an ihn geschicke Payload=null zum Löschen gespeicherter Topics (Link).
Ich habe dieses Problem nun umgangen indem ich einen anderen MQTT-Node (node-red-contrib-mqtt-plus) nutze, wenn ich an diesen
msg.payload=null;
sende, funktioniert die Steuerung der Box einwandfrei.
Vielleicht hilft dieser Beitrag dem ein oder anderen in der gleichen Situation etwas Zeit zu sparen.
Und außerdem wäre es ja vielleicht möglich das Interface auf Wallbox-Seite hinsichtlich der Akzeptanz von Start-/Stopp-Befehlen etwas toleranter zu gestalten. :-) Ich nutze bei Node-Red gerne erst die Bordmittel, bevor ich zusätzliche Nodes bemühe :-)
Viele Grüße
Patrick