Auslesen der BMW-Daten mit FHEM (225xe)

  • Hallo zusammen,


    vor längerer Zeit hatte ich mal angekündigt, dass ich meine Daten per Heimautomatisierung abholen will und mir grafisch darstellen lassen will.
    Ich nutze für die Heimautomatisierung FHEM (Siehe HIER) auf einem Raspberry Pi 3


    Um den Code laufen zu lassen, solltet ihr daher auch FHEM nutzen. Oder alles anpassen. :)


    Folgendes geht
    - Auslesen aller Daten, die CD sendet
    - Berechnung einiger weniger Daten (bspw mit Benzin gefahrene km, Prozentsatz allgemein elektrisch gefahren, ...)
    - Statistiken zu Verbrauch, %Elektrisch, etc
    - Karte mit der letzten Position
    - Karte mit der Position der letzten 3 Stops (für längere Reisen)
    - Benachrichtigungen, wenn das Auto parkt, läd, etc. Teilweise inkl. Positionsangabe (benötigt Pushbulled)
    - Automatisches holen des Bearers falls nötig / ungültig (aktuell ca. alle 2-3h glaub ich)


    Folgendes kommt vielleicht noch
    - Senden von Kommandos
    - Das ganze als FHEM Modul fertig verpackt
    - eine schöne Oberfläche mit Bildchen
    - ein paar fehlende Daten


    Folgendes kommt nie
    - Vollständiger Support von mir oder
    - Haftung in irgendeiner Weise, falls BMW das Ganze irgendwie doof findet und uns aussperrt oder das deswegen Fahrzeug implodiert. ;)



    Hinweise:
    Der Code ist noch "gefrickel": Da wurde viel gebastelt, viel entspricht nicht unbedingt der höchsten Qualität, aber es läuft schon mal :)
    Für mich ist's ne Beta zum Testen und weiterentwickeln und irgendwann folgt vielleicht ein komplettes Modul.



    Hier der Code in drei Teilen
    Einrichten der Passswörter / VIM

    BMW 225xe Sport Line Atlantikgrau seit 14.11.2017 :D
    BMW X1 Bj. '16 weiß/DRK mit getarnter Sondersignalanlage (5-10 Tage/Monat Dienst)
    Audi A4 Avant bj 2006 bis 11.2017 / Fiat Tipo Bj '97 bis 2007 /Honda Civic Bj. '87 bis 2003

    Einmal editiert, zuletzt von Rumbel ()

  • Einrichten der FHEM-Config

    BMW 225xe Sport Line Atlantikgrau seit 14.11.2017 :D
    BMW X1 Bj. '16 weiß/DRK mit getarnter Sondersignalanlage (5-10 Tage/Monat Dienst)
    Audi A4 Avant bj 2006 bis 11.2017 / Fiat Tipo Bj '97 bis 2007 /Honda Civic Bj. '87 bis 2003

  • Einrichtung Teil 2

    BMW 225xe Sport Line Atlantikgrau seit 14.11.2017 :D
    BMW X1 Bj. '16 weiß/DRK mit getarnter Sondersignalanlage (5-10 Tage/Monat Dienst)
    Audi A4 Avant bj 2006 bis 11.2017 / Fiat Tipo Bj '97 bis 2007 /Honda Civic Bj. '87 bis 2003

  • Tolle Arbeit. Leider fahre ich jetzt in Osterferien weg und kann es nicht testen (FHEM habe ich seit vielen Jahren im Einsatz).


    Hättest Du für die Wartezeit ein paar Screenshots Deiner Plots?

  • hier mal auf die schnelle 3 Screenshots per Smartphone aus der Musikprobe... Hoffe, unser Dirigent liest nicht mit... Glaub der fährt Golf. :P


    Wie gesagt: das Design fehlt noch... Irgendwann will ich das als Floorplan anlegen mit dem Auto als Hintergrund.


    Bild 1: Anzeige der Position unseres Probelokals und die Fenster.
    Lustig: Das gekippte Schiebedach wird nicht als offen angezeigt... :D


    Screenshot_20180323-211852.jpg


    Bild 2: Daten
    Screenshot_20180323-211836.jpg
    Bild 3: Statistik
    Screenshot_20180323-211917.jpg
    Die Karte mit der Historie zeige ich später mal, da will ich die Koordinaten noch ändern.

    BMW 225xe Sport Line Atlantikgrau seit 14.11.2017 :D
    BMW X1 Bj. '16 weiß/DRK mit getarnter Sondersignalanlage (5-10 Tage/Monat Dienst)
    Audi A4 Avant bj 2006 bis 11.2017 / Fiat Tipo Bj '97 bis 2007 /Honda Civic Bj. '87 bis 2003

    2 Mal editiert, zuletzt von Rumbel ()

  • Whoow bist Du schnell! Tausend Dank!


    Danke vielmals. Das sieht ja richtig toll aus! Da weiß ich gleich was ich nach dem Urlaub mache.......
    Ich vermute, dass ich meine alten FHEM-Server erstmal updaten muss.


    Keine Angst. Ich nerve nicht bzgl. Support. Habe selbst mehrere FHEM-Treiber geschrieben und weiß wie viel Arbeit Support macht.

  • Freut mich, dass es dir gefällt


    Eingeschränkt Support werde ich leisten können, aber eben nicht all zu viel ;)


    Sag Bescheid, bevor du anfängst, dann lade ich dann nochmals die neuste version hoch.


    Hier noch die Karte mit der Historie. Nein, ich bin nicht durch's Wasser gefahren, ich hab einfach nur zufällige Koordinaten verwendet. :)
    Das Textfeld ist der Mouse-Over tag des zweiten (dunkleren) Punktes
    GPS.PNG


    Zwecks update. ich nutze eigentlich alles Standard.
    Perl sollte halt aktuell sein auf deinem Server und FHEM das WebWidget für die karten unterstützen.
    Theoretisch sollte das auch mit älteren FHEMs laufen, aber Updaten macht sicher generell Sinn ;)



    p.s.: wünsch dir einen schönen Urlaub und allzeit freie Straßen! :)

    BMW 225xe Sport Line Atlantikgrau seit 14.11.2017 :D
    BMW X1 Bj. '16 weiß/DRK mit getarnter Sondersignalanlage (5-10 Tage/Monat Dienst)
    Audi A4 Avant bj 2006 bis 11.2017 / Fiat Tipo Bj '97 bis 2007 /Honda Civic Bj. '87 bis 2003

    Einmal editiert, zuletzt von Rumbel ()

  • Hi,
    das ist ja echt super, sowas hab ich lange gesucht.
    Die Statistik die BMW in der CD-App oder im CD-Web anbietet ist lächerlich.
    Ich hab auch schon mehrfach bei BMW reklamiert man möge doch bitte eine vernünftige Verbrauchsstatistik einbringen.


    Also frisch ans Werk und FHEM installiert.
    Steile Lernkurve, aber ich hab zumindest meine Heizung-Steuerung schon erfolgreich integriert.


    Dann hab ich mich an my_BMWUtils gewagt …
    Stunden und Tage vergingen ohne jeden Erfolg, bis mir endlich klar war, dass der BMW CD Server am Wochenende fast immer offline war …
    Als der endlich wieder funktionierte musste ich mehrmals mein Passwort zurücksetzen, weil das Konto gesperrt war. Vermutlich wegen zu vieler Fehlversuche mit myBMWUtils.


    Das Problem dabei war offensichtlich, dass mein Passwort ein & enthielt!
    Sobald ich keine Sonderzeichen im Passwort habe funktioniert auch der Login und ich erhalte einen Bearer Session Key.


    Aber leider kommt es gleich danach doch wider zu einem Fehler 400.
    Hier das Log mit Debug=2, die VID habe ich unkenntlich gemacht:



    Woran kann das liegen?
    Nach meinem Verständnis der Fehlermeldung ist an der im Code hinterlegten URL was falsch?


    Wäre schön, wenn du mir da weiterhelfen könntest.

  • Hi @Thatsme.2,


    freut mich, dass FHEM so einfach läuft bei dir. Mit entsprechenden Tutorials geht das gut. :)


    Ich werde bei Gelegenheit die neueste Version hier hochladen... ein paar Kleinigkeiten hab ich schon verbessert.


    Zu deinem Problem:
    Was gibst du als VIN ein? Die Kurze (V123456) oder die Lange (WBA2C71080V123456) (hier anynomisiert)
    Es muss auf jeden Fall die lange sein. Die volle VIN erhält man im Web oder im Fahrzeugschein.


    Setzen kannst du sie über

    Code
    set BMWif_vim WBA2C71080V123456

    Ein wichtiger Tipp noch:
    deaktiviere auf jeden Fall den Timer so lange du noch am testen bist


    Code
    set BMWUpdateCyclic  inactive


    und ruf das Script manuell über die Kommandozeile auf

    Code
    {BMW_Test();;}

    (ja, mit 2x ; am Ende)


    dann wird der token nicht so schnell gesperrt, wenn doch was nicht stimmt. :D

    BMW 225xe Sport Line Atlantikgrau seit 14.11.2017 :D
    BMW X1 Bj. '16 weiß/DRK mit getarnter Sondersignalanlage (5-10 Tage/Monat Dienst)
    Audi A4 Avant bj 2006 bis 11.2017 / Fiat Tipo Bj '97 bis 2007 /Honda Civic Bj. '87 bis 2003

    2 Mal editiert, zuletzt von Rumbel ()