-
Notifications
You must be signed in to change notification settings - Fork 204
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
use Go-e API V2 instead of API V1 (in case of HWv3 which supports it) #2460
base: master
Are you sure you want to change the base?
Conversation
oldcurrent=$(echo $output | jq -r '.amp') | ||
current=$(</var/www/html/openWB/ramdisk/llsoll) | ||
if (( oldcurrent != $current )) && (( $current != 0 )) ; then | ||
curl --silent --connect-timeout $goetimeoutlp1 -s http://$goeiplp1/api/set?amp=$current > /dev/null |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ist bei der neuen API keine Unterscheidung zwischen amp
und amx
erforderlich?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nein, hier gibt es nur noch den Wert amp
.
Die Unterscheidung zwischen amx
und amp
war ja, das amp
persistent ist, also der Wert ins Flash geschrieben wird. Um zu verhindern, das man damit auf Dauer durch "ständiges" Neusetzen (was bei PV Regelung ja der Fall ist) das Flash "kaputt" schreibt wurde der Wert amx
eingeführt.
Mit der neuen HW Generation (sowie neuer SW) ist go-e dieses Problem aber von einer neuen Seite angegangen mit einem intelligenten bzw. intelligenteren Ansatz zur Persistierung, hier das Statement von go-e (habe extra nochmals angefragt):
"Da du allerdings wohl ohnehin bereits eine neuere Hardware-Version hast, musst du dir hier generell keine Sorgen machen.
Hier wird ein Log geschrieben und immer hinten der geänderte Einstellungwert angehängt. Da ein sehr großer Bereich im Flash dafür vorgesehen ist, setzt sich das einfach auf dem nächsten Block fort wenn noch mehr Daten geschrieben werden. Erst wenn alle Blöcke vollgeschrieben wurden, wird das komprimiert, alle Blöcke wieder mit 0 initialisiert und das Log von vorne geschrieben. Daher muss man sich hier keine Sorgen um Langzeit Zuverlässigkeit machen."
Überschlagsmäßig würde ich das unterstreichen (mehrere 1000 Male den Wert schreiben, bis der Sektor gelöscht werden muss und der verkraftet mind. 1000 Zyklen - eher 10000 => da sollte länger funktionieren, als die eigentliche alterungsbedingte Flashlebensdauer).
Da es die neue API ausschließlich bei der neuen HW-Generation gibt, sollte es somit kein Problem geben.
…into GoeAPIV2_snaptec
Mit der HW-Generation V3 des Go-e chargers wurde eine neue Version der API eingeführt (https://github.com/goecharger/go-eCharger-API-v2).
Die HWv3 kann anhand des Vorhandenseins des Parameters fsp (1-3 Phasenumschaltung) detektiert werden, da die HWv2
diesen nicht unterstützt. Dieser Parameter wird nur gelesen bzw. auf tatsächlich Vorhandensein überprüft.
Der Vorteil der APIv2 ist im Moment das der Zählerstand nicht mehr nur in ganzen kWh so wie in APIv1, sondern mit drei Nachkommastellen (so wie der der openWB selbst - GoE ist natürlich ungenauer, da nicht MID geeicht) zurückgeliefert wird.
Mit der Änderung werden somit sowohl "ältere" Go-e (mit APIv1) als auch "neuere" mit HWv3 (mit APIv2) automatisch erkannt und unterstützt.
Die Unterstützung ist für LP1 bis LP3 eingebaut.