[Ph2] OVMS 3.3 für Zoe Phase 2

Serienmäßig ist dir der Renault ZOE zu langweilig? Hier geht es um besser, schneller, weiter, schöner

[Ph2] OVMS 3.3 für Zoe Phase 2

Crash_Override
  • Beiträge: 18
  • Registriert: Do 6. Aug 2020, 15:51
  • Hat sich bedankt: 2 Mal
  • Danke erhalten: 8 Mal
read
Hallo Zoe Ph2 Fahrer,

ich habe die OVMS3 Firmware geforked, um an einer Implementation für meine Zoe Phase 2 zu arbeiten, da die Renault Service nicht wirklich zuverlässig sind und auch später noch Geld kosten sollen. Ich bin durch Recherchen nach Alternativen über das OVMS Projekt gestoßen, welches ich sehr interessant finde.
Habe lange überlegt, aber mit dann trotzdem eine Box gekauft, obwohl ich wusste das die Phase2 nicht unterstützt würde.
Ich dachte mir ja die Firmware ist Open Source, ich kopiere die Phase 1 und gebe die richtigen Adressen ein und fertig. Naja so einfach war es dann doch nicht.

Zum einen bin ich kein C-Entwickler, habe zwar einige Projekte mit dem PlatformIO / Arduino Framework umgesetzt, aber da die OVMS diese nicht nutzt, war das einarbeiten erstmal sehr schwer. Die Komplexität der Software habe ich komplett unterschätzt, trotzdem habe ich mich dran gesetzt und viel mit gespielt und getestet. Die Lernkurve war extrem steil, was die Syntax und der Aufbau der Firmware angeht.

Die nächste Hürde der CAN Bus an solches. Ich habe damit schon ein Projekt gemacht (RPi plus externes Display über CAN), aber eben nur CAN (Layer 2) wie er ist benutzt. Bis ich verstanden habe das die Zoe ISO-TP auf dem CAN verwendet und dieser nochmal eine Schicht oben drauf legt. Durch viel einlesen, loggen der Frames und herumrechnen ist es mir dann doch gelungen soweit durchzusteigen, das ich Daten aus der Zoe bekomme.

Als Referenz habe ich mir erstmal CanZE zur Brust genommen, was für mich aber auch schwer war durchzublicken, da ich noch nie eine Android App programmiert hab. Ich hab die Datenpunktlisten nach interessanten Werten abgegrast und ins OVMS einprogrammiert. Das Ergebnis war das manche Abfragen unbeantwortet oder mit OutOfRange beantwortet wurden oder das seltsame Werte zurück kamen. Habe lange Zeit im trüben gestochert, bis ich mir dann die Mühe gemacht habe mit DDT4All und einer aktuellen Datenbank (11/2021) ins Auto gesetzt habe, um die Daten damit anzuschauen.

Viele interessante Datenpunkte waren garnicht abrufbar oder unter einer anderen Adresse ereichbar, doppelt und dreifach vorhanden und nur eine davon ausgefüllt als Beispiel. Habe mir Screenshots erstellt und die zugehörigen XML Dateien analysiert, um die Adressen und die Umrechnung herauszufinden.
Dadurch bin ich sehr schnell an plausible Werte gekommen, die ich gut verarbeiten konnte.

Mittlerweile läuft die Kiste recht stabil und bringt auch immer saubere Werte, zumindest die die ich eingeplegt habe. Einige Datenpunkte musste ich wieder entfernen, da diese entweder unzuverlässig waren (mal gehts mal nicht) oder teilweise merkwürdige Werte geliefert haben. Fahre damit schon rund 2 Wochen herum und fixe immer wieder Auffälligkeiten.

Am OBD Port gibt es sogar ein paar "Free Frames" die ich in meiner Implementation nutze, um den Wach Zustand zu erkennen und dann das Abfragen der Datenpunkte beginne. Da diese Implementation auf die einfache Möglichkeit des Anschlusses an den OBD Port ermöglichen soll, müssen alle Datenpunkte gepollt also abgefragt werden. Am einfachsten wäre es gewesen, permanent zu pollen und wenn Daten kommen diese zu verarbeiten.

In der Regel schläft die Zoe wenn sie nicht am Strom steckt, wie normal nach 10Minuten oder nach 1 Minute nach Abschließen ein und beantwortet jede Abfrage mit einem NAK vom Gateway, dies habe ich als Anhaltspunkt genommen das pollen zu stoppen und die Zoe als aus zu definieren. Aber wenn die Zoe angesteckt ist, aber die Wallbox abgeschaltet ist, hat dies einen gravierenden Nachteil. Und zwar ist die Zoe wenn die auf die Ladung wartet, im Halbschlaf. Das heißt EVC und LBC antworten auf das polling, laden aber die 12V Batterie nicht und die HV-Schütze sind ebenfalls aus. An sich nicht tragisch aber die Zoe versucht einzuschlafen, hört man an den Relais und das Abschalten der Displays, wacht aber mit einer weiteren Anfrage wieder auf. Dann kommt "Batterie im Sicherheitsmodus" im Display und sie versucht wieder einzuschlafen und wacht wieder auf. Dies passiert auch im abgeschlossenen Zustand.

Ich habe dies über Nacht getestet, das resultat war das der 12V Akku komplett geleert wurde (~9V). Das OVMS hat aber sauber einen Alarm abgeschickt und die Zoe ist von selbst dann wach geblieben und hat den wieder auf knapp über 13V aufgeladen.

Dies hat mich dazu veranlasst den Ladungszustand "powerwait" zu beachten und das pollen komplett zu stoppen. Das führt allerdings dazu das das OVMS garnichts mehr mitbekommt. Aber zum Glück wenn die Zoe eingeschlafen ist und durch Aktivieren der Wallbox (oder aufschließen) sendet diese ein paar Freeframes an den OBD Port, welche ich detektiere und das pollen wieder starte. Daher die Warnung falls ihr die Firmware auch mal ausprobieren möchtet, das eventuell die 12V Batterie entladen werden kann.

Die FreeFrames habe ich mit der Logfunktion vom OVMS und Wireshark mit Can und ISOTP Decoder ausgewertet und mit auf die Repo unter Reference gelegt. Das LBC sendet nach Aufwecken oder Ladungsstart und -stopp die Heatmap mit wieviel SOC in welchem Temperaturbereich wieviel Zeit verbracht wurde (Reference/DDT/LBC/LBC Stats.png)

Des Weiteren kann ich nicht garantieren ob alle Softwareversionen der Steuergeräte in der Zoe, genauso reagieren wie meine.

Aufgrund meiner einfachen Programmierkenntnisse und der hohen Komplexität der Firmware, bitte ich die ggf. ineffziente Implementation nicht zu hart zu bewerten. Im Moment werden im Prinzip nur Werte aus der Zoe ausgelesen, um die Standard Metriken möglchst gut auszufüllen, um die bereits eingebauten Basisfunktionalitäten des OVMS zu nutzen (OVMS.V3/components/vehicle_renaultzoe_ph2/docs/index.rst). Auch einige eigene Metriken habe ich angelegt, da mich auch die Drehzahl und Stromverbrauch der Wärmepumpe zum Beispiel interessieren.

Leider fehlen mir wichtige Datenpunkte wie, Restkilometer, Restladezeit, was ich durch Berechnen ausgleiche, aber dadurch nie die Werte angezeigt werden wie im Auto selbst und eben auch ungenau sind, da zum Bsp. die Ladekurve nicht beachtet wird.

Das Anlegen einer eigenen Repo ist nicht state of the art, aber ich kam mit dem Original schlecht klar. Ich will aufjeden Fall wenn die Zoe Integration den Qualitätsstandard von anderen OVMS Integrationen erreicht, mit den Entwicklern Kontakt aufnehmen, damit diese in die Original Firmware integriert werden kann.

Da ich das Auto bis es auseinander fällt fahren und auch etwas Komfort genießen möchte, will ich die Integration nicht nur bei der Basisfunktionalität von OVMS belassen, sondern habe weitere Pläne auch Steuerungsfunktionen sowie auch Heizen beim Laden und andere Späße zu integrieren. Die OVMS Entwickler haben dafür soviele schöne Möglichkeiten integriert, die ich hier aktuell noch garnicht nutzen (kann). Dies erfordert natürlich das Anzapfen der CAN Busse nach dem Gateway oder knacken des Key-Austausch zur Freigabe des Schreibzugriffes über das Gateway. Dies erfordert das Dumpen der Firmware des Controllers und anstrengendes reverse engineeren, leider habe ich das CAN Gateway selbst noch nicht gefunden.

Wer die Firmware bzw. mein Fork auf sein OVMS3.3 aufspielen möchte, kann einfach die URL von meinem Firmware OTA Server eingeben und das flashen "Flash from web" antriggern. Ich nutze die Versions-Tags wie das openvehicles-Team, sprich "main" kann geflasht werden und unter "edge" probiere ich wiederrum neue Sachen aus, diese bitte nicht installieren.

OTA Server URL: https://ovms-ota.bit-cloud.de
Sourcecode: https://git.bit-cloud.de/carsten.schmiemann/OVMS3
Feature list: https://git.bit-cloud.de/carsten.schmie ... /index.rst

Im Anhang die Metrics-Liste was alles ausgelesen oder berechnet wird und ein Screenshot des BMS Battery Monitors.

Hiermit auch nochmal einen herzlichen Dank an das ganze OVMS-Entwicklerteam!

Gruß
Carsten
Dateianhänge
IOS_App2.png
IOS_App1.png
Datei Metriken.txt
(10.63 KiB) 13-mal heruntergeladen
Flash.png
BMS.PNG
Zoe R110 ZE 50 (Life + Nebelscheinwerfer, EZ 10/20, Ph2)
Anzeige

Re: [Ph2] OVMS 3.3 für Zoe Phase 2

USER_AVATAR
read
Wahnsinnsarbeit. Respekt!
Zoe seit 2013, 41kWh seit Ende 2018 - Verbrauch ab Zähler mit allem (Ladeverluste) und scharf (Vorheizen) Bild

Re: [Ph2] OVMS 3.3 für Zoe Phase 2

lorbi
  • Beiträge: 194
  • Registriert: Sa 25. Jul 2020, 08:31
  • Danke erhalten: 68 Mal
read
Hi,

sehr cool. Da muss ich mich mal in ovms einlesen. Würde gerne den akkustand beim Laden überwachen ohne die renault API zu benutzen.

danke für das teilen.

viele grüsse

Gesendet von meinem Pixel 5 mit Tapatalk

Re: [Ph2] OVMS 3.3 für Zoe Phase 2

Crash_Override
  • Beiträge: 18
  • Registriert: Do 6. Aug 2020, 15:51
  • Hat sich bedankt: 2 Mal
  • Danke erhalten: 8 Mal
read
Kein Thema, geben und nehmen :-)

So meine Zoe stand eine Woche herum, wegen Bereitschaft. Dabei ist aufgefallen das ca. alle 24h der 12V Akku für 4h nachgeladen wird. Vermutlich wird der Ladestrom überwacht und wenn dieser unter einen gewissen Wert fällt, schläft die Zoe wieder ein.
Ich habe leider aufgrund Zeitmangel erst relativ spät angefangen die Daten vom OVMS Server zu loggen.

Hier im Bild sieht man deutlich das absinken der 12V Spannung und bei ca 12,5V das Nachladen der Zoe. Dies hat mich 6% SOC gekostet. Am Anfang als ich die Zoe neu hatte, waren es für 1-2 Wochen Standzeit nur rund 1-2%.

Das OVMS bietet ja eine Stromsparfunktion (Config -> Power Mgm), aber ich fürchte, das beim Sleep und anschließendem aufwachen, das OVMS nicht erkennt dass die Zoe wach ist (Prüfung der 12V Spannung jede Minute), weil ich ja auf die handvoll FreeFrames auf dem OBD Port lausche und dadurch das Pollen beginne. Laut den Messdaten und einer ungefähren Berechnung müsste das OVMS rund 300mA ziehen, was mir jetzt doch viel vorkommt, vllt ist auch nur mein Bleianker nicht mehr ok, habe den "Vampirverlust" aber vor dem Basteln mit dem OVMS nicht mehr wirklich beachtet.

In der Anleitung wird empfohlen es abzuklemmen bei längerem Stillstand, was zwar sinnvoll, aber nach sauberem verbauen für mich irgendwie nicht sehr praktikabel erscheint.

