ELMConfig

  • Ich vermisse seit langem eine Erklärung der ELMConfig Funktionen, mal abgesehen davon das vieles noch in russisch drin steht. Daher habe ich begonnen dieses Stückchen Software mal unter die Lupe zu nehmen.
    Heraus kommen soll u.a. eine Screenshot-Anleitung sämtlicher CCC-Einstellwerte und deren Auswirkungen und Abhängigkeiten.

    Die CCC-Anleitung entsteht hier im MK4-Wiki:
    https://mk4-wiki.denkdose.de/grundlagen/elmconfig/ccc/start

    Die kompletten ELMConfig Infos (Installation, Adapter, internes) liegt dann hier:
    https://mk4-wiki.denkdose.de/grundlagen/elmconfig/

    "Lernen ist Erfahrung. Alles andere ist einfach nur Information."

    Albert Einstein

    Einmal editiert, zuletzt von Go4IT (15. März 2017 um 11:54)

  • Dateien im Programmordner:
    ConvertSys.dll => ? (Muss etwas ELMConfig-Spezifisches sein)
    ELMConfig.exe => Die ausführbare Programmdatei. Sie muss nicht installiert und kann per Doppelklick gestartet werden.
    mscomctl.ocx => Visual Basic 6.0 Bibliothek (ActiveX-Steuermodul. Enthält Standard-Fensterelemente wie Statusbalken, Scrollleisten, Listen, Buttons, Dropdown-Menüs, etc.)
    comdlg32.ocx => Visual Basic 6.0 Bibliothek (ActiveX-Steuermodul für Dialoge)
    mscomm32.ocx => Visual Basic 6.0 Bibliothek (ActiveX-Steuermodul Com-Control)
    mswinsck.ocx => Visual Basic Bibliothek (Winsock-Steuermodul zur Schnittstellenkommunikation, z.B. USB, Seriell, Netzwerk)
    msxml6.dll => MSXML 6.0 Bibliothek (Bibliothek zur Verarbeitung von XML-Dateien)
    scrrun.dll => System Scripting Runtime (Bibliothek für Lese/Schreiboperationen von Textdateien)

    Dateien im Unterordner "data":
    code.dtc => Microsoft JET Datenbankdatei (MDB). Enthält die DTC-Codes und Fehlertypen.
    frw.dat => ?
    <VERSION>-14C097-<RELEASE>.vbf => Der Bootloader für das jeweilige BCM im "Volvo-Binary-File" Format (.vbf).
    <VERSION>-14C025-<RELEASE>.vbf => Der Bootloader für das jeweilige IPC im "Volvo-Binary-File" Format (.vbf).

    "Lernen ist Erfahrung. Alles andere ist einfach nur Information."

    Albert Einstein

    Einmal editiert, zuletzt von Go4IT (13. März 2017 um 16:16)

  • Die code.dtc enthält folgende Tabellen:

    • "dtc_eng" => DTC-Codes in englisch
    • "dtc_rus" => DTC-Codes in russisch
    • "flt_eng" => Fehlertypen in englisch
    • "flt_rus" => Fehlertypen in russisch

    Unter Linux lässt sich das so ermitteln:

    Code
    # ggf. mdbtools installieren mit:
    yum install mdbtools
    
    
    # Tabellen auflisten. Hierzu ins Verzeichnis gehen wo die Daten liegen
    mdb-tables code.dtc
    
    
    dtc_eng dtc_rus flt_eng flt_rus

    Die DTC-Code Tabellen sehen wie folgt aus:

    Code
    mdb-export code.dtc dtc_eng
    
    
    id,cod,descr
    1,"B0001","Driver Frontal Stage 1 Deployment Control"
    ...
    7758,"P0B3D","Hybrid Battery Voltage Sense A Circuit Low"
    ...
    14188,"U3011","Ignition Input Off"


    Die erste Spalte ist nur ein Datensatzzähler. Relevant ist die zweite, das ist der DTC-Code und danach die Beschreibung davon.

    Die Fehlertypen Tabellen sehen so aus:

    Code
    mdb-export code.dtc flt_eng
    
    
    id,cod,descr
    1,"00","No sub type information"
    2,"01","General electrical failure"
    3,"02","General signal failure"
    ...
    110,"9A","Component or system operating conditions"


    Der Fehlertyp ist das, was nach dem ersten Komma beim DTC steht.

    Die Datei selbst lässt sich mit jedem MDB-Tool lesen und ändern. Unter Windows z.B. "MS Access" und unter Linux z.B. die "mdbtools".

    "Lernen ist Erfahrung. Alles andere ist einfach nur Information."

    Albert Einstein

    Einmal editiert, zuletzt von Go4IT (14. März 2017 um 15:54)

  • Die Dateien
    <VERSION>-14C097-<RELEASE>.vbf => Der Bootloader für das jeweilige BCM im "Volvo-Binary-File" Format (.vbf).
    <VERSION>-14C025-<RELEASE>.vbf => Der Bootloader für das jeweilige IPC im "Volvo-Binary-File" Format (.vbf).
    enthalten die Bootloader fürs BCM und IPC.

    Die <VERSION> muss zum im Fahrzeug verbauten Modul passen. ELMConfig kann diese automatisch auswählen. Es liest hierzu die Modulinformationen aus.

    In diesen Dateien gibt es einen lesbaren und einen binären Teil. Der letztere enthält ein Stück Software welches aufs BCM/IPC übertragen und ausgeführt wird. Dieser empfängt dann in den nachfolgenden CAN-Nachrichten die CCC und legt diese in einen nicht-flüchtigen Speicherbereich (EEPROM/Flash) ab. Am Ende des Prozesses führt es noch einen Modulreset durch um das BCM wieder in den Normalzustand zu versetzen.

    Der lesbare Teil enthält z.B.:

    Der "network" Parameter gibt an, über welchen Bus das Modul erreichbar ist. In "ecu_address" ist die CAN-ID enthalten, unter der sich das BCM angesprochen fühlt, sobald der Bootloader ausgeführt wird. Über diese Adresse erwartet er die CCC.

    Mit "call" wird die Einsprung-Speicheradresse des nachfolgenden Binärteils angegeben. Ab dieser Adresse startet der Booloader.

    Die "file_checksum" sichert gegen Übertragungsfehler. Das BCM berechnet diese Prüfsumme, bevor es den Code ausführt. So soll sichergestellt werden, das ein verstümmelt übertragener Bootloader das BCM zum "Ziegelstein" macht ("bricked").

    Intressant finde ich, das die Teilenummern die dort verwendet werden, garnicht zu existieren scheinen. Ein "AG9T-14C097-AC" gibt es garnicht. Falls damit das BCM gemeint sein sollte, dann müsste das "AG9T-14C073-AC" heißen. Ähnliches gilt für die IPC-Files.

    "Lernen ist Erfahrung. Alles andere ist einfach nur Information."

    Albert Einstein

  • Ich vermisse seit langem eine Erklärung der ELMConfig Funktionen, mal abgesehen davon das vieles noch in russisch drin steht. Daher habe ich begonnen dieses Stückchen Software mal unter die Lupe zu nehmen.
    Heraus kommen soll u.a. eine Screenshot-Anleitung sämtlicher CCC-Einstellwerte und deren Auswirkungen und Abhängigkeiten. Diese soll dann hier entstehen: https://mk4-wiki.denkdose.de/grundlagen/elmconfig/ccc/start

    Was du dir da vorgenommen hast dazu möchte ich mal sagen Respekt und viel Erfolg :thumbup::thumbup::thumbup:
    Finde ich sehr gut sowas.

  • Tolles Projekt. Danke und viel Erfolg!

  • Nicht bedanken, mithelfen ! ;)
    Vieles davon weiss ich stand heute auch nicht! Da bin ich auf Unterstützung angewiesen.

    "Lernen ist Erfahrung. Alles andere ist einfach nur Information."

    Albert Einstein

  • Intressant finde ich, das die Teilenummern die dort verwendet werden, garnicht zu existieren scheinen. Ein "AG9T-14C097-AC" gibt es garnicht. Falls damit das BCM gemeint sein sollte, dann müsste das "AG9T-14C073-AC" heißen. Ähnliches gilt für die IPC-Files.

    ist eventuell wie bei den Türsteuermodulen. Dort gibt es neben der Nummer fürs komplette Modul ja auch die ähnlichen HW und SW Nummern.

    Mein Verbrauch 677593_3.png

  • Habs rausgefunden. Es ist nicht die Teile- sondern die Softwarenummer!

    "Lernen ist Erfahrung. Alles andere ist einfach nur Information."

    Albert Einstein

  • Habe mir da mal ein Konzept zur Dokumentation der Parameter überlegt. Schaut mal bitte ob das so gut ist https://mk4-wiki.denkdose.de/grundlagen/elmconfig/ccc/start

    "Lernen ist Erfahrung. Alles andere ist einfach nur Information."

    Albert Einstein

  • Ist schon ganz gut gemacht :thumbup:
    Vorschlag: Man könnte zb bei Schritt 2 nach dem Anklicken der einzelnen Pages unterhalb der Abbildungen eine Tabelle anfügen in der dann den roten Nummern entsprechend die einzelnen Funktionen nacheinander Punkt für Punkt erklärt werden.
    Das könnte vielleicht für die Übersichtlichkeit von Vorteil sein.

  • Danke Dermon4, das hatte ich in der Tat zuerst so geplant. Ich wollte aber pro Setting eine Seite haben, denn darauf kann man dann in Anleitungen besser verweisen. Könnte ja sein das man zu einzelnen Settings Bilder oder Videos einfügt, die die auswirkung zeigen, usw. Das würde als einzelne Seite dann seeeehr lang werden.

    "Lernen ist Erfahrung. Alles andere ist einfach nur Information."

    Albert Einstein

  • Also wenn ich das richtig verstanden habe hast du vor praktisch für jedes einzelne CCC-Setting auf jeder einzelnen der 5 Pages eine extra Seite zu erstellen, immerhin rund 130.
    Wie wärs wenn du trotzdem bei Schritt 2 unter den Abbildungen eine Tabelle hinzufügst in der zu den einzelnen Nummern jeweils eine kurze Erklärung in Sätzen oder Stichworten drinsteht damit der interessierte User sich einen ersten Überblick über die möglichen Optionen verschaffen kann. Wenn jemand sich dann für einen bestimmten Punkt besonders interessiert könnte er dann in das jeweilige Tabellenfeld klicken von dem aus dann auf eine gesondert im Wiki zu erstellende Seite mit ausfühlicheren Informationen verlinkt wird auf der dann wiederum Unterseiten mit Bildern, Texten oder Videos zu den einzelnen Settings vorhanden sind.

  • Also ne Art Index? Gut idee. Ich will Dir nur kurz erklären wie mein Aufbau ausieht:

    Ich habe das Wiki so gegliedert das es "Grundlagen" und "Anleitungen" gibt. In den Grundlagen werden einzelne Teile/Verfahren, bis ins Detail beschrieben. In den Anleitungen konkrete Ziele verfolgt und darin ggf. zu den Grundlagen verwiesen.

    Für ELMConfig dachte ich mir das so, das in den Grundlagen die Software beschrieben ist, mit all ihren Funktionen und Möglichkeiten. In den Anleitungen wollte ich dann z.B. sowas wie "Automatische Türverriegelung aktivieren" oder "Standheizung bei Dieselfahrzeugen freischalten" aufnehmen. Darin verweise ich dann z.B. auf den einzustellenden Menüpunkt in der CCC.

    Ich erhoffe mir damit größtmögliche Flexibilität und Wiederverwendbarkeit der Informationen. Vielleicht denke ich aber auch mal wieder nur viel zu kompliziert, denn es soll ja noch verständlich und einfach zu bedienen sein. 8|

    "Lernen ist Erfahrung. Alles andere ist einfach nur Information."

    Albert Einstein

  • Für ELMConfig dachte ich mir das so, das in den Grundlagen die Software beschrieben ist, mit all ihren Funktionen und Möglichkeiten


    Ganz genau. Ich würde vorschlagen unter Grundlagen "nur" eine Beschreibung von ELMConfig bereitzustellen.
    Unter Anleitungen könntest du dann zB eine neue Seite "ELMConfig" erstellen, alles was du hier schon erstellt hast da mit rein, sowie weitere Unterseiten mit Bildern, Texten oder Videos.

    Beispiel:
    >Anleitungen
    ......>ELMConfig
    ............>Central Car Configuration (hier beispielsweise auf Page 5 Nr. 23 in der erwähnten Tabelle anklicken)
    ..................>Battery Monitor Sensor
    ........................>*hier erscheint dann eine Seite mit Bildern, Videos oder Texten zum jeweiligen Setting oder auch mit weiterführenden Links*

  • Genau so habe ich es jetzt gemacht.
    Hier im Anleitungsbereich https://mk4-wiki.denkdose.de/anleitungen/elmconfig/ gibt es die Use-Cases.
    Und hier bei den Grundlagen https://mk4-wiki.denkdose.de/grundlagen/elmconfig/ steht alles zur Installation, etc. und unter https://mk4-wiki.denkdose.de/grundlagen/elmconfig/ccc/ die einzelnen Parameter.

    Danke, Dermon4 !

    "Lernen ist Erfahrung. Alles andere ist einfach nur Information."

    Albert Einstein

  • Hat jemand eine Idee was die beiden Einstellungen im ELMConfig für das "Park scan pattern" bedeuten?
    Es gibt dort "Park Scan pattern 1 (N/A)" und "Park Scan pattern 3 (S/C)"
    Ist das für Fahrzeuge mit Parklückenerkennung und Automatischer Einparkhilfe?
    Oder sind das womöglich nur verschiedene Abtastverfahren für das PDC-Modul?

    "Lernen ist Erfahrung. Alles andere ist einfach nur Information."

    Albert Einstein

  • "Park Scan pattern" klingt für mich jedenfalls eher nach der Parklückenerkennung für selbstlenkende Systeme als nur die reine "Park Distance Control".
    Vor allem wegen dem "Muster" (pattern), was ja schon im Wortlaut etwas aufwändigere Algorithmen impliziert. Sind aber meinersetis auch nur Mutmaßungen. Stimme dir aber zu!

  • Ich dachte eigentlich, weil dass ja bei der Plattform in keinem der Fahrzeuge möglich war., dass es sich unglücklich benannt auf dass Muster für die Rückfahrkamera bezieht bzw. die 3D Abstandsanzeige.

    Lieben Gruß
    Sammy

    :stick:

  • Wir werden es wohl nie erfahren. Fakt ist, dass die Config wohl auch Dinge vorsieht, die es nie in die Serie geschafft haben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!