[Modul] evccMQTT

Du findest es im Module Store, wenn du exakt nach " evccMQTT" suchst. Vorausgesetzt , du hast mindestens Symcon 8.1.

Hey, das läuft super…

Magst du bitte noch den Forecast hinzufügen?
Er taucht unter dem topic evcc/Sites/forecast/solar auf
sofern es dort aktiviert ist.

Forecast today und tomorrow wäre super

Klingt sinnvoll. Schaue ich mir mal an.

1 „Gefällt mir“

Ich habe die aktuelle Beta um das Modul evccSiteForecasts ergänzt. Gerne mal ausprobieren.

Hallo Burkhard,

irgendwie habe ich da wieder ein seltsames Problem, die Phasenumschaltung will mit deinem Modul nicht mehr.

Ich habe gestern auf Symcon 9.0 upgedatet, bin mir aber sicher dass es dannach noch ging. Heute habe ich auch evcc auf die aktuellste Version gezogen (0.303.1) und jetzt klappt das nicht mehr :confused:

Im Testbereich springt er kurz auf den Wert, geht dann aber wieder auf die ursprüngliche Einstellung zurück. Mit dem MQTT Explorer sehe ich die Änderung auch gar nicht.

Wenn ich jedoch im evcc Webinterface die Phasen ändere, zeigt er dies auch direkt im Modul (und MQTT-Explorer) an!?

Komplett seltsam

Hier noch die Debug-Ausgabe vom Umschaltversuch:

dump.txt (50,9 KB)

edit:

Ah, ich glaube da hat sich was geändert. Du sendest das ganze nach:

Topic: evcc/loadpoints/1/phases/set, Payload: 3

evcc macht das jetzt aber wohl über diesen Topic:

evcc/loadpoints/1/phasesConfigured

Kannst du das validieren?

Hier der Dump vom Modul, wenn ich die Phasen im evcc umschalte:

Ups, das wurde mal eben zwischendurch geändert :scream:

Ich ziehe das dann bei mir nach.

1 „Gefällt mir“

Dankeschön. Läuft wie es soll. :+1:

@bumaas

Ich habe mal eine Frage. Es gibt die Möglichkeit in EVCC eine Ladeplanung zu erstellen. Die Werte kann ich auch auslesen, aber leider nicht in EVCC schreiben, was mir sehr wichtig wäre. Hast du eine Idee, wie das ginge. Du steckst da ja etwas tiefer drin.

Es handelt sich um de Variablen:
n = Plannummer

  • evcc/vehicles/{name}/repeatingPlans/n/soc

  • evcc/vehicles/{name}/repeatingPlans/n/time

  • evcc/vehicles/{name}/repeatingPlans/n/weekdays/{1-7}

  • evcc/vehicles/{name}/repeatingPlans/n/active

Das Modul unterstützt momentan ja noch keine Ladepläne und ehrlich gesagt scheue ich mich da auch vor, da das schnell sehr komplex wird, wenn man es allgemeingültig anbieten möchte.

Aber du sagst, dass du die Werte bereits auslesen kannst. Wie machst du das konkret?

Ich gehe eigentlich davon aus, dass man die Werte dann auch auf die gleiche Weise schreiben kann.

Wenn ein Plan z. B. unter repeatingPlans/1 liegt und dort das Ladeziel gesetzt werden soll, wäre das typischerweise so etwas wie:

  • Topic: evcc/vehicles/<name>/repeatingPlans/1/soc/set
  • Payload: 80

Damit würdest du den Ziel-SoC des ersten wiederholenden Plans auf 80 % setzen.

Magst du das - vielleicht mit dem MQTT Explorer - mal ausprobieren? Vielleicht macht es Sinn, im Modul eine allgemeine Sende Funktion anzubieten.

So etwas wie

private function sendMqttMessage(string $topic, string|int|float|bool $payload, bool $retain = false): bool

Dann könnte man darüber flexibel Sonderfälle abdecken.

Ich habe mal einen Konfigurator zum Gateway angelegt. Da bekomme ich die Topics auch angezeigt. Ich weiß nur nicht, wie ich dann Werte schreiben kann. Wenn ich sie in evcc ändere, bekomme ich das in Symcon auch angezeigt.

Dann öffnet sich auch beim Erstellen der Variable folgender Baum:

Wie ich eine Variable im MQTT Explorer ändern kann, weiß ich ehrlichgesagt nicht

Ah, du bist auf dem richtigen Weg und nur einen Schritt vom Ziel entfernt :slight_smile:

Zum Schreiben wird bei evcc das betroffene Topic + ‚/set‘ genommen. Der Wert geht über den Payload. Also wie oben beschrieben:

Du brauchst nur noch deine „MQTT Server Gerät“ Instanz anzupassen. Hier ein Beispiel für den limitSoc meines Ladepunktes:

Entscheidend ist der Haken bei „Nutze abweichendes Thema beim Senden“ und das um /set ergänzte Sendethema.

Prima, Danke. Aber dann scheint das bei evcc nicht vorgesehen, denn die Variable ändert sich dort nicht. Ich habe es mal auf die Wunschliste gesetzt.