-
-
Notifications
You must be signed in to change notification settings - Fork 521
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
go-E charger : Änderung und Anzeige des EVCC Lademodus über Button und LED Farbe #11680
Comments
Schön wäre, cch/cid vllt. Nach Helligkeit zu unterscheiden (in der Annahme dass „idle“ beim Go-E nicht freigegebene Ladung bedeutet)? Knopf kann ich mir nicht vorstellen, da wir den dafür dauernd pollen müssten- leider meldet sich der Knopf ja nicht bei uns. |
Die Helligkeit kann man nur global verstellen und nicht individuell. Idle bedeutet freigegeben aber kein Fahrzeug angesteckt. Es gibt die 4 LED zustände Idle, waitcar, Charging und finished. Vermutlich müsste man dann auch noch waitcar mit der richtigen Farbe beschreiben. Wobei für mich der Hauptusecase eigentlich idle ist. Man geht zum Charger und möchte das Auto anstecken, dabei wissen welcher Mode gerade aktiv ist und diesen ggfs. über den knopfdruck in den gewünschten Modus bringen. Gerade jetzt im Winter wo meist keine PV Leistung hat und man das Auto einfach nur voll machen möchte ohne groß aufs Handy zu schauen etc. So 100% zufrieden bin ich mit den Farben alleine auch noch nicht. 4 Modi von EVCC über Farben zu unterscheiden ist ohne weitere Erklärung nicht easy. Zusätzlich die Anzahl der LEDs zu verwenden wäre natürlich schicker (wenige LEDs an -> PV mode und wenig Power / alle LEDs an = Full power freigegeben) Ich verstehe das Problem mit dem Button und notwendigem pollen. Das ist unschön. Ich habe das ganze Feature bei mir gerade über MQTT und nicht per Rest-API in Home Assistant eingebunden. Da bekomme ich dann einen Trigger weil der go-E aktiv eine Message mit dem neuen Zeitstempel an den MQTT Broker schickt sobald der Knopf gedrückt wurde. |
Wir nutzen das HTTP API, neu implementieren möchte ich es nicht.
ok
Je nach Modus (außer off) könnte man damit auch noch zeigen, ob evcc gerade lädt (also Charging in anderem Farbton). Dann könnte man außer Charging eine weniger gesättigte Farbe nehmen? Wäre hilfreich, nochmal die komplette Tabelle aufzumalen. |
Ich werd' hier in ein paar Wochen nen go-E Charger in Betrieb nehmen. Kann das dann gerne am lebenden Objekt entwickeln und testen. Aber falls jemand das vorher schon bauen mag, freu ich mich natürlich noch mehr 😂 |
Kleines update zu meinen Experimenten zu dem Thema. Scheinbar gibt es MQTT erst ab Go-E Hardware Version v3 d.h. Um kompatibel zu älteren Chargern zu bleiben müssten man ohnehin die HTTP API verwenden. Wie häufig fragt ihr die HTTP API denn aktuell ab ? Im Prinzip könnte man den Button auch jedes mal mit auslesen aber es würde eben einfach länger dauern bis die Änderung wirksam wird. Da beim Buttonpress ein Zeitstempel hinterlegt d.h. „Hochgezählt“ wird bekommt man den Knopfdruck auch durch Vergleich von „neuer != alter Zeitstempel“ mit wenn seltener abgefragt wird. Die User Experience wäre aber vermutlich nicht die beste wenn nicht direkt beim Knopfdruck etwas passiert. Das Abfrageintervall sollte daher schon im einstelligen Sekundenbereich liegen. |
Bei der EVCC Kofiguration wird eh zwischen den älteren und V3 unterschieden. Wenn die älteren da was nicht unterstützen, dann ist es natürlich schade, aber man kann es sauber zumindest für die Neuen umsetzen. Ich bin mir aber ziemlich sicher, dass bei meinem alten Go-e aus 2020 (glaube der müsste V2 sein) auch eine MQTT Option auswählbar war. Müsste ich mir aber ggfs. nochmal ansehen. Haber aber auch noch 2 unbenutzte Gemini (1x fix und 1x CEE 32A rot) da. Falls es bei der Entwicklung helfen würde, könnte ich auch welche von denen verleihen oder verkaufen. Als Kompromiss für das Polling würde ich evtl. vorschlagen, dass nur Knopfdrücke in einer bestimmten Zeit nach dem Anstecken berücksichtigt werden. |
@flushbug die Einschränkung, dass man die Leistung nicht mehr über den Button einstellen kann, gilt doch nur, wenn "im Netz" und mit EVCC verbunden. Sobald man mobil unterwegs ist, funkt ja EVCC nicht mehr dazwischen, richtig? |
@menkej nein, die durch den go-e durchschaltbaren leistungsstufen müssen über die goe App deaktiviert werden, damit sich diese nicht mit von Evcc gesteuerten maximalströmen überlagern. Diese Einstellung bleibt bestehen auch wenn Evcc nicht mehr verfügbar ist und müsste manuell wieder per App aktiviert werden. |
Was spricht eigentlich gegen das Polling? Frage bei einem anderem Projekt den Status des Buttons auch alle 2 Sekunden ab. Laut Go-E Support ist das für sie auch kein Problem. |
Da geht es aber ja nur um die vordefinierten Ampere. In der App hat man trotzdem noch den Schieberegler, den man bedienen kann. Dann hat man halt keinen blauen Kreis mehr worauf man drücken kann, sondern den Schieberegler. Kein großer Unterschied. Obwohl man da ja sowieso nicht mehr rumspielen sollte, wenn evcc die Steuerung übernimmt. Aber wenn man aus welchem Grund auch immer, evcc mal kurz deaktiviert, kann man das easy darüber einstellen, ohne dass man die vordefinierten Stärken wieder aktivieren müsste. Ich habe die Funktion mit dem Knopf bereits über HA umgesetzt, auf den Knopf drücken stellt bei mir von PV auf sofort um. Funktioniert wunderbar. |
wie hast du das mit dem Knopf in HA realisiert? wäre perfekt für mich. |
Das ist relativ einfach. Dadurch bekommst du einen sensor "last Button pressed" (mqtt topic lbp) und du erstellst eine Automatisierung, sobald sich dieser Status verändert schickst du per API einen Befehl an evcc |
ok ist soweit klar, nur wie schicke ich per API? |
Schau mal in die evcc Doku. Da gibt's die Referenz auf die API. |
Anbei mein Code. Hoffe es ist klar und funktioniert so. HA MQTT Sensordefinition -> configuration.yaml
HA Automation Code/YAML für den Mode Switcher
Code für den Farbwechsel
|
Danke dir hat soweit auch mit dem einfügen geklappt, jetzt nur kurze Verständnisfrage. mein Go hab ich eingebunden per mqtt und HACS Integration. muss ich den Topic bzw. überall in deinem Skript anpassen auf go_echarger_22XXXX. So heißt er nämlich, über go-ECharger finde ich ihn nicht bei den Integritäten etc. in EVCC hab ich 2 Loadpoints, ist die 1 Systemseitig oder wird das über mich definiert? |
Die HACS Integration verwendet ich nicht und diese wird auch nicht benötigt. EVCC ist bei mir der Master über den Charger. Die Loadpoints werden von EVCC durchnummeriert so wie du sie in der evcc.yaml angelegt hast. Wenn du mehrere hast bekommt der erste die 1, der zweite die 2 usw. Und dementsprechend musst du natürlich die richtige ID im Script einfügen. Auch hier am besten mal mit dem MQTT Explorer schauen was wo ist. |
versteh ich, EVCC soll bei mir auch der Master sein. Habe 2 go E, daher benötige ich schon eine Zuordnung. als Prefix steht bei mir in der goE App "go-ECharger/22XXXX/" im MQTT Explorer sehe ich das cid oder cch kommt ja von der Automatisierung, das schaut ja schon mal gut aus, nur halt nicht unter der Seriennummer = Skript anpassen. Loadpoints hab ich verstanden. EDIT: eig müsste er doch sobald ich in EVCC den Lademodus änder mir das auch im MQTT Explorer schreiben, bzw. dort ändern? |
Korrekt, Lademodus müsste in mqtt bei Änderung über die EVCC gui auch geändert werden. |
so jetzt sollte es gehen, MQTT war noch in evcc ausgeklammert. danke dir! |
Sehr viele OT Kommentare. Wenn ich es richtig verstehe, dann
Dann müsste eine neue GoE über MQTT Implementierung erstellt werden? Freiwillige vor- seitens Kernteam wollen wir das derzeit nicht angeben. Beispiele gibt es genug, siehe z.B. Warp oder OpenWB. Btw: https://github.com/goecharger/go-eCharger-API-v2/blob/main/mqtt-en.md does not document the required topics... |
Auf Basis der Diskussion im Slack hier der entsprechende Feature Request. link
Feature 1 : Anzeige des aktuellen EVCC Lademodus über die LED Farbe am go-E Charger.
Die Farbe kann über die API Keys "cid" (Farbe im Idle Mode) sowie "cch" (Farbe im Lademodus) über RGB Hex Werte gesetzt werden.
Programmablauf :
(Die Farben sind natürlich nur ein Vorschlag und könnten z.B. über die config anpassbar gemacht werden)
Feature 2 : Wechseln des EVCC Lademodus über den Hardware Button am go-E
Der Go-E Button wird üblicherweise zum durchschalten vordefinierter maximaler Ladeströme verwendet. Zusätzlich ist ein Druck auf den Button aber auch über die API abfragbar. Sobald der Button gedrückt wurde ist unter dem Key "lbp" ein Zeitstempel (Systemzeit) des letzten Knopfdrucks auslesbar. Der Zeitstempel ist unwichtig aber die Änderung des Werts kann als trigger benutzt werden.
Bei jedem Knopfdruck soll der EVCC Lademodus in definierter Reihenfolge weiter geschaltet werden. Zur Vereinfachung würde ich nur die beiden häufigen Modi "PV" und "now" anwählbar machen. Ließe sich aber z.B. auch konfigurierbar machen. Ist einer der anderen Modi "off" oder "minpv" aktiv wird beim Knopfdruck auf "now" geschaltet.
Um den Button ohne Seiteneffekte verwenden zu können müssen die internen Strompegel über die API jeweils auf 0A gesetzt werden damit das Feature deaktiviert wird. Tut man dies nicht schaltet der Charger die internen Limits mit jedem Kopfdruck weiter und begrenzt zusätzlich zu EVCC den Ladestrom auf das jeweils zufällig gesetzte Limit.
EVCC kann diese Konfiguration bei der Initialisierung über den apikey clp = [0,0,0,0,0] durchführen (setzen aller 5 Ladestufen auf 0A deaktiviert das feature)
Alternativ gibt es über die API die Möglichkeit den Wechsel des Ladestroms per Knopfdruck über den key "bac" = 0 zu deaktivieren. Ich habe dies getestet aber es führt beim Kopfdruck zu einer "Fehlermeldung" in Form von 5 roten LEDs was den Anwender sicher verwirrt. Die sinnvollere Lösung ist das setzen der Ladestufen auf 0A.
Programmablauf :
Feature 3 : Anzeige des freigegebenen Stroms über Anzahl leuchtender LEDs am charger (aktuell noch nicht umsetzbar)
Schick wäre es noch den aktuell über EVCC freigegebenen Strom über mehrere oder weniger leuchtende LEDs am charger zu signalisieren. Dies ist aber über die API aktuell aber noch nicht steuerbar. Ich habe einen entsprechenden Feature Request im Go-E Github gestellt.
Der go-E hat dieses Feature selbst eingebaut wenn man die eingebauten Stromstufen verwendet (z.B. Level 16A bei einem 32A charger bedeutet die hälfte der LEDs leuchten usw. Dies jetzt aber über die aktuelle API durch permanentes Anpassen der Stromstufen "clp" umzusetzen wäre sehr aufwändig und könnte auch zu Konflikten mit der EVCC Regelung führen wenn es nicht 100% richtig gebaut ist.
The text was updated successfully, but these errors were encountered: