VW ID.7, ID.5, ID.4, ... in FHEM

Begonnen von Prof. Dr. Peter Henning, 15 Mai 2024, 20:43:26

Vorheriges Thema - Nächstes Thema

Prof. Dr. Peter Henning

Mit dem Python-Code von Till Steinbach https://github.com/tillsteinbach/WeConnect-mqtt
war es relativ einfach, einen ID.7 in FHEM einzubinden. Jetzt suche ich nach Mitstreitern, die auch eines der moderneren VW-Fahrzeuge haben und ihre Erfahrungen teilen möchten.

LG

pah

Burt_Gummer

Zitat von: Prof. Dr. Peter Henning am 15 Mai 2024, 20:43:26Mit dem Python-Code von Till Steinbach https://github.com/tillsteinbach/WeConnect-mqtt
war es relativ einfach, einen ID.7 in FHEM einzubinden. Jetzt suche ich nach Mitstreitern, die auch eines der moderneren VW-Fahrzeuge haben und ihre Erfahrungen teilen möchten.

LG

pah

Hallo!
Wäre mit einem Arteon 11/22 mit MIB3 dabei.

Habe weconnect nun auf einem Ubuntu Server installiert.
Wie geht es weiter?
Ist ja auf dem Server via Befehlszeile zu starten recht statisch.
Habe leider gar keine Kenntnisse in Python.

Bekomme auch bei der Eingabe mit user, Passwort, spin einen Fehler (wird nicht genauer bezeichnet) Es connected wohl, aber im MQTT kommt nichts an.

 

Prof. Dr. Peter Henning

Gemach, bin erst übernächste Woche wieder mit dem ID.7 vereint. Der steht jetzt schon mehr als 2 Wochen im Parkhaus am Airport.

LG

pah

Burt_Gummer

Alles klar!

Dann hoffe ich dein Stromer hängt an der Steckdose, sonst wird es eng wenn du wiederkommst ;)


Prof. Dr. Peter Henning

#4
Nö. Der hatte beim Abstellen 70%, das wird innerhalb von 4 Wochen nicht signifikant weniger.

LG

pah

Edit: So war es, problemlos einsteigen und losfahren.

Prof. Dr. Peter Henning

So, jetzt würde ich das gerne wieder aufgreifen. Was genau passiert, wenn weconnect-mqtt aufgerufen wird?

Bitte mehr Info, sonst kann ich nicht helfen (Achtung: Passwörter bitte aus-XXX)

LG
pah

CQuadrat

Ich hänge mich hier mal mit dran, da ich mir auch einen ID.7 Tourer bestellt habe. Wird nur noch leider etwas bis zur Lieferung dauern.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

MadMax

Wir haben zwei Skoda Enyaqs, können die auch damit eingebunden werden?
Aktuell hole ich mir die Daten der Fahrzeuge über IOBROKER aber das hängt auch mal gerne.

Gruß
Max
Lenovo M910Q Tiny Debian 12, FHEM 6.3, 2x Siemens Logo 0BA7, Homematic CCU3, Philips HUE, 6x SMA Wechselrichter, BYD HVM, BYD HVS, SMA EVCharger, KEBA Wallbox, 2x HMS800W, Daikin Wärmepumpe über CAN, viele ESPs

Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/MadMax

Prof. Dr. Peter Henning

Prima. Ich bin auch Monate nach dem Ḱauf begeistert von meinem ID.7...

Hier gibt es eine Wiki-Seite dazu (noch etwas rudimentär...) https://wiki.fhem.de/wiki/Volkswagen_ID.7

LG

pah


CQuadrat

So, der Wagen ist seit Montag da - tolle Kiste  8)

Die erste Anbindung per Phyton/MQTT an Fhem war auch schon erfolgreich.

Mal sehen, welche Use-Cases ich damit abbilden kann...

Als erstes wird es sicherlich eine Statistik der gefahrenen Kilometer sein.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

Prof. Dr. Peter Henning

#10
Prima, "tolle Kiste" ist schon die richtige Charakterisierung. Derzeit das beste E-Auto auf dem Markt.

Es ist mir vollkommen unverständlich, wieso VW damit nicht einen reißenden Absatz erzielt. Schlechtes Marketing, und eine saublöde Bundesregierung haben das vollkommen versaut.

Die Software hat noch ein paar Schwächen:
1. lässt sich die fahrende Person nicht einfach an Hand des Schlüssels erkennen - sondern das muss jeweils manuell bestätigt werden.
2. man hätte auch noch den Innenspiegel elektrisch verstellbar machen sollen, und ebenfalls automatisch anpassen sollen.
3. das System merkt sich nicht das zuletzt eingestellte Fahrprofil. Steigt man aus, wird das auf "Comfort" zurückgestellt. Angeblich sei das eine EU-Vorschrift.
4. die Spracherkennung hakt manchmal, und manches ist einfach nur absurd: "Hallo Ida, stelle den Fahrmodus auf Eco" => geht, wird mit OK bestättigt. "Hallo Ida, stelle das Fahrprofil auf Eco" => erkennt die Kiste nicht, sondern bietet ein Auswahlmenü an. Obwohl "Fahrprofil" die VW-eigene Bezeichnung ist.
5. Die Anbindung an ChatGPT und Google ist auch noch verbesserungswürdig. Ida kann zwar sagen, wie das Wetter in Timbuktu ist - kann aber nicht die Adresse der nächsten Apotheke finden.

Größter Makel ist derzeit, dass die Kiste keine Daten mehr herausrückt, wenn ein anderer als der Hauptbenutzer eingeloggt ist. Ich musste meine Frau trainieren, jedesmal beim Verlassen des Fahrzeugs mich als Benutzer einzustellen. Das könnte man konfigurierbar machen und auf den Datenschutz bewusst verzichten.

Außerdem ist die Anzeige der Batterieladung im "Infotainment"-System nicht immer identisch mit den über MQTT empfangenen Daten des BMS. Wenn ich den bis 80% lade (laut BMS), zeigt das Infotainment in der Regel 84-85% an.

Solares Überschussladen geht derzeit gerade gar nicht - wir haben seit Wochen Dunkelflaute https://wider-die-angst.de/dunkelflaute-statt-energiewende-ii/

Ich habe jetzt die Makros und externen Programme so abgewandelt, dass ich auf einen Knopfdruck verschiedene Lademodelle auswählen kann. Und dabei zusätzlich einstellen kann, ob und wie weit mein Speicher verwendet wird, oder ob er gehalten werden soll.

Unten angehängt auch meine Ladestatistik für das Jahr. Juni ist fast komplett ausgefallen, da waren wir in den USA und hatten die Kiste mit 70% am Flughafen stehen.

LG

pah

Edit:

ZitatAls erstes wird es sicherlich eine Statistik der gefahrenen Kilometer sein.
Habe ich während der ersten paar Wochen sogar manuell als Excel-Tabelle gepflegt. War mir dann zu umständlich, jetzt macht FHEM jeden Abend einen Logeintrag dazu.



CQuadrat

Zitat von: Prof. Dr. Peter Henning am 13 November 2024, 11:42:58Die Software hat noch ein paar Schwächen:
1. lässt sich die fahrende Person nicht einfach an Hand des Schlüssels erkennen - sondern das muss jeweils manuell bestätigt werden.
Das habe ich gestern auch mit "Verwunderung" registriert, nachdem ich anfangen wollte, meine Frau auch als Fahrerin anzulegen.


Zitat von: Prof. Dr. Peter Henning am 13 November 2024, 11:42:58Größter Makel ist derzeit, dass die Kiste keine Daten mehr herausrückt, wenn ein anderer als der Hauptbenutzer eingeloggt ist. Ich musste meine Frau trainieren, jedesmal beim Verlassen des Fahrzeugs mich als Benutzer einzustellen. Das könnte man konfigurierbar machen und auf den Datenschutz bewusst verzichten.
Ja, das ist für die Einbindung in eine Automatisierung ziemlich hinderlich. >:(
Ließe sich das nicht umgeben, indem man für den Gastnutzer einen weiteren VW-Account anlegt und dann den User im Phyton-Script entsprechend anpasst? Das muss ich mal die Tage austesten.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

Prof. Dr. Peter Henning

#12
Zitat von: CQuadrat am 13 November 2024, 12:27:00indem man für den Gastnutzer einen weiteren VW-Account anlegt
Habe ich ohne Erfolg versucht - dem Gastnutzer werden eben nicht alle Daten zur Verfügung gestellt. Muss ich nochmal ausprobieren, vielleicht haben sie das jetzt geändert.

LG

pah

CQuadrat

Wenn das Fahrzeug etwas länger steht, konnte ich beobachten, dass dann bei einigen Werten (z.B. odometer, parking_longitude, parking_latitude) NULL-Werte kommen.
Ist das normal?
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

Prof. Dr. Peter Henning

Im Sommer trat das nur äußerst sporadisch auf, da habe ich es ignoriert. Derzeit ist das aber häufiger, dann beschwert sich die App, dass die 12V-Batterie nicht genügend Ladung habe für eine Verbindung des Fahrzeugs zum Server. Und erst bei der nächsten Fahrt wieder geladen würde.

Finde ich ärgerlich, denn ich habe extra die "Optimierte Batterienutzung" eingeschaltet, mit der angeblich die Netzverbindung aus der Hochvoltbatterie gespeist wird.

Ich bin auch hier angemeldet: https://www.meinid.com/board/93-id-7-batterie-reichweite/

Mal sehen, ob ich da etwas dazu finde.

LG

pah


Prof. Dr. Peter Henning

Ich wollte Dir gerade eine PM schreiben, das ist aber blockiert. Geht um diese Verbindungsabbrüche. Vlt. mal Deine Mailadresse in einer PM an mich.

LG

pah

CQuadrat

Ich konnte jetzt tatsächlich das Fehlen von Werten nicht mehr beobachten.

Nachdem die erste Statistik (Gefahrene Kilometer: Tag, Woche, Monat, Jahr, Hochrechnung) umgesetzt ist, habe ich mir heute morgen bei der Fahrt zur Arbeit überlegt, dass es auch ganz smart wäre, wenn mir mein FHEM auch eine detaillierte Übersicht über regelmäßig gefahrene Strecken (z.B. Fahrt zur Arbeit) ausspucken könnte (Ich weiß, dass das vom Finanzamt nicht anerkannt wird). Das werde ich wohl jetzt mal angehen.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

Prof. Dr. Peter Henning

#17
Ich liebe meinen ID.7 immer noch, habe jetzt aber Hassgefühle und Gewaltfantasien in Bezug auf den Volkswagen-Konzern.
Das Fahrzeug steht seit dem vergangenen Montag beim Händler und wartete zunächst darauf, dass alle von VW vorgeschriebenen Tests durchgeführt würden. Die hat man dann gnädigerweise Mittwoch angefangen und gestern abgeschlossen. Mit dem Ergebnis: 12V-Batterie defekt. Gestern teilte man mir dies noch als gute Nachricht mit, und ich könne das Fahrzeug heute abholen.

Eben kam der Anruf: "Leider ist die Batterie nicht geliefert worden. Frühestens Montag". Und ich muss weiterhin einen /&%/&)(-Verbrenner-Tiguan fahren.

Betreffend dein Vorhaben: Ich habe schon eine kleine Routine laufen, die mir sagt, wo das Fahrzeug geparkt wurde:

###############################################################################
#
# ID7 parking
#
###############################################################################

sub ID7_parking(){
  my $str;
 
  my $hash = $defs{"ID7"};
  my $lat=$hash->{READINGS}{'parking_latitude'}{VAL};
  my $lon=$hash->{READINGS}{'parking_longitude'}{VAL};
  return
    if ( $lon eq ""  || $lat eq "" || ( $lat !~ /[\d\.]*/ ) || ( $lon !~ /[\d\.]*/ ) );
   
  #-- check for home
  my $dist=sqrt( ($lon-xxxxx)**2 + ($lat-xxxx)**2  )*111000;
  if( $dist < 50 ){
    #Log 1, "[ID7] parked at home";
    return "home";
  }
  #-- check for golfclub
  $dist=sqrt( ($lon-8.607092)**2 + ($lat-49.105514)**2 )*111000;
  if( $dist < 50 ){
    #Log 1, "[ID7] parked at golfclub";
    return "golfclub";
  }
  #-- check for messekarlsruhe
  $dist=sqrt( ($lon-8.328379)**2 + ($lat-48.981402)**2  )*111000;
  if( $dist < 500 ){
    #Log 1, "[ID7] parked at messe karlsruhe";
    return "messekarlsruhe";
  }

  ... etc, beliebig viele Einschübe
 
  #Log 1, "[ID7] parked at longitude $lon, latitude $lat";
  return "somewhere at longitude $lon,latitude $lat";
}

Achtung, das funktioniert wegen der VW-Ideen zum Datenschutz nicht, wenn meine Frau die Kiste fährt. Es sei denn, sie stellt jedesmal beim Aussteigen den Benutzer um.

Diese Routine könnte man problemlos so ergänzen, dass auch noch die aktuelle Fahrtzeit und die Fahrtstrecke zum Arbeitsplatz aufgezeichnet werden.

LG

pah

CQuadrat

Vielen Dank! Das ist schon mal ein guter Startpunkt.

Mich interessiert tatsächlich nur eine Detailübersicht meiner eigenen Fahrten (insbesondere der Arbeitsweg und andere regelmäßig beruflich veranlasste Fahrten). Das ginge natürlich nicht, wenn mich meine Frau chauffieren würde. Aber noch fahre ich selber auf die Arbeit  8) . Alle anderen Fahrten sind zweitrangig.

Die Kommunikationspolitik von VW ist echt unterirdisch.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

CQuadrat

Zitat von: CQuadrat am 29 November 2024, 11:01:51Ich konnte jetzt tatsächlich das Fehlen von Werten nicht mehr beobachten.

Zu früh gefreut. Jetzt bekomme ich seit gestern gar keine Daten mehr.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

Prof. Dr. Peter Henning

Tja, willkommen im Club. Der Werkstattleiter vermutete gestern, dass die Batterie deshalb bei der bestellten Lieferung gefehlt habe, weil es noch anderen so wie mir ginge.

Da hat VW einen riesigen Bock geschossen...

Achte doch mal auf Folgendes:
- Zeitgleich mit dem Netzzugang wird der Keyless-Betrieb eingestellt, d.h., man muss wirklich auf den Knopf am Schlüssel drücken, damit die Kiste aufgeht. Auch die Öffnung der Heckklappe mit dem Fuß geht nicht mehr.
- Der Netzzugang wird wieder hergestellt, wenn das Fahrzeug auch nur wenige Meter bewegt wird. Hält aber nicht lange an.
- Bei Fahrtbeginn ist ein sehr hoher Anfangsverbrauch in der Anzeige zu sehen - bis zu 75 kWh/100 km waren es bei mir. Denn das System versucht natürlich, die defekte 12V-Batterie mit massiveŕ Energiezufuhr zu laden.

Wenn das so ist: Gleich den Händler kontaktieren, wegen der Lieferengpässe dieser Batterien.

LG

pah

CQuadrat

Ich musste im VW-Portal neuen Datenschutzbestimmungen/AGBs zustimmen. Jetzt geht es wieder. Vielleicht war es ja das  ::)

Die von Dir beschriebenen Phänomene werde ich aber auf jeder Fall beobachten. Allerdings nutze ich zu 95% den Keyless-Betrieb; da ist mir noch kein Aussetzer aufgefallen. Auch starte ich aktuell fast immer wenige Minuten vor Abfahrt die Vorklimatisierung; auch die war bisher immer zuverlässig an.

Gibt es eigentlich Limitierungen, wie häufig ich Daten abrufen kann?
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

Prof. Dr. Peter Henning

Ja. Wenn das häufiger als alle 5 Minuten geschieht, hat VW wohl schon mal den Zugang blockiert.

Auch wieder so etwas, wo man sagen müsste: Leute, wenn Ihr Smartphones auf Rädern baut, sorgt auch für ordentliche Server.

LG

pah

be-ro

Hallo zusammen,

ich habe jetzt dank des Wiki-Eintrages (https://wiki.fhem.de/wiki/Volkswagen_ID.7) meinen ID.7 auch am Start!

Ich bekomme das mit den png-Bildern allerdings irgendwie nicht hin. Ist das Beispiel im Wiki-Artikel nicht auch unvollständig? Wo wird denn JSONMAP definiert, bzw. wie muss das denn aussehen?  ;)

Gruß,
be-ro   

Prof. Dr. Peter Henning

Jein.

Ich habe bisher auch noch keine Bilder bekommen. Wenn ich welche bekommen hätte, wüsste ich auch, was mit dem Event zu machen ist.

LG

pah

CQuadrat

#25
Bei mir sind in den Readings car, carWithBadge und statusWidthBadge umfangreich Daten enthalten. Vermutlich binär codiert (Format ?). Ich hatte aber noch nicht die Muse, mir das genauer anzusehen.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

be-ro

Diese Readings hätte ich bei mir auch erwartet. Die MQQT-Nachrichten, die genauso heißen, habe ich nämlich mit dem MQQT-Explorer gesehen. Allerdings werden bei mir keine Readings dafür angelegt. Meine Vermutung war, dass das an dem fehlenden JSONMAP liegt. Hast du diesbezüglich in deinem Device etwas definiert?

CQuadrat

Das wurde alles automatisch in meiner MQTT-Bridge angelegt.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

Prof. Dr. Peter Henning

Zitat von: be-ro am 03 Dezember 2024, 10:09:02MQQT
Es ist wohl MQTT gemeint, hoffe ich.

ZitatDas wurde alles automatisch in meiner MQTT-Bridge angelegt.
So sollte es sein. Allerdings habe ich nach dem automatischen Anlegen der MQTT Topics diese alle in eine Tabelle kopiert, um mir nur diejenigen herauszusuchen, die ich wirklich brauche. Und nur die sind in FHEM.

So, und jetzt das weniger Lustige: Irgendwelche Topics mit dem String "Badge" drin gibt es in der ganzen Tabelle nicht, nur "weconnect/vehicles/<Fahrgestellnummer>/images".

Könnte bedeuten: VW hat das MQTT-Interface des ID.7 seit dem Sommer geändert, es werden jetzt irgendwelche Binärdaten geliefert.

Würde ich mir gerne ansehen. Meine Kiste steht aber IMMER NOCH in der Werkstatt. Die Lieferzeit für die 12V-Batterie beträgt angeblich mehr als 1 Woche. (wutschnaub...)

LG

pah

CQuadrat

Bei mir wurde das Folgende angelegt:
weconnect/vehicles/WVWZxxxxxxxxxx/images:.* images\
weconnect/vehicles/WVWZxxxxxxxxxx/pictures/car:.* car\
weconnect/vehicles/WVWZxxxxxxxxxx/pictures/status:.* status\
weconnect/vehicles/WVWZxxxxxxxxxx/pictures/statusWithBadge:.* statusWithBadge\
weconnect/vehicles/WVWZxxxxxxxxxx/pictures/carWithBadge:.* carWithBadge\
Insgesamt kommen da knapp über 1000 verschiede Werte über MQTT. Das Wenigste davon habe ich mir bisher angesehen.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

Prof. Dr. Peter Henning

Sieh an, der Zweig mit "pictures" taucht in meiner Übersicht der Topics gar nicht auf.

Betreffend die Batterie: Nachdem ich jetzt noch einmal richtigen Wirbel gemacht habe, folgte ein Erklärungsversuch meines "Vorreiters der Elektromobilität" (VdE :-))

Man habe von Volkswagen schwarz auf weiß die Anweisung, dass nur eine Batterie mit einer vom Werk vergebenen Seriennummer in den ID.7 eingebaut werden dürfe. Diese Seriennummer würde wieder an das Werk zurückgemeldet und dort in der elektronischen Fahrzeugakte vermerkt. Wenn man eine andere Batterie einbauen würde, so VW, würde die Betriebserlaubnis des Fahrzeugs erlöschen. Und das würde, so der VdE, auch nur für den ID.7 gelten

Das würde ich gerne für ausgemachten Humbug halten. Allerdings habe ich in den letzten Jahren einen so wahnsinnigen Anstieg bürokratischer Idiotien gesehen, dass ich das nicht ausschließen kann. Möglicherweise hat sich wirklich irgend ein Schwachkopf (von mir aus gerne "Schwachkopf Professional") so etwas ausgedacht.

LG

pah

CQuadrat

Gibt es eigentlich eine einfache Möglichkeit, die per MQTT übertragenen binären Daten in eine Datei umzuleiten?
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

TomLee

Einfach $EVENT in dem readingList-Eintrag FileWrite übergeben ?

rudolfkoenig

ZitatEinfach $EVENT in dem readingList-Eintrag FileWrite übergeben ?
Es heisst WriteFile :)
https://forum.fhem.de/index.php?topic=104804.msg1020859#msg1020859

CQuadrat

#34
Zitat von: rudolfkoenig am 04 Dezember 2024, 14:03:35
ZitatEinfach $EVENT in dem readingList-Eintrag FileWrite übergeben ?
Es heisst WriteFile :)
https://forum.fhem.de/index.php?topic=104804.msg1020859#msg1020859

Danke für den Tip.
Das sind die famosen Bilder.
Nettes Gimmick, aber ohne viel Mehrwert.
Du darfst diesen Dateianhang nicht ansehen.Du darfst diesen Dateianhang nicht ansehen.Du darfst diesen Dateianhang nicht ansehen.Du darfst diesen Dateianhang nicht ansehen.   
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

Prof. Dr. Peter Henning

Prima, mein Fahrzeug ist wieder da. Waren jetzt "nur" 10 Tage...

Unschön: Im Moment bekomme ich keine Daten mehr

Dez 04 18:10:06 BeeTwo python3[135902]:     response = self.doWebAuth(authorizationUrl)
Dez 04 18:10:06 BeeTwo python3[135902]:   File "/usr/local/lib/python3.8/dist-packages/weconnect/auth/we_connect_session.py", line 253, in doWebAuth
Dez 04 18:10:06 BeeTwo python3[135902]:     afterLoginResponse = self.get(afterLoginUrl, allow_redirects=False, access_type=AccessType.NONE)
Dez 04 18:10:06 BeeTwo python3[135902]:   File "/usr/local/lib/python3.8/dist-packages/requests/sessions.py", line 602, in get
Dez 04 18:10:06 BeeTwo python3[135902]:     return self.request("GET", url, **kwargs)
Dez 04 18:10:06 BeeTwo python3[135902]:   File "/usr/local/lib/python3.8/dist-packages/weconnect/auth/we_connect_session.py", line 69, in request
Dez 04 18:10:06 BeeTwo python3[135902]:     return super(WeConnectSession, self).request(
Dez 04 18:10:06 BeeTwo python3[135902]:   File "/usr/local/lib/python3.8/dist-packages/weconnect/auth/openid_session.py", line 188, in request
Dez 04 18:10:06 BeeTwo python3[135902]:     raise InsecureTransportError()
Dez 04 18:10:06 BeeTwo python3[135902]: oauthlib.oauth2.rfc6749.errors.InsecureTransportError: (insecure_transport) OAuth 2 MUST utilize https.

LG

pah

rudolfkoenig

Zitatoauthlib.oauth2.rfc6749.errors.InsecureTransportError: (insecure_transport) OAuth 2 MUST utilize https.
Hat VW kein Geld mehr fuer Zertifikatsverlaengerung?

CQuadrat

Es hilft vermutlich nicht, aber bei mir läuft es noch.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

Prof. Dr. Peter Henning

#38
Zitat von: CQuadrat am 04 Dezember 2024, 15:49:06Das sind die famosen Bilder.
Nur so halb. Im Verzeichnis /usr/local/lib/python3.8/dist-packages/weconnect des Servers, der die VW_Daten abfragt, stehen die "Badges" schon seit Installation des Programms. Die kommen also nicht vom ID.7.

ZitatHat VW kein Geld mehr fuer Zertifikatsverlaengerung?
Witzigerweise startet der Python-Server problemlos - stirbt aber, wenn man etwas an den ID.7 schreiben will.

LG

pah

Hackstall

Hallo benutze auch weconnect mit ID.3.
Hat bisher auch einwandfrei funktioniert nur jetzt seit dem 1.12 nicht mehr
Ich benutzer weconnect unter docker.

Gibt es schon irgendwelche weiteren Erkenntnisse?

Danke

CQuadrat

Wart ihr mal im VW-Portal gewesen? Ich musste dort neuen Datenschutzbestimmungen zustimmen. Danach ging es wieder.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

be-ro

Zitat von: Prof. Dr. Peter Henning am 04 Dezember 2024, 20:35:38Nur so halb. Im Verzeichnis /usr/local/lib/python3.8/dist-packages/weconnect des Servers, der die VW_Daten abfragt, stehen die "Badges" schon seit Installation des Programms. Die kommen also nicht vom ID.7.
Nur so halb  ;)  Mindestens die Fahrzeug-Bilder sind schon individuell und kommen vom ID.7. Meine sehen jetzt z.B. so aus:
Du darfst diesen Dateianhang nicht ansehen.

Prof. Dr. Peter Henning

Zitat von: CQuadrat am 04 Dezember 2024, 21:09:46Wart ihr mal im VW-Portal gewesen? Ich musste dort neuen Datenschutzbestimmungen zustimmen. Danach ging es wieder.

Hmmm. Geht das auch in der App??

LG

pah

CQuadrat

Das war auf volkswagen.de. Dort, wo man auch das Bordbuch vorfindet.

Bei diesen neumodischen Kutschen muss man ja wirklich ab und an mal in das Handbuch sehen 🤦
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

Prof. Dr. Peter Henning

#44
OK, passt, danke.

Und ja: Es gibt jetzt ein paar neue topics.

LG

pah

Edit: Was hast Du in die readingList für die Bilder geschrieben?


CQuadrat

Zitat von: Prof. Dr. Peter Henning am 04 Dezember 2024, 21:32:07Edit: Was hast Du in die readingList für die Bilder geschrieben?
myBroker:weconnect/vehicles/WVWxxxxxxxxxx/images:.* images
myBroker:weconnect/vehicles/WVWxxxxxxxxxx/pictures/car:.* { WriteFile("www/images/ID7_car.png",$EVENT);; {car=>"images/ID7_car.png"} }
myBroker:weconnect/vehicles/WVWxxxxxxxxxx/pictures/status:.* { WriteFile("www/images/ID7_status.png",$EVENT);; {status=>"images/ID7_status.png"} }
myBroker:weconnect/vehicles/WVWxxxxxxxxxx/pictures/statusWithBadge:.* { WriteFile("www/images/ID7_statusWithBadge.png",$EVENT);; {statusWithBadge=>"images/ID7_statusWithBadge.png"} }
myBroker:weconnect/vehicles/WVWxxxxxxxxxx/pictures/carWithBadge:.*  { WriteFile("www/images/ID7_carWithBadge.png",$EVENT);; {carWithBadge=>"images/ID7_carWithBadge.png"} }
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

Prof. Dr. Peter Henning

#46
OK, Danke. Ich habe erstens die vier Bilder in den Readings nacheinander, und zweitens aus dem Reading gleich einen Link zum Anklicken gemacht. Das Reading "status" brauche ich nämlich für etwas anderes, und ein Reading "car" ist nicht unbedingt ein Hinweis auf ein Bilddatei.
MQTTBridge:weconnect2?/vehicles/XXX/pictures/car:.* { WriteFile("www/images/ID7_car.png",$EVENT);; {img_car=>"<html><a href=\"fhem/www/images/ID7_car.png\">ID7_car.png</a></html>"} }
usw.

Was der Informationsgehalt der Bilder sein sollte, ist mir auch noch nicht klar. Statische Fotos meines Autos kann ich selber besser machen, die brauche ich nicht von VW zu beziehen.

Außerdem habe ich jetzt zwei verschiedene Services weconnect-mqtt und weconnect-mqtt2 eingerichtet. Dazu kommt ein nettes kleines Shellscript, das (natürlich mit Root-Rechten!) zwischen den beiden Services umschaltet. Mit anderen Worten: Wenn meine Holde das Auto fährt (und ich den doofen Benziner nehmen muss), kommen trotzdem weiterhin Daten. Und welcher Service aktiv ist, wird gleich noch in ein Reading des ID7-Device geschrieben
# /bin/sh
#
# WeConnectHelper.sh 1.0
#
# Script file to support connection to Volkswagen WeConnect
#
# Prof. Dr. Peter A. Henning, 2024
#
#  $Id: WeConnectHelper.sh 2024-12 - pahenning $
#
########################################################################################

FHEMDEV="ID7"                  # FHEM Devicename for ID.7
FHEMIP="192.168.0.xx"          # IP address for FHEM
FHEMPORT="8083"                # Port number for FHEM
FHEMHTTPS="false"              # true for HTTPS, false without HTTPS
curlprog="curl"
curlargs=""                        # -k to disable HTTPS certificate check,
                                # -u user:password for user and password   
### FHEM path ###
if [ $FHEMHTTPS = "true" ]; then
        csrf=`$curlprog -s -D - "https://$FHEMIP:$FHEMPORT/fhem?XHR=1" | awk '/X-FHEM-csrfToken/{print $2}' | tr -d "\r\n"`
        FHEM="https://$FHEMIP:$FHEMPORT/fhem?XHR=1&fwcsrf=$csrf&cmd.$FHEMDP"
else
        csrf=`$curlprog -s -D - "http://$FHEMIP:$FHEMPORT/fhem?XHR=1" | awk '/X-FHEM-csrfToken/{print $2}' | tr -d "\r\n"`
        FHEM="http://$FHEMIP:$FHEMPORT/fhem?XHR=1&fwcsrf=$csrf&cmd.$FHEMDP"
fi

wc1=`systemctl status weconnect-mqtt | awk '/Active/{print $2}'`
wc2=`systemctl status weconnect-mqtt2 | awk '/Active/{print $2}'`

#-- if both are active, deactivate secondary service
    if [ $wc1 = "active" ] && [ $wc2 = "active" ] ; then
      systemctl stop weconnect-mqtt2
      wc1=`systemctl status weconnect-mqtt2 | awk '/Active/{print $2}'`
      $curlprog $curlargs "$FHEM=setreading%20$FHEMDEV%20weconnectServiceStatus%20stopped secondary" &
    fi

### execute commands ##
case $1 in
  start)
  #-- if one is active, send error message
  if [ $wc1 = "active" ] || [ $wc2 = "active" ] ; then
    $curlprog $curlargs "$FHEM=setreading%20$FHEMDEV%20weconnectServiceStatus%20running already" &
  else
    #-- if both are inactive, activate primary service
    if [ $wc1 = "inactive" ] && [ $wc2 = "inactive" ] ; then
      systemctl start weconnect-mqtt
      wc1=`systemctl status weconnect-mqtt | awk '/Active/{print $2}'`
      $curlprog $curlargs "$FHEM=setreading%20$FHEMDEV%20weconnectServiceStatus%20started primary" &

    fi
  fi
  ;;
  toggle) 
  #-- if both are inactive, activate primary service
  if [ $wc1 = "inactive" ] && [ $wc2 = "inactive" ] ; then
    systemctl start weconnect-mqtt
    wc1=`systemctl status weconnect-mqtt | awk '/Active/{print $2}'`
    $curlprog $curlargs "$FHEM=setreading%20$FHEMDEV%20weconnectServiceStatus%20started primary" &
  else 
    #-- if primary is active, stop primary and start secondary 
    if [ $wc1 = "active" ] ; then
      systemctl stop weconnect-mqtt
      systemctl start weconnect-mqtt2
      wc1=`systemctl status weconnect-mqtt | awk '/Active/{print $2}'`
      wc2=`systemctl status weconnect-mqtt2 | awk '/Active/{print $2}'`
      $curlprog $curlargs "$FHEM=setreading%20$FHEMDEV%20weconnectServiceStatus%20toggled to secondary" &
    else
    #-- secondary is active, stop it and start secondary
      systemctl stop weconnect-mqtt2
      systemctl start weconnect-mqtt
      wc1=`systemctl status weconnect-mqtt | awk '/Active/{print $2}'`
      wc2=`systemctl status weconnect-mqtt2 | awk '/Active/{print $2}'`
      $curlprog $curlargs "$FHEM=setreading%20$FHEMDEV%20weconnectServiceStatus%20toggled to peimary" &
    fi
  fi
  ;;
  stop)
  #-- if none is active, send error message
  if [ $wc1 = "inactive" ] && [ $wc2 = "inactive" ] ; then
    $curlprog $curlargs "$FHEM=setreading%20$FHEMDEV%20weconnectServiceStatus%20stopped already" &
  else
    #-- if primary is active, stop it
    if [ $wc1 = "active" ] ; then
      systemctl stop weconnect-mqtt
      wc1=`systemctl status weconnect-mqtt | awk '/Active/{print $2}'`
      $curlprog $curlargs "$FHEM=setreading%20$FHEMDEV%20weconnectServiceStatus%20stopped primary" &
    #-- if secondary is active, stop it
    else
      systemctl stop weconnect-mqtt2
      wc2=`systemctl status weconnect-mqtt2 | awk '/Active/{print $2}'`
      $curlprog $curlargs "$FHEM=setreading%20$FHEMDEV%20weconnectServiceStatus%20stopped secondary" &

    fi
  fi

esac
#-- update FHEM readings
$curlprog $curlargs "$FHEM=setreading%20$FHEMDEV%20weconnectService%20$wc1" &
$curlprog $curlargs "$FHEM=setreading%20$FHEMDEV%20weconnectService2%20$wc2" &

LG

pah

Zitat von: be-ro am 04 Dezember 2024, 21:19:39Mindestens die Fahrzeug-Bilder sind schon individuell
Na, individuell sicher nicht. Mein Kennzeichen lautet nicht "ID.7", das kommt also aus der Konfigurationsdatenbank. Ich könnte ja jetzt wieder böse sein und vermuten, dass VW aus dem Grund so wenig Farben und Ausstattungsvarianten anbietet.

TomLee

Zitat... {img_car=>"<html><a href=\"fhem/www/images/ID7_car.png\">ID7_car.png</a></html>"} ...

Sry, beschäftige mich halt gerne mit dem Thema.

Hat es einen Grund für die Notation mit den escapten Hochkomma?

Warum nicht die doppelten Hochkomma innen durch einfache ersetzen und man braucht nicht escapen.
Oder umgekehrt, aussen einfache, innen doppelte.

Meine Erfahrung hier. Kann jeder machen wie er will, aber selbst als Laie hab ich eine Abneigung gegen das escapen wenn es nicht nötig ist.

... {img_car=>"<html><a href='fhem/www/images/ID7_car.png'>ID7_car.png</a></html>"} ...

Prof. Dr. Peter Henning

Es sind keine Hochkommata, sondern Anführungszeichen.
Auszug aus dem Manuskript meiner XML-Vorlesung, die ich viele Jahre lang gehalten habe: Attributwerte stehen in Anführungszeichen.

"Außen einfache" würde bedeuten, dass im "Innern" keine Variablensubstitution mehr stattfindet.

LG

pah

TomLee

#49
Zur Variablenauflösung war ich ursprünglich eingegangen, kurz vor dem absenden den Satz aber wieder rausgenommen, weil es hier keine Variablen aufzulösen gibt.

Wenn innen Variablen aufgelöst werden sollen nimmt man aussen qq(), innen doppelte Anführungszeichen und spart sich weiterhin das escapen?

edit:

Gegeben sei der Fall es gibt mehrere Variablen, mit qq() wäre es dann immer noch "lesbarer", als mit escapen.

Prof. Dr. Peter Henning

So, das mit den umgeschalteten Python-Servern funktioniert ganz prima.

Was die diversen Bilder des Fahrzeugs aussagen sollen, verstehe ich zwar immer noch nicht. Aber habe jetzt meine Liste der Topics um die neuen Dinge ergänzt.

Ich war am Überlegen, wie man das aufbereiten kann, so dass auch andere etwas davon haben. Zum Beispiel wäre es schön, wenn man eine Excel-Anwendung hätte, die ein Eingabefeld für die FIN hat. Dann eine Liste von Daten, die man per Häkchen auswählen kann. Dann Knopfdruck, und fertig ist die Definition des FHEM-Devices.

Habe dann aber festgestellt, dass das ein Riesenaufwand ist. Also werde ich nur das Ergebnis in eine einfache Tabelle schreiben und hier anhängen.

LG

pah

Prof. Dr. Peter Henning

Noch etwas Neues. Es gibt einen MQTT-Topic

<PRE>/vehicles/<VIN>/domains/readiness/readinessStatus/connectionState/batteryPowerLevel

Normalerweise hat dieser den Wert "comfort". Wenn die Spannung der 12V-Batterie sinkt, nimmt das irgendeinen anderen Wert  an, den ich glücklicherweise noch nicht wieder erlebt habe. Genau dann schaltet die Kiste nämlich überflüssige Dienste ab, siehe meine Probleme unten.

Werde ich jetzt systematisch überwachen.

LG

pah

CQuadrat

Zitat von: Prof. Dr. Peter Henning am 05 Dezember 2024, 16:28:38...
Außerdem habe ich jetzt zwei verschiedene Services weconnect-mqtt und weconnect-mqtt2 eingerichtet. Dazu kommt ein nettes kleines Shellscript, das (natürlich mit Root-Rechten!) zwischen den beiden Services umschaltet. Mit anderen Worten: Wenn meine Holde das Auto fährt (und ich den doofen Benziner nehmen muss), kommen trotzdem weiterhin Daten. Und welcher Service aktiv ist, wird gleich noch in ein Reading des ID7-Device geschrieben
...

Ich glaube, das wird nicht mehr nötig sein. In einer Infomail von VW heißt es:
Zitat...
Darüber hinaus werden die Remote Dienste sowohl für Hauptnutzer als auch für Gastnutzer verfügbar sein, unabhängig davon, wer zuletzt im Fahrzeug angemeldet war.
...
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

Prof. Dr. Peter Henning

Ich hab es gelesen. VW hat also doch auf mich gehört  ;)

Warten wir es mal ab, ob das wirklich unnötig sein wird.

LG

pah

Prof. Dr. Peter Henning

So, ich hab jetzt mal etwas Statistik gewälzt.

- Über die vergangenen 6 Monate komme ich auf einen Gesamtverbrauch (incl. Ladeverlusten) von 18,7 kWh/100 km. Das ist natürlich derzeit wegen der niedrigen Temperaturen höher, aber immer noch gut erträglich.

- Im Mittel habe ich 39% des Stromverbrauchs meines ID.7 aus der PV-Anlage bezogen. Ganz scharf kann man das gar nicht sagen, das ist also auf Basis des täglichen Solaranteils gerechnet. Rechne ich noch die THG-Prämie ab (110€ für 2024) macht das reine Stromkosten von 2,48€ je 100km.

LG

pah

EinEinfach

#55
Hallo zusammen,
ich habe gestern versucht von meinem ID4 die Daten zu bekommen. Was habe ich gemacht:
über
pip3 install weconnect-mqttdas entsprechende Paket installiert
über
weconnect-mqtt --username test@test.de --password test123 --mqttbroker 192.168.0.1 --mqtt-username test --mqtt-password test123 --prefix weconnectVerbindung zum VW-Server aufgebaut.

Im MQTT Explorer sehe ich einige topics mit connected True (weconnect/mqtt/weconnectConnected true) und update intervall 300s, aber keine topics vom Fahrzeug. Was habe ich übersehen, hat jemand einen Tipp? Ich habe alle Häckchen, wo ich Häckchen setzen konnte auf der oben genannten Seite gesetzt. Die VW native App funktioniert auch einwandfrei.

Gruß
Alexander
fhem auf Intel NUC6CAYH mit Proxmox im LXC (Debian 10), KNX mit knxd über MDT SCN-IP000.02, Buderus GB192-15i über KM100, Solaredge WR SE9K über Modbus-TCP

EinEinfach

Hat sich erledigt, ich habe nichts geändert... auf einmal sind die Daten da, anscheinend muss man sich einfach in Geduld üben
fhem auf Intel NUC6CAYH mit Proxmox im LXC (Debian 10), KNX mit knxd über MDT SCN-IP000.02, Buderus GB192-15i über KM100, Solaredge WR SE9K über Modbus-TCP