+ Antworten
Seite 1 von 2 1 2 LetzteLetzte
Ergebnis 1 bis 10 von 20
  1. #1
    Registriert seit
    Nov 2011
    Beiträge
    402

    Standard Renault Zoe Anbindung

    Hi,

    hier ist mal ein kleines initiales script was es erlaubt, die Zoe in Symcon anzubinden. Getestet ist das ganze mit der PH2 (also dem letzen Modell).

    Das Script erstellt eiige variablen und lädt alle 24 Stunden einen neuen Token, die Daten vom Fahrzeug werden alle 5 min geholt.

    Zusätzlich kann die Vorklimatisierung aktiviert werden sowie das Laden gestartet oder abgebrochen werden.

    Die $gigya_api für DE beginnend mit "3_7PLk" sowie die $Kamereon_Api kann im Netz "oF09" kann aus dem Netz bezogen werden (weiss nicht ob ich das darf)

    Macht euch eine Kategorie, werstellt euch ein leeres Script und fügt den Inhalt dsr unten anhängenden Script ein und startet es. Es werden einige Variablen erstellt und entsprechen gefüllt. Zudem gibt es eine leere Variable namens "Google API". Wenn Ihr den API Key für Google-Maps einfügt, wird euch auch der Standort angezeigt (soweit ich weiss nur Phase2)

    Für Schäden oder ähnliches wird nicht gehaftet, das script ist noch nicht "fertig", funktioniert hier aber schon ganz gut.

    Viele Grüße
    Kris

    Update
    30.11.2020
    - inkl Api Keys
    - neue scripte zur Klimatisierung und starte der Laden. Hier wird es aber noch Änderungen geben, das die Ladung beendet wird klappt noch nicht sauber und die Variable sind derzeit bool sollen aber integer werden. Grund: Es gibt keine Rückmeldung ob die Klimatisierung begonnen hat. Daher mach ich später integer -1 für stop, 0 für dummy und 1 für klimastart...

    installscript.txt
    Geändert von kris (30.11.20 um 20:50 Uhr)
    Software: IP-Symcon V. 5 Unlimited Ubuntu 18.04
    Hardware: Shuttle DS77U3/16GB/1TBSSD
    Virtualisierung: Proxmox V6
    Homematic: Raspberrymatic

  2. #2
    Registriert seit
    Nov 2011
    Beiträge
    402

    Hi,

    ich habe das Script erweitert.
    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	2020-11-25 21_21_25-IP-Symcon Verwaltungskonsole.png 
Hits:	65 
Größe:	26.8 KB 
ID:	56429

    Man kann nun Vorklimatisieren und die max. Lademenge im Bereich von 60% - 100% einstellen. Die beiden letzten Scripte habe ich allerdings aus Zeitmangel noch nicht ausführlich getestet. Schaffe ich erst am Wochenende.

    Bei der max. Lademenge wird beim erreichen des eingetragenen Wertes die Ladung vom Fahrzeug aus beendet.

    Viele Grüße
    Software: IP-Symcon V. 5 Unlimited Ubuntu 18.04
    Hardware: Shuttle DS77U3/16GB/1TBSSD
    Virtualisierung: Proxmox V6
    Homematic: Raspberrymatic

  3. #3
    Registriert seit
    May 2014
    Ort
    Großraum Stuttgart
    Beiträge
    108

    Das sieht nach Fleiß und systematischer Arbeit aus! Hab es mir gleich mal installiert. Allerdings kriege ich noch keine Werte.

    Die $gigya_api für DE beginnend mit "3_7PLk" sowie die $Kamereon_Api kann im Netz "oF09" kann aus dem Netz bezogen werden
    Kannst Du mir hier vielleicht nochmal ein bisschen aufs Pferd helfen? Wo genau bekomme ich die Werte für die beiden APIs her?

    Ich habe ja eine recht alte ZOE Q90 (43 kW-Lader, ehemals 22 kWh-Akku, jetzt 41 kWh-Akku), also eine PH1.

    Wenn da mal was sinnvolles rauskommt, wäre es ja fast traumhaft. bisher ist das Auto ein Datengrab...
    Gruß tango
    __________________________________________________ _________________
    IPS 5 im virtuellen W2K12R2. Homematic auf Raspimatic. Eisspeicher mit UVR 16x2 und UVR1611.

  4. #4
    Registriert seit
    Nov 2011
    Beiträge
    402

    Hi,

    schön das Du testen möchtest, ich habe oben eine neue Version angehangen. Da sind die Apikeys nun drin. Die sind auf Github u.a beim pyze pojekt und noch div. anderen alle im klartext.

    Ich arbeite derzeit an einer Version bei der man die VIN nicht mehr angeben muss, da ich sie auslesen kann. Ich schaue auch mal das ich eine Unterscheidung zwischen Ph1 und Ph2 hinbekomme. Weiss leider nicht ob ich die Daten auch auslesen kann oder ob man die selber angeben muss.

    Viele Grüße
    Software: IP-Symcon V. 5 Unlimited Ubuntu 18.04
    Hardware: Shuttle DS77U3/16GB/1TBSSD
    Virtualisierung: Proxmox V6
    Homematic: Raspberrymatic

  5. #5
    Registriert seit
    May 2014
    Ort
    Großraum Stuttgart
    Beiträge
    108

    Ja super! Funktioniert zwar nicht alles, aber immerhin:

    - Reichweite km
    - Ladestand %
    - letzte Aktualisierung Batterie
    - Eingesteckt
    - Laden

    Die beiden Stecker/Ladezustände muss ich noch testen.

    Was ja für mich noch Königsklasse wäre: Kilometerstand und Standort.

    Ich habe heute einen CanSee für den CanZE gebaut (Dongle mit ESP32 und zwei Can-Adaptern). Vielleicht kann ich darüber auch noch ein Datenposting generieren. Schlimmstenfalls baue ich da noch ein GPS-Modul und eine SIM-Karte ein... Wird aber wieder ein häßlicher Aufwand.

    Aber Deine Lösung hier ist natürlich ziemlich elegant.

    By the Way: hast Du Erfahrung mit dem ABRP (A better Route Planner)? Der verarbeitet auch den Ladezustand der Batterie, aber sie kommen glaube ich noch nicht an die ZOE-Batterie dran...
    Gruß tango
    __________________________________________________ _________________
    IPS 5 im virtuellen W2K12R2. Homematic auf Raspimatic. Eisspeicher mit UVR 16x2 und UVR1611.

  6. #6
    Registriert seit
    May 2014
    Ort
    Großraum Stuttgart
    Beiträge
    108

    Kleine Korrektur:

    "Charging Status" wird bei mir nicht aktualisiert, das Feld gibt es wohl bei der PH1 nicht. Steht bei mir immer auf "true"

    Aktualisierung alle 30 Minuten oder wenn das Fahrzeug an- oder abgestöpselt wird. Ist jetzt nicht rasend schnell, aber besser als alles, was ich seither hatte ;-)

    Hab es noch mit den Zählerdaten aus meiner Wallbox kombiniert, da habe ich das Wichtigste auf einen Blick.
    Angehängte Grafiken Angehängte Grafiken  
    Gruß tango
    __________________________________________________ _________________
    IPS 5 im virtuellen W2K12R2. Homematic auf Raspimatic. Eisspeicher mit UVR 16x2 und UVR1611.

  7. #7
    Registriert seit
    Jul 2020
    Ort
    33378 Wiedenbrueck
    Beiträge
    105

    Standard Wie stellst Du die Verbindung zur ZOE her ?

    Das würde ich gern benutzen.

    Meine ZOE ist jetzt 3,5 Jahre alt und hat fast 70.000 km runter.

    Gruß
    Bernd
    Mehrere Referenzen mit IP-Symcon, 4 volle Installationen. KNX/EIB (alle Medien), LCN, LON, WAGO, Beckhoff, Phoenix Contact, Siemens LOGO, Comexio, ISYGLT, xComfort, ... . Ich müßte hier 20 Zeilen schreiben. Steuerung über Alexa, Display, Rituale und Prozesse und äußerst selten über Taster.

  8. #8
    Registriert seit
    May 2014
    Ort
    Großraum Stuttgart
    Beiträge
    108

    Sollte funktionieren! Du kannst halt "nur"

    - Reichweite km
    - Ladestand %
    - letzte Aktualisierung Batterie
    - Eingesteckt

    bekommen.

    Die Energiewerte (Leistung, Verbrauch, kumulierte Werte für Tag, Woche, Monat, Jahr) kommen von meinem ModBus-Zähler und einem Auswerte-Skript, das bei mir schon einige Jahre läuft. Da sind die Ladungen, die ich unterwegs mache, nicht dabei.

    Reichweite und Ladestand habe ich jetzt auch mal geloggt.
    Gruß tango
    __________________________________________________ _________________
    IPS 5 im virtuellen W2K12R2. Homematic auf Raspimatic. Eisspeicher mit UVR 16x2 und UVR1611.

  9. #9
    Registriert seit
    May 2014
    Ort
    Großraum Stuttgart
    Beiträge
    108

    Ich hatte mich ja schon seit längerem über diese albernen SMS geärgert, die man jetzt zu Ladebeginn und Ladeende bekommt. Mir wären eigentlich Faxe lieber gewesen ;-)

    Seit ich nun den Abfrage-Dienst eingerichtet habe, bekomme ich währen der Ladung alle 30 Minuten per SMS den Hinweis: "Laden des Fahrzeugs nicht möglich. Kommunikationsfehler oder Laden schon begonnen. Das Renault Team"

    Ich hab den Quatsch in der App abgeschaltet. Das Auto lädt tatsächlich. Vermutlich ist der Dienst, der diese SMS versendet, jetzt beleidigt, weil das Konto alle 5 min abgefragt wird. Überfordert die Renault-Server.
    Gruß tango
    __________________________________________________ _________________
    IPS 5 im virtuellen W2K12R2. Homematic auf Raspimatic. Eisspeicher mit UVR 16x2 und UVR1611.

  10. #10
    Registriert seit
    Nov 2011
    Beiträge
    402

    Hi,

    juhu, Willige Tester

    Also soweit ich das sehe gehen bestimmte Dinge bei der Phase 1 nicht. bspw die GPS Daten.

    Dafür fehlen bei der Phase 2 die Batterietemperatur und die Außentemperatur. Die gibt es nur bei der 1.

    @Bernd
    Phase 1 wurde bis ca 2019 gebaut und danach Phase2, sollte also klappen.

    Ihr könnt ja in der Kategorie folgendes Script einfügen und ausführen:
    Code:
    <?php
    
    function GetBatteryData(){
        $ObjektInfo = IPS_GetObject(IPS_GetParent($_IPS['SELF']));
        $ObjectID = $ObjektInfo['ObjectID'];
    
        $TokenID =      GetValue(IPS_GetObjectIDByIdent($ObjectID."_TokenID", $ObjectID));
        $AccountID =    GetValue(IPS_GetObjectIDByIdent($ObjectID."_AccountID", $ObjectID));
        $KameronID =    GetValue(IPS_GetObjectIDByIdent($ObjectID."_KAMEREON_API", $ObjectID));
        $VinID =        GetValue(IPS_GetObjectIDByIdent($ObjectID."_VIN", $ObjectID));
        $CountryID =    GetValue(IPS_GetObjectIDByIdent($ObjectID."_COUNTRY", $ObjectID));
    
        $postData = array(
            'apikey: '.$KameronID,
            'x-gigya-id_token: '.$TokenID
        );
        $ch = curl_init('https://api-wired-prod-1-euw1.wrd-aws.com/commerce/v1/accounts/'.$AccountID.'/kamereon/kca/car-adapter/v2/cars/'.$VinID.'/battery-status?country='.$CountryID);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $postData);
        $response = curl_exec($ch);
        if ($response === FALSE) die(curl_error($ch));
        $md5 = md5($response);
        $responseData = json_decode($response, TRUE);
        print_r($responseData);
    }
    
    //Abfrage Kilometerstand
    function GetCockpitData(){
        $ObjektInfo = IPS_GetObject(IPS_GetParent($_IPS['SELF']));
        $ObjectID = $ObjektInfo['ObjectID'];
    
        $TokenID =      GetValue(IPS_GetObjectIDByIdent($ObjectID."_TokenID", $ObjectID));
        $AccountID =    GetValue(IPS_GetObjectIDByIdent($ObjectID."_AccountID", $ObjectID));
        $KameronID =    GetValue(IPS_GetObjectIDByIdent($ObjectID."_KAMEREON_API", $ObjectID));
        $VinID =        GetValue(IPS_GetObjectIDByIdent($ObjectID."_VIN", $ObjectID));
        $CountryID =    GetValue(IPS_GetObjectIDByIdent($ObjectID."_COUNTRY", $ObjectID));
    
        $postData = array(
             'apikey: '.$KameronID,
              'x-gigya-id_token: '.$TokenID
        );
        $ch = curl_init('https://api-wired-prod-1-euw1.wrd-aws.com/commerce/v1/accounts/'.$AccountID.'/kamereon/kca/car-adapter/v1/cars/'.$VinID.'/cockpit?country='.$CountryID);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $postData);
        $response = curl_exec($ch);
        if ($response === FALSE) die(curl_error($ch));
        $responseData = json_decode($response, TRUE);
        print_r($responseData);
    }
    
    // hole Positionsdaten
    function GetPosition(){
        $ObjektInfo = IPS_GetObject(IPS_GetParent($_IPS['SELF']));
        $ObjectID = $ObjektInfo['ObjectID'];
    
        $TokenID =      GetValue(IPS_GetObjectIDByIdent($ObjectID."_TokenID", $ObjectID));
        $AccountID =    GetValue(IPS_GetObjectIDByIdent($ObjectID."_AccountID", $ObjectID));
        $KameronID =    GetValue(IPS_GetObjectIDByIdent($ObjectID."_KAMEREON_API", $ObjectID));
        $VinID =        GetValue(IPS_GetObjectIDByIdent($ObjectID."_VIN", $ObjectID));
        $CountryID =    GetValue(IPS_GetObjectIDByIdent($ObjectID."_COUNTRY", $ObjectID));
    
        $postData = array(
          'apikey: '.$KameronID,
          'x-gigya-id_token: '.$TokenID
          );
        $ch = curl_init('https://api-wired-prod-1-euw1.wrd-aws.com/commerce/v1/accounts/'.$AccountID.'/kamereon/kca/car-adapter/v1/cars/'.$VinID.'/location?country='.$CountryID);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $postData);
        $response = curl_exec($ch);
        if ($response === FALSE) die(curl_error($ch));
        print_r($response);
    }
    
    echo "################# Hole Batteriedaten ab\n";
    GetBatteryData();
    echo "################# Hole Cockpitdaten ab\n";
    GetCockpitData();
    echo "################# Hole Positionsdaten ab\n";
    GetPosition();
    Die daten stehen mir zur Verfügung... Ich brauch noch ein wenig Zeit, am WE hat mein Kind Geburtstag, da schaff ich wahrscheinlich nix

    Viele Grüße
    Software: IP-Symcon V. 5 Unlimited Ubuntu 18.04
    Hardware: Shuttle DS77U3/16GB/1TBSSD
    Virtualisierung: Proxmox V6
    Homematic: Raspberrymatic

Ähnliche Themen

  1. Elektroautos-Akku auslesen, z.B. Renault ZOE
    Von tango im Forum Allgemeine Diskussion
    Antworten: 2
    Letzter Beitrag: 23.11.20, 22:00
  2. Anbindung an Spotify
    Von Black-Blade im Forum Externe Zusatzsoftware
    Antworten: 6
    Letzter Beitrag: 26.11.18, 19:00
  3. Power Bi Anbindung
    Von PhilippS im Forum Allgemeine Diskussion
    Antworten: 0
    Letzter Beitrag: 04.11.17, 18:42
  4. Zoe Smarthome Steuerung
    Von PeterChrisben im Forum Schaufenster
    Antworten: 8
    Letzter Beitrag: 23.09.16, 09:03
  5. Homematic Anbindung
    Von zman0801 im Forum HomeMatic
    Antworten: 1
    Letzter Beitrag: 21.06.09, 12:30