Naja muss ich mir noch was einfallen lassen :-)

Im Bild werden die Linien interpoliert, ich lasse nur Veränderung auf die Datenbank übertragen, was viel Interpolation für einen schönen Graphen erforderlich macht. Daher der Strom der Batterie steigt nicht an, sondern wird erst ausgelesen / gemessen wenn das Laden beginnt, daher habe ich die Messpunkte eingeblendet.

Achja in der Renault App oder Zeddy war das nachladen bzw. das die Zoe wach ist nicht ersichtlich, letzte Aktualisierung auf dem Renault-Server, war immer der Zeitpunkt nach dem der SOC 1% abgesunken ist.

Zudem sieht man sofort nach dem Erwachen wie die 12V Spannung sofort auf knapp unter 15V springt, das liegt daran das im Schlaf-Zustand das OVMS die 12V selbst misst und wenn der Bus wach ist, ich diese aus dem DC-DC auslese, das macht das Ganze etwas ungenau, was die eigentliche Batteriespannung angeht. Daher überlege ich die 12V Spannung des DC-DCs in eine Custom Metric zu setzen und die 12V dem OVMS zum messen überlassen. Die Messung kann unter Config -> Vehicle mit einem Multimeter kalibriert werden.
Dateianhänge
Bildschirmfoto vom 2022-05-02 18-55-33.png
Zoe R110 ZE 50 (Life + Nebelscheinwerfer, EZ 10/20, Ph2)

Re: [Ph2] OVMS 3.3 für Zoe Phase 2

lorbi
  • Beiträge: 194
  • Registriert: Sa 25. Jul 2020, 08:31
  • Danke erhalten: 68 Mal
read
Hi,

bin sehr gespannt wie es weitergeht. Hab mir das ovms nebst Adapter bestellt und der soll bis Ende Mai hier sein.

ich hoffe ich kann ein wenig zu dem projekt beitragen, cansee-adapter liegt hier rum.

Mir gehen die renault app und api auf die nerven, am samstag war auf einmal den ganzen tag die Verbindung weg und ich konnte keine daten empfangen. sehr lästig.

viele grüsse

Gesendet von meinem Pixel 5 mit Tapatalk

Re: [Ph2] OVMS 3.3 für Zoe Phase 2

Crash_Override
  • Beiträge: 18
  • Registriert: Do 6. Aug 2020, 15:51
  • Hat sich bedankt: 2 Mal
  • Danke erhalten: 8 Mal
read
Hi,

ja bei mir hat es zwei Anläufe gebraucht bis das OVMS aus GB hier war, einmal wurde es vom Zoll abgelehnt, aber der zweite Versuch hat geklappt :-)

Den CanSee hat mir ein Kumpel auch gebaut, aber dank der integrierten Loggingfunktion vom OVMS, wurde er nur noch selten benötigt.

Richtig spannend wird es wenn man die Busse hinter dem Gateway anzapft. Einer hier im Forum hatte mal den Tacho ausgebaut und mal geschaut welche Steuergeräte antworten. Finde zwar den Beitrag aktuell nicht, aber wenn ich es noch recht weiß gibt es 3 Busse.

Da dort ja permanent Daten ausgetauscht werden, wäre das detektieren ob die Zoe wach ist etc. einfacher. Da kann man dann wie in der Zoe Ph1 Implementation einfach die Daten auswerten, statt alles zu pollen.
Und man kann eben mit den Diagnosefunktionen Aktoren ansteuern, das wäre natürlich interessant wenn man die PTCs ansteuern kann zum Beispiel beim Laden :-).
lorbi hat geschrieben: ....
sehr cool. Da muss ich mich mal in ovms einlesen. Würde gerne den akkustand beim Laden überwachen ohne die renault API zu benutzen.
....
Würde mich auch interessieren wie die Zellspannungen nach kompletten Volladen bei dir sind. Bei mir werden die Zellen bis auf 4.27V aufgeblasen, das liegt aber wahrscheinlich an der verbuggten Firmware des BMS. Dort wird ja der SOH zu niedrig berechnet und ich denke das BMS gibt dann, um den "Kapazitätsverlust" zu kompensieren mehr Kapazität frei und dadurch werden die Zellen bis Anschlag geladen. Ich meine dass ich mit CanZE nach Erhalten der Zoe max so 4.1xV gesehen habe nach 100% SOC.

Leider hat es meine Werkstatt nicht mal es geschafft die Energieinfos freizuschalten, das Update ist drauf aber der ConfigReset (o.ä.) hat gefehlt. Habe wie hier empfohlen "passend herumgeheult", habe auch eine ganze Liste voll mit diversen Geräten "NEU KONFIGURIERT" erhalten, aber es hat sich nix geändert außer dass das MultimediaSystem geupdatet wurde. Den ConfigReset könnte man ja auch selbst machen mit DDT4all hinter dem Gateway, aber Firmware Files für die Steuergeräte habe ich leider noch nicht in "freier Wildbahn" gefunden.

Gruß
Carsten
Zoe R110 ZE 50 (Life + Nebelscheinwerfer, EZ 10/20, Ph2)

Re: [Ph2] OVMS 3.3 für Zoe Phase 2

feisalsbrother
  • Beiträge: 543
  • Registriert: Mi 16. Mai 2018, 18:19
  • Hat sich bedankt: 616 Mal
  • Danke erhalten: 148 Mal
read
zock3r1608 hat geschrieben: So meine Zoe stand eine Woche herum, wegen Bereitschaft. Dabei ist aufgefallen das ca. alle 24h der 12V Akku für 4h nachgeladen wird. Vermutlich wird der Ladestrom überwacht und wenn dieser unter einen gewissen Wert fällt, schläft die Zoe wieder ein.
Jetzt weiss ich auch, warum ab und zu, unabhängig von der Aussen-Temperatur, die Parkbremse-LED leuchtet. Das wusste nicht mal mein Freundlicher.
ZOE Ph2 R110, ZE 50, 11/2020

Re: [Ph2] OVMS 3.3 für Zoe Phase 2

lorbi
  • Beiträge: 194
  • Registriert: Sa 25. Jul 2020, 08:31
  • Danke erhalten: 68 Mal
read
Hi,

mein OVMS ist heute angekommen. Verdammt fix. Ich installiere gerade deine Firmware. Heute gehe ich aber nicht mehr raus ins auto ;)

Viele Grüße

Re: [Ph2] OVMS 3.3 für Zoe Phase 2

Crash_Override
  • Beiträge: 18
  • Registriert: Do 6. Aug 2020, 15:51
  • Hat sich bedankt: 2 Mal
  • Danke erhalten: 8 Mal
read
Klasse, viel Spaß.

Hoffe es funzt alles wie bei mir. Hab wieder einiges gefixt.

Aktuell hänge ich noch an den TPMS Temperaturen, hab es so programmiert wie in der XML von DDT beschrieben. Aber es klappt hinten und vorne nicht. Aktuell gehen die Temperaturen runter wenn die Reifen wärmer werden.

Der Druck wird komischerweise falsch über die REST API vom OVMS Server übermittelt. In der App sind diese korrekt. Da muss ich auch schauen wo es klemmt.

Gruß
Carsten
Zoe R110 ZE 50 (Life + Nebelscheinwerfer, EZ 10/20, Ph2)

Re: [Ph2] OVMS 3.3 für Zoe Phase 2

lorbi
  • Beiträge: 194
  • Registriert: Sa 25. Jul 2020, 08:31
  • Danke erhalten: 68 Mal
read
Hi,

klappt hervorragend. TPMS konnte ich noch nicht prüfen, aber viele andere Dinge (Status der Türe, Soc, Soh, Status Beleuchtung etc). Ich bekomme unglaublich viele Daten in mein MQTT Broker, da muss ich erstmal doku lesen um zu verstehen, wieso die Metricen so heißen (bspw v.e.temp oder zph2.b.user.soc) wie sie heißen.

Ich bin jedenfalls schwer begeistert, wie weit Du bist.

Ist eigentlich auch ein schreiben möglich? bspw Vorklimatisierung o.ä.?

viele Grüße
Anzeige
AntwortenAntworten

Zurück zu „ZOE - Modifikationen“

Gehe zu Profile
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag