NEWS
Test Adapter VW Connect für VW, ID, Audi, Seat, Skoda
-
NACHTRAG:
Habe nochmal alle Commits geprüft und konnte es beheben...
Haben die jetzt echt eine Prüfung, dass der User-Agent keinen Großbuchstaben enthalten darf??
Naja, läuft nun erstmal wieder. -
@giermann Nein es wurde explizit der ioBroker gesperrt
-
Also das ist dann langsam echt frech!!
Ich persönlich nutze den Adapter hauptsächlich, um der fehlerverseuchten Software des MIB3 auf die Sprünge zu helfen - meine programmierte Standheizung geht halt nur manchmal...
Und um nicht jeden Morgen die App und darin die Klimatisierung von Hand starten zu müssen, macht das jetzt ein Script. Schlimm genug, dass ich dafür die Remote-Dienste ständig bezahlen muss.Sonstige Anzeigen sind halt "nice to have" und die Bedienung über eine selbst gestaltete HA-GUI halt deutlich intuitiver und schneller als immer nur über die Handy-App.
Es ist eigentlich schon nicht nachvollziehbar, dass die API nicht dokumentiert ist - aber jetzt noch künstlich fremde Zugriffe zu sperren... da fehlen mir die Worte!@tombox davon abgesehen kann ich dir nicht oft genug für deinen Support danken!!
-
@giermann
Moin,
ich hatte seit Erscheinen des VW Connect Adapters ( Dank an @tombox !) die Befürchtung, daß zu häufige Zugriffe irgendwann unterbunden werden. Es macht IMHO auch keinen Sinn, wenn das Auto z.B. 3 Tage unbenutzt herumsteht, ständig den sich nicht änderden Status abzufragen. OK, bei einem e-Auto, welches an einer Wall-Box hängt, ist es vielleicht was anderes, wenn man z.B. die Ladekurve mitloggen will.Ich habe mir deshalb ein kleines JavaSript geschrieben, welches ich bei Bedarf über einen Button in der VIS triggern kann:
/* ################################################################ VW-Connect Adapter via VIS starten und wieder beenden ################################################################ */ //system.adapter.vw-connect.0.alive createState( 'javascript.0.Audi.vwconnect', { name: 'Restart VW-Connect', desc: 'Restart VW-Connect', type: 'boolean', def: false }); on({id: 'javascript.0.Audi.vwconnect', val: true}, function (obj) { //console.log("vw-connect starten"); setState("system.adapter.vw-connect.0.alive", true); setTimeout(function() { setState("system.adapter.vw-connect.0.alive", false); //console.log("Restart-Datenpunkt zurücksetzen"); setState("javascript.0.Audi.vwconnect", false); console.log("vw-connect nach 20 Sekunden gestoppt"); }, 20000); });
Der VW Connect Adapter ist bei mir standardmäßig gestoppt.
Nach Betätigung des VIS-Buttons, wird er gstartet, holt die Daten ab und wird nach 20 Sekunden wieder gestoppt.@Giermann :
In Deinem Fall mit der Standheizung, könnte man das Script evtl. erweitern, daß es automatisch per schedule zu einer bestimmten Uhrzeit gestartet wird , den entspr. Datenpunkt für die Standheizung auf "true" setzt ( aber das machst Du ja wohl schon) und sich danach wieder beendet.Natürlich ist es nicht "schön" wenn man für Remote-Dienste bezahlt und diese dann nicht mit anderer Software als der von VW/Audi/Seat etc. gewünschten, nutzen kann.
Daß die API nicht dokumentiert ist, könnte ich evtl. darauf zurückführen, daß die böse Konkurrenz (M......s, B.W) ja vielleicht was abgucken könnte, denn auch hier gilt das alte Sprichwort "Geld regiert die Welt".
Der Otto-Normal-User kann ja die App nutzen und warum sollen sich die Konzerne für uns paar Freaks krummlegen?Bei mir ist unter myAudi ist z.B. der Hinweis hinterlegt "Um Ihnen den Zugang zu allen Informationen und Dienstleistungen rund um Ihren Audi noch einfacher zu machen, überarbeiten wir derzeit unsere digitalen Services." deshalb ist es m.E. evtl. sinnvoll, mal ein wenig abzuwarten, bis die ihre Umbauten fertig haben, bevor @tombox sich bemüht jede kleine Unzulänglichkeit mit einer neuen Adapter-Version auszubügeln, nur um ein paar Tage später erneut Hand anzulegen.
Just my 2 Cents
JörgP.S.
Bei mir (Audi A3, Benziner) gibt es z.B. die Datenpunkte für die Fenster-Stati nicht mehr (die aber schon mal da waren) in der App aber angezeigt werden. Ich warte da erst mal ab, ob sie irgendwann mit einer finalen Adapter-Version (... wird's die jemals geben ? ) wieder vorhanden sind. -
@joergeli sagte in Test Adapter VW Connect für VW, ID, Audi, Seat, Skoda:
In Deinem Fall mit der Standheizung, könnte man das Script evtl. erweitern, daß es automatisch per schedule zu einer bestimmten Uhrzeit gestartet wird , den entspr. Datenpunkt für die Standheizung auf "true" setzt ( aber das machst Du ja wohl schon) und sich danach wieder beendet.
Genau genommen lese und interpretiere ich bei jedem Update die Einstellungen aller 3 Timer und ob die Klimatisierung auch ohne externe Stromzufuhr laufen darf bzw. diese vorhanden ist - mit andern Worten: ob die Klimatisierung aktuell laufen müsste.
Dazu die Beobachtung, dass sie 10 Minuten vor dem Timer gestartet und 20 Minuten danach beendet wird. Wenn nach diesen Kenntnissen die Klimatisierung laufen müsste, es aber nicht tut, folgt halt ein manueller Start!
Damit erhalte ich die Flexibilität, mal eben nach Gusto im Auto oder der App die Timer ändern oder (de)aktivieren zu können und helfe der hochmodernen Technik nur auf die Sprünge, wenn sie die simple Funktion einer Zeitschaltuhr nicht korrekt abbilden kann.Vielleicht ginge das ganze auch über OBD-II? Dann könnte man mit einem <5€ ESP32 das ganze offline im Auto direkt erledigen. Oder es findet sich mal ein Programmierer, der nicht nur Kaffee saufen kann und behebt endlich die verbleibenden Bugs?!
PS: ich darf so über diese Minderheit reden, da ich selbst dazu gehöre!
-
@giermann
Wenn ich das richtig verstehe, funktioniert die Standheizung auch mit der App nicht zuverlässig?
Dann würde ich bei Skoda so lange nerven, bis es die nervtOT:
Software und andere Unzulänglichkeiten:
Bei mir ist der sog. "Spurhalteassistent" im Auto installiert.
Der funktioniert selbst bei einem gut sichtbaren Mittelstreifen und 2 Seitenstreifen nur unzuverlässig.
Bei uns im Taunus sind die Straßen teilw. recht schmal und bei einem entgegenkommenden dicken Brummi hat mich der Spurhalteassistent als ich neben dem LKW war, fast seitlich unter dessen Ladefläche gesteuert.
Gut, ich kann den Spurhalteassistent manuell deaktivieren, muß das aber vor jeder neuen Fahrt machen, in dem ich mich durch gefühlt 6 Menüpunkte im Mäusekino hangeln muss - wer macht das schon.Anderes Beispiel: bei Dauerregen auf der Autobahn poppt ständig eine Meldung ... pling "Achtung eingeschränkte Sicht" auf - hallo, ich bin noch wach und sehe selbst, daß die Sicht schlecht ist
Im Gegenteil, durch das Aufploppen schaut man unweigerlich auf das Display und wird noch zusätzlich abgelenkt.Wenn - wie beim Spurhalteassistenten - sicherheitsrelevante Funktionen betroffen sind, müssen die 100%ig funktionieren und nicht nur dann und wann.... und ja, ich weiß, daß es mit der Frontkamera erfasst wird und wenn z.B. die Frontscheibe verschmutzt ist, die Funktion eingeschränkt ist - dann gehört es aber IMHO noch nicht auf den Massenmarkt.
Das gehört aber wieder in die Kategorie " die anderen machens ja auch so" und man könnte ja potentielle Kunden verlieren, wenn ich es nicht nachäffe.Ich habe mir dann einen OBDII-Dongle gekauft, mit dem ich einige Funktionen umprogrammieren konnte, so daß u.a. der Status des Spurhalteassistenten gespeichert wird, d.h. wenn ich ihn ausschalte, bleibt er auch bei jeder neuen Fahrt aus (bis ich ihn vielleicht mal wieder aktiviere). Der Dongle muss nur bei der Umprogrammierung gesteckt sein und kann danach abgezogen werden.
Ich kann jetzt wieder fahren, ohne daß sich meine Hände jedes Mal am Lenkrad bei Gegenverkehr verkrampfen.Meine Wenigkeit und wahrscheinlich wir alle hier sind ja für technischen SchnickSchnack zu haben, aber was zu viel ist, ist zu viel.
Da ich zu den älteren Semestern gehöre, frage ich mich manchmal, wie ich überleben konnte, als ich damals noch mit dem A...h gefühlt habe, was das Auto macht.
Heutzutage machen sich doch die wenigsten Gedanken darüber wie das Auto, bzw, die Physik funktioniert/reagiert, das schlaue Auto mit ABS, EDS, Kollisionswarner und was weiß ich noch alles, wird's schon richten... sorry für OT, aber das musste mal raus ...
-
@joergeli mit der App geht es meistens - wenn damit nicht, dann haben die Server Probleme... kann vorkommen, ist aber seltener geworden.
Bei mir ist tatsächlich das Problem, selbst wenn alles ordentlich eingestellt ist, unter täglich identischen Bedingungen: mal heizt er, mal nicht - stört natürlich immer nur im Winter.
Ich nerve seit 2 Jahren, werde inzwischen vom Freundlichen mehr oder weniger ignoriert und werde mir wohl eine andere Werkstatt suchen - aber wenn die von Skoda auch nur die Antwort bekommen "warte auf nächstes Update", können sie ja eigentlich auch nichts dafür.Wie auch immer - ich bleibe zwar am Ball, will aber bis dahin dennoch gern im vorgeheizten Auto fahren....
Jetzt aber: /OT ENDE
-
Hallo,
ich wollte den Adapter nutzen um den SOC und Reichweite für einen Audi Etron auszulesen.
Ich bekomme zwar eine Verbindung und etliche andere Daten aber genau diese beiden Daten nicht.
Kann mir hier jemand helfen?
Was mache ich falsch oder geht das einfach nicht? In der APP ist das natürlich alles vorhanden...Danke
-
Grüß dich,
bin jetzt etwas verwirrt ob das jetzt das Ende ist für alle Skoda-Fahrer oder ob es hier irgendwann einen Workaround gibt.
Wie genau konntest du es denn beheben? Ich bekomme auch den Error 410 "Get Vehicles Failed" beim Versuch auf meinen Superb iV zuzugreifen.
Bekommst du aktuell Daten mit dem Adapter?
Danke und VG
-
@romann-k Bitte Beitrag #1 für die aktuelle Version beachten
-
@romann-k
Tombox hat es bereits gesagt: nimm die aktuelle Version, mit der geht es wieder.
Solltest du eine andere nutzen müssen, ändere die Variable User-Agent, diese darf nicht mehr „ioBroker” lauten! -
hat sich erledigt mit laden der Github Version. Funktioniert damit.
@iosd said in Test Adapter VW Connect für VW, ID, Audi, Seat, Skoda:
Hallo,
ich wollte den Adapter nutzen um den SOC und Reichweite für einen Audi Etron auszulesen.
Ich bekomme zwar eine Verbindung und etliche andere Daten aber genau diese beiden Daten nicht.
Kann mir hier jemand helfen?
Was mache ich falsch oder geht das einfach nicht? In der APP ist das natürlich alles vorhanden...Danke
-
@tombox
Moin,
ich habe ein Problem mit folgender Konstellation:
Adapter: V0.5.1
Fahrzeug: Audi A3, Benziner, Bj 2022
Login mit: Audi E-tron (Login funktioniert)Im Adapter die Option "Rohe JSON speichern" aktiviert.
Die erzeugte JSON unter dem Datenpunkt "statusrawJson" sieht m.E. eigentlich OK aus:{ "accessStatus": { "overallStatus": "invalid", "carCapturedTimestamp": "2024-01-10T13:21:30Z", "doors": [ { "name": "bonnet", "status": [ "closed" ] }, { "name": "frontLeft", "status": [ "locked", "closed" ] }, { "name": "frontRight", "status": [ "locked", "closed" ] }, { "name": "rearLeft", "status": [ "locked", "closed" ] }, { "name": "rearRight", "status": [ "locked", "closed" ] }, { "name": "trunk", "status": [ "invalid", "invalid" ] } ], "windows": [ { "name": "frontLeft", "status": [ "closed" ] }, { "name": "frontRight", "status": [ "closed" ] }, { "name": "rearLeft", "status": [ "closed" ] }, { "name": "rearRight", "status": [ "closed" ] }, { "name": "roofCover", "status": [ "unsupported" ] }, { "name": "sunRoof", "status": [ "unsupported" ] } ], "doorLockStatus": "invalid" }, "rangeStatus": { "carCapturedTimestamp": "2024-01-10T13:21:30Z", "carType": "gasoline", "primaryEngine": { "type": "gasoline", "currentSOC_pct": 40, "remainingRange_km": 230, "currentFuelLevel_pct": 40 }, "totalRange_km": 230 }, "lightsStatus": { "carCapturedTimestamp": "2024-01-10T13:21:30Z", "lights": [ { "name": "right", "status": "off" }, { "name": "left", "status": "off" } ] }, "maintenanceStatus": { "carCapturedTimestamp": "2024-01-10T13:21:27Z", "inspectionDue_days": 61, "inspectionDue_km": 9700, "mileage_km": 20319, "oilServiceDue_days": 61, "oilServiceDue_km": 9700 }, "measurements_rangeStatus": { "carCapturedTimestamp": "2024-01-10T13:21:30Z", "gasolineRange": 230, "totalRange_km": 230 }, "odometerStatus": { "carCapturedTimestamp": "2024-01-10T13:21:30Z", "odometer": 20319 }, "fuelLevelStatus": { "carCapturedTimestamp": "2024-01-10T13:21:30Z", "currentFuelLevel_pct": 40, "primaryEngineType": "gasoline", "carType": "gasoline" } }
Es werden zwar Datenpunkte unter vw-connect angelegt, die Baumstruktur entspricht allerdings nicht der im JSON erzeugten Struktur, s. Screenshot:
Es fehlt in der Baumstruktur z.B. "doors", unterhalb den - nicht vorhandenen doors - liegende Datenpunkte werden allerdings angelegt.
Der Datenpunkt, bzw. Datenpfad "windows" fehlt in der Baumstruktur kpl., obwohl in der JSON vorhanden.Somit gibt es IMHO eine Diskrepanz zwischen dem JSON und den daraus erzeugten Datenpunkten.
Meine bisherigen Lösungsversuche:
Alle Datenpunkte unter vw-connect gelöscht und neu erzeugen lassen -> keine Änderung
Adapter V0.5.1 kpl. gelöscht und neu installiert -> keine ÄnderungDie myAudi-App funktioniert, d.h. dort werden alle Door-/Windows-Stati korrekt angezeigt.
@tombox Kannst Du helfen?
Gruß und Danke
JörgP.S.
Eine ältere (ich weiß nicht mehr welche) Adapter-Version hat schon mal problemlos funktioniert -
-
@joergeli Sieht hier genauso aus, eGolf 02/2020, aktueller Adapter aus Github.
-
-
@joergeli Bitte mal
die GitHub version installieren
alle Objekte löschen
adapter neustarten -
@tombox
... gesagt, getan -> GitHub version installiert -> sieht m.E. gut ausAnbei noch mal das jetzige JSON:
{ "accessStatus": { "overallStatus": "invalid", "carCapturedTimestamp": "2024-01-10T13:21:30Z", "doors": [ { "name": "bonnet", "status": [ "closed" ] }, { "name": "frontLeft", "status": [ "locked", "closed" ] }, { "name": "frontRight", "status": [ "locked", "closed" ] }, { "name": "rearLeft", "status": [ "locked", "closed" ] }, { "name": "rearRight", "status": [ "locked", "closed" ] }, { "name": "trunk", "status": [ "invalid", "invalid" ] } ], "windows": [ { "name": "frontLeft", "status": [ "closed" ] }, { "name": "frontRight", "status": [ "closed" ] }, { "name": "rearLeft", "status": [ "closed" ] }, { "name": "rearRight", "status": [ "closed" ] }, { "name": "roofCover", "status": [ "unsupported" ] }, { "name": "sunRoof", "status": [ "unsupported" ] } ], "doorLockStatus": "invalid" }, "rangeStatus": { "carCapturedTimestamp": "2024-01-10T13:21:30Z", "carType": "gasoline", "primaryEngine": { "type": "gasoline", "currentSOC_pct": 40, "remainingRange_km": 230, "currentFuelLevel_pct": 40 }, "totalRange_km": 230 }, "lightsStatus": { "carCapturedTimestamp": "2024-01-10T13:21:30Z", "lights": [ { "name": "right", "status": "off" }, { "name": "left", "status": "off" } ] }, "maintenanceStatus": { "carCapturedTimestamp": "2024-01-10T13:21:27Z", "inspectionDue_days": 61, "inspectionDue_km": 9700, "mileage_km": 20319, "oilServiceDue_days": 61, "oilServiceDue_km": 9700 }, "measurements_rangeStatus": { "carCapturedTimestamp": "2024-01-10T13:21:30Z", "gasolineRange": 230, "totalRange_km": 230 }, "odometerStatus": { "carCapturedTimestamp": "2024-01-10T13:21:30Z", "odometer": 20319 }, "fuelLevelStatus": { "carCapturedTimestamp": "2024-01-10T13:21:30Z", "currentFuelLevel_pct": 40, "primaryEngineType": "gasoline", "carType": "gasoline" } }
und ein Screenshot der vw-connect Datenpunkte:
Noch eine Verständnisfrage von mir als JSON-Unwissender:
In der JSON steht ja z.B."doors": [
und darunter werden die dann die Türen, bzw. deren Stati nacheinader aufgelistet., so weit, so gut.
Im ioBroker Objekt-Datenbaum werden die Türen allerdings direkt unter accessStus als doors1, doors2, etc. gelistet.
Mit meinem JSON-Halbwissen, müsste doch der Objektbaum analog dem JSON erstellt werden,
oder setzt das der Adapter gewollt in die jetzige Baumstruktur um?Wie gesagt, ist nur 'ne Verständnisfrage - die gewünschten Datenpunkte sind ja jetzt vorhanden.
Danke für Deine prompte Reaktion und den Fix
-
@joergeli Da kann ich dann doch mal einhaken.
Ja, ich hatte auch mal in Tomboxs Adapter etwas ergänzt. Da ging es mir aber genau darum, mit den States näher am JSON zu sein. Im Bereich "doors" hatte ich nichts gemacht, wenn ich mich recht erinnere.
Das Problem ist z.B., dass das JSON Arrays enthält, es in den States aber eine Arrays gibt. Tombox hat sich dafür entscheiden, an den Name des Array-Elements in diesen Fällen einfach eine Nummerierung dranzuhängen.
An anderen Stellen werden auch Channels mit zwei Werten zu einem Key-Value-Paar.
Ich gehe davon aus, dass es ihm darum ging, die Struktur nicht zu komplex zu machen.
Ich finde, das ist ihm auch ganz gut gelungen. Daher ist die JSON-Struktur nicht identisch mit den Channels und States. -
@sneak-l8
Ich wollte mit meiner Frage auf keinen Fall Kritik an Dir, oder an @tombox üben!
Gelegentlich versuche ich mich ja auch an JavaScripten, JSONs, etc. und da ich mir mein Halbwissen nur ergoogelt habe, war mir das halt aufgefallen.
Ich hatte ja schon vermutet, bzw. geschrieben, daß die jetzige Baumstruktur bewußt so gewollt ist .
Das ist auch vollkommen OK so.
Eine "schmale" Baumstruktur ist mir persönlich auch lieber, besonders wenn man in VIS arbeitet und dann ellenlange Pfade einkopieren muss, die man in der VIS nur noch durch mühsames link-/rechts-Scrollen überblicken kann.Deshalb mein Dank auch an Dich für die "Aufklärung" !