NEWS
Test Adapter myPorsche v0.0.x
-
@icke-pp Gerne vielleicht auch dann mit Modell tombox2020@gmail.com
-
@tombox hast Post
-
@tombox Ich habe meinen ersten Test gemacht und glaube ich weiß was passiert.
Der "Zeitstempel" wird zwar alle 10 Minuten aktualisiert aber der "Wert" verändert sich dadurch nicht. Das heißt es werden keine neuen Statis über den Porsche Login von deinem Fahrzeug gezogen sondern du loggst dich mit dem Adapter lediglich auf den Porsche Server ein und schaust nach welche Daten dort liegen. Aber das Fahrzeug aktualisiert seine "Werte" deshalb nicht an den Porsche Server. Da fehlt der Trigger aus dem Adapter.
Öffne ich auf dem iPhone die Porsche App und lasse die App meinen Fahrzeugstatus mit dem Porsche Server synchronisieren empfängt der Porsche Adapter bei der nächsten Abfrage auch die neuen Daten des Fahrzeugs.
Da ich aber mit dem ioBroker den halbwegs aktuellen Fahrzeugstand haben will (alle 10 Minuten wie im Adapter konfiguriert) ohne die Porsche App auf dem iPhone alle 10 Minuten öffnen zu müssen muss hier ein "Trigger" her der das Fahrzeug dazu bringt seinen Status an den Porsche Server zu übermitteln damit du diesen über den Adapter dann auch abfragen kannst.
Ich muss jetzt noch einmal ausprobieren was passiert wenn ich den Trigger für den Fahrzeugsync über "porsche.0.Fahrgestellnummer.remote.Refresh" manuell auf "true" setze. Vielleicht ist das der Trigger der dann den Fahrzeugsync bewirkt. Das ganze über die Porsche App zu aktualisieren ist etwas umständlich. Jetzt muss ich aber erstmal laden um zu sehen ob es das Problem beseitigt.
Wenn das hilft müsste das in den Adapter rein das auch das Fahrzeug seinen aktuellen Status zuerst an den Porsche Server schickt und dann kannst du die Daten vom Porsche Server abfragen. Das verdoppelt aber die Wartezeit auf 20 Minuten. 10 Minuten für den Fahrzeugsync und erst dann nach den nächsten 10 Minuten siehst du die Werte. Da muss man einfach mal ausprobieren wie schnell man die Daten vom Fahrzeug und vom Porsche Server erhalten kann. Da wäre ich mit 2x 5 Minuten schon zufrieden.
-
Test mit dem setzen des Wertes "porsche.0.Fahrgestellnummer.remote.Refresh" = "true" hat leider nicht geholfen die Fahrzeugdaten an den Porsche Server anzutriggern. Es werden lediglich die Adapter Daten vom Porsche Server neu geladen aber nicht das Fahrzeug angetriggert seine Daten an den Porsche Server zu senden.
Gibt es vielleicht eine Developer Doku seitens Porsche mit der Erläuterung welche Statis man abfragen und triggern kann? Vielleicht steht dort diese Option drin. Die Porsche App macht ja nichts anderes als das Fahrzeug anzusprechen um seine Daten an den Porsche Server zu senden.
So wie der Adapter jetzt ist, funktioniert dieser zwar wie er soll aber man ist auf das öffnen der Porsche App auf dem iPhone angewiesen damit die Fahrzeugdaten aktualisiert werden.
-
@icke-pp Ich habe mal ein force refresh eingebaut der beim start oder alle 3h oder via remote command ausgeführt wird. mal die GitHub version testen ob das zu oft ist.
-
@tombox super. Ich probier es gleich mal aus. Danke für die schnelle Hilfe!!
-
@tombox Jetzt brauch ich doch kurz deine Hilfe da ich so tief im ioBroker nicht drin bin. Ich habe jetzt über den "Experten Modus" direkt von Github den Adapter installiert. Wie erkenne ich jetzt ob ich deine neuen Skripte installiert habe? Die Versionsnummer ist ja noch bei 0.0.3.
Oder muss ich das anders installieren zum testen? Das habe ich noch nie gemacht. -
@icke-pp Version is bisher gleich. Unter remote müsst es jetzt Force_Refresh geben
-
@tombox Ist vorhanden. Habe das manuell getriggert inkl. "Bestätigt". Der "Wert" steht auf "true" und ich sehe das der "Zeitstempel" ebenfalls neu ist aber es kam kein Update des Fahrzeugs. Im Moment lädt das Fahrzeug fleißig vor sich hin und ich sehe an der Walbox das ich definitiv ein paar kW geladen habe. Das Fahrzeug muss also auf jeden Fall neue Werte haben.
Der "Force_Refresh" scheint also nicht den Fahrzeugstatus zu triggern. -
@icke-pp Befehle werden immer ohne "Bestätigt" getrigert
-
@tombox Habe weiter getestet mit deiner neuen Test Version. Mit dem "Force_Refresh" werden auch die Fahrzeugdaten abgerufen! Das scheint die Lösung zu sein. Allerdings ist mir beim auslösen mehrmals mein Raspi abgeschmiert und war nicht mehr erreichbar. Nachdem ich den aber komplett neu gestartet habe scheint er jetzt stabil zu laufen.
-
@icke-pp Bitte mal testen wie oft das Fahrzeug so ein refresh abkann. der adapter macht es alle 3h.
Aber es weckt das Fahrzeug immer wieder auf und kann zu Batterieentladung im Stand führen. Bzw kann Porsche auch ein limit drin haben -
@tombox Ich werde mal während der nächsten Ladesession probieren. Mit der Batterieladung dürftest du Recht haben aber dann sollten wir versuchen einen Marker zu finden der unnötige Abfragen verhindert.
Ich könnte mir vorstellen die heimische Wallbox nach dem Ladezustand abzufragen ob gerade eine Ladung im Gang ist. Solange geladen wird an der heimischen Wallbox kann der Intervall mit dem "Force_Refresh" getriggert werden. Ist keine Ladung vorhanden da das Fahrzeug abgesteckt oder voll ist kann der "Force_Refresh" beendet werden. Dann müsste in dein Adapter ein Feld rein das man frei definieren kann um auf den Zustand der Wallbox verlinken zu können.
Ich habe dazu mal in meiner Wallbox (Keba C-Series) nachgeschaut aber ich sehe dort nur die Möglichkeit die Leistungswerte abzufragen die allgemeine Gültigkeit für andere Wallboxen haben dürften. Ansonsten habe ich nur noch einen Trigger der den Status der Ladung mit Zahlen darstellt. Aber sowas dürfte wiederum nicht jeder haben. Oder du machst das als freie Auswahl das man den State selbst definieren kann und du diese Variable dann abfragst und den "Force_Refresh" nur bei gesetztem Wert triggerst.Als Beispiel bei meiner Keba Wallbox:
kecontact.0.state 3Mit dem Wert "3" ist eine Ladung gerade im Gang. Eine Alternative ist natürlich die Spannung auszulesen. Wenn diese größer NULL ist wird geladen und der "Force_Refresh" kann im Interval getriggert werden.
-
alle 5 Minuten sind bislang kein Problem. Funktioniert zuverlässig. Habe es auch schon alle 2 Minuten versucht, da meckert auch niemand bislang. Müsste ich aber noch länger testen um das wirklich bestätigen zu können. Porsche kann da sicherlich irgendwann die Tür zu machen. Die offen zugängliche Porsche API Doku sagt zu den maximalen Intervallen nichts aus. Und die Batterie könnte dann wirklich irgendwann ein Thema werden da die Steuergerät normalerweise nach 30 Minuten in den Tiefschlaf gehen. Das passiert dann nicht mehr und der Stromverbrauch könnte dann zum Problem werden.
-
@icke-pp Solche Sachen sollten dann via Skript zb Rules oder blockly gemacht werden
-
ich würde sagen Porsche gefällt das gar nicht alle 5 Minuten oder die Server sind mal wieder abgestürzt. Ist ja auch nicht unüblich. Ist schließlich Freitag ...
################
porsche.0
2022-10-14 16:35:00.452 error {"code":1000,"title":"Etwas ist schief gelaufen","message":"Die Funktion ist zurzeit nicht verfügbar. Bitte versuchen Sie es erneut oder wenden Sie sich an den Porsche Support.","requestId":"missing_trace_id","errorCode":"27C00","timestamp":"2022-10-14T14:35:00Z"}porsche.0
2022-10-14 16:35:00.452 error AxiosError: Request failed with status code 502
############### -
Der Adapter funktioniert wirklich sehr gut. Bei meinem Mercedes konnte ich auch den Reifendruck abrufen, diesen finde ich hier nicht. Ist es nicht möglich ?
-
Kann es sein, dass der Adapter nicht mehr funktioniert, bei mir kann er sich nicht mehr anmelden ?
-
@mrniceguy selbiges bei mir. Ich bekomme die folgende Fehlermeldung:
The request signature we calculated does not match the signature you provided. Check your key and signing method.
Bei manuellen update auf die 0.1.0 scheint es aber wieder zu gehen.
-
Ich galube Porsche hat wieder etwas gedreht, bei mir ist wieder kein Login mehr möglich.
AxiosError: Request failed with status code 400