Beiträge von ratte01

    Hab hier jetzt alles gelesen und werde morgen mal schauen ob bei mir ein Stecker am Blindstöpsel ist.
    Ob das mit einem einfachen parallel geschalteten Schlieser Schalter zum Kofferraumknof am Heck funktioniert, währe zu beweisen!

    Also das verstehe ich jetzt nicht ganz. Wozu nachsehen? Dass für die Verwendung der Kabel im eventuell vorhandenen Stecker eine Freischaltung erforderlich ist wurde hier schon verifziert. Und warum ein Taster parallel zu einem Funktionierenden nicht gehen soll ist mir auch schleierhaft. Was muss man da beweisen?
    Schalter-parallel.jpg

    Nur das Display tauschen wird wohl zu wenig sein. Woher kommt z.B. die Kompassinfo? Ich befürchte da muss das Steuergerät auch was mitbekommen oder getauscht werden (Abgesehen von den rechtlichen Fragen beim Tachotausch).
    250,- für das Display ist für mich bei den Ersatzteilpreisen im Allgemeinen sehr günstig.
    Aber scha ma mal.


    lgr

    Allerdings: Beim letzten Ölcheck hab ich einfach mal den Wagen etwas länger stehen lassen, bevor ich den Stab gezogen hab. Und siehe da: Deutlich einfacher abzulesen. Normalerweise tanke ich, gehe bezahlen und checke dann das Öl. Diesmal war ich tanken, habe bezahlt und dann noch was getrunken und eine geraucht bevor ich das Öl kontrolliert habe.


    Das könnte aber auch Zufall gewesen sein und/oder nix mit der längeren Standzeit zu tun gehabt haben.


    E.

    Hmmm... ich würde das mit dem "was getrunken" mal berücksichtigen :whistling:
    lgr

    Der Schalter innen wird für mich vor allem dann interessant, wenn dann der Knopf hinten im Stoßfänger deaktiviert wird. Den Innenraumschalter nur zusätzlich zu haben ist für mich unnötig.

    Dann musst Du mal meine Partnerin hören, wenn sie wieder mal laut fluchend den Taster sucht und danach im Auto weiterkebbelt weil die Finger schmutzig geworden sind. Also der Taster im Auto wird immer realistischer :)

    Hallo!
    Da es mich interessiert hat, habe ich einen Logger für das MZD gebastelt.
    Einfach diese Zip-Datei runterladen und auf einen Stick entpacken.
    Damit der Logger funktioniert, muss der AUTORUN Patch vom AIO aktiviert sein. Nur dann wird das Script "run.sh" beim Start des MZD gelesen und ausgeführt.
    Das Programm hat die Version 0.2, ist also sicher nicht perfekt. Issues sind unten angeführt. Am System selbst wird nichts verändert und nur auf den Stick wird schreibend zugegriffen.
    Bis jetzt habe ich es ca. 2 Wochen bei mir laufen und keine Beeinträchtigungen in der Performance festestellt.
    Wenn jemand interessiert ist, Pascal kann und sich durch meinen Codewahnsinn quälen will, kann ich den Quellcode gerne zur Verfügung stellen


    Funktion:
    Wenn der Patch aktiv ist und das MZD gestartet wird, wird das Script run.sh gelesen und ausgeführt. Dieses initialsiert einige Varablen und startet das Programm "logger". Ich habe versucht diesen Logger rein als Script zu realisieren, bin aber an der Performance des MZD gescheitert. Um die Koordinaten für die diversen Dateiformate richtig umzurechnen habe ich ca 15 Sekunden gebraucht. Das war eher sinnlos. Deshalb habe ich es in Pascal programmiert. (Nebenbei für alle interessierten: Der Raspberry Pi ist binärkompatibel. Ich habe das Programm dort geschrieben und kompiliert)
    Beim Start wird das beigefügte Configfile eingelesen und die Werte initialisiert. Die Bedeutung der Variablen ist im File selbst kurz erklärt. Nähere Infos stehen weiter unten.
    Wenn nicht vorhanden wird am Stick ein Verzeichnis mit dem Namen "daten" angelegt. In dieses werden die Logfiles geschrieben.
    Beim Programmstart wird ein Infowindow angezeigt. Dies kann im Konfigfile geändert werden.
    Leider wird beim Abschalten der Zündung der Strom vom USB Anschluss hart abgedreht. Wenn gerade auf den Stick geschrieben wird kann das zu Problemen führen. Am Besten einen leeren Stick, der zur Not formatiert werden kann,verwenden.
    Wird der Stick im laufenden Betrieb abgezogen, wird das Programm beendet.


    Ich verwende zur Visualisierung der Daten das Freewareprogramm "RouteConverterWindows.exe".


    Es werden (je nach Konfigurationseinstellungen) 3 Dateitypen geschrieben:


    CSV mit folgenden Datenfeldern:
    TIMESTAMP: Zeitstempel im Format YYYY-MM-DD hh:mm:ss
    LAT: Geopgrafische Breite (Positive Werte bedeuten Nord, negative Werte Süd)
    LON: Geografische Länge (Positive Werte bedeuten Ost, negative Werte West)
    GPSSPEED: GPS Geschwindigkeit in km/h
    ALTITUDE: Höhe in Metern
    HEADING: Kompasskurs in Grad
    Ein Datensatz hat ca. 60 Bytes (plus Header mit ca. 60 Bytes)



    NMEA mit folgenden Datensätzen:
    RMC und GGA: Da sind alle, für eine sinnvolle Navigation, erforderlichen Daten enthalten
    Ein Datensatz hat ca. 120 Bytes



    GPX:
    Version 1.0
    Es werden nur Datensätze geschrieben wenn ein gültiges GPS Signal vorhanden ist.
    Ein Datensatz hat ca. 230 Bytes (plus Header und schliessende Tags, diese haben ca. 200 Bytes)



    Beim CSV File wären noch einige Datenfelder mehr möglich (z.B. Motorumdrehung, Geschwindigkeit vom KFZ, usw.). Könnte ich gerne machen. Im MZD werden eine Unmenge Daten gespeichert. Diese werden auch vom Speedometer verwendet.



    Konfigfile:
    Ein "#" am Beginn einer Zeile bedeutet einen Kommentar der ignoriert wird.


    LOGINT: Hier wird der Logintervall in Sekunden eingestellt. Alles unter 5 Sekunden macht wenig Sinn, da für die Berechnung und das Schreiben auf den Stick ca. 2 Sekunden benötigt werden.


    DELAYINFOWINDOW: Das ist ein "Angstparameter" von mir. Diese Zeit wird gewartet bis das Programm aktiv wird. So kann das MZD fertig hochfahren. Es geht auch ohne dem Delay, aber ich wollte sichergehen
    Mit "0" wird der Delay deaktiviert.


    INFOWINDOW: Zeit in Sekunden bis das Infowindow beim Start ausgeblendet wird. Durch antippen von "OK" kann es sofort ausgeblendet werden. Bei "0" wird keine Infowindow angezeigt.


    CSV, NMEA, GPX: Welche Files geschrieben werden sollen.
    1 = schreiben, 0 = nicht schreiben


    DAILYNEW: Wenn dieser Wert gesetzt ist, wird für jeden Tag ein neues File angelegt, sonst wird ein File fortgeschrieben.
    1 = Tägliches File (Format logger_YYYY-MM-DD.xxxx)
    0 = Kein täglihes File (Format logger.xxxx)
    xxxx steh für das Suffix csv, nmea oder gpx



    Bekannte Issues:
    Wenn das MZD nur kurz aus ist. Also Zündung abgedreht und neu gestartet wird das Script run.sh nicht ausgeführt und auch nicht geloggt. Ich habe mit dem Entwickler vom AIO gemailt und er weiss auch nicht warum das so ist. Ich konnte auch noch keine sinnvolle Autostartfunkton finden. Wenn es die gibt muss aber, wie bei den AIO Patches, ins MZD System eingegriffen werden. Das wollte ich vermeiden.



    GPX File
    Das ist mein Sorgenkind. Da das GPX Format eine XML Struktur hat müssen nach jedem Schreibvorgang die schliessenden Tags geschrieben und bei jedem Schreibvorgang gelöscht werden. Deshab existiert das File "logger.gpx.tmp" in dem der schliessende Tag fehlt und das fortgeschrieben wird. Manchmal hat das File die Grösse Null oder kann nicht geöffnet werden. Bei CSV und NMEA passiert das nie. Da tüftel ich noch. Falls jemand Ideen hat, bitte her damit.
    Wenn das File die Grösse Null hat, können einach die Zeilen aus dem File close.gpx an das Ende der Datei "logger.gpx.tmp" kopiert werden und das File hat dann die richtige XML Struktur.


    ToDo:
    GPX Issue fixen
    Ich möchte noch gerne die Daten auf meinen Server senden um im Falle eines Diebstahles ein Tracking zu haben. Derzeit ist die Funktion inaktiv, aber ich habe es schon getestet. Dazu wird natürlich ein Script am Server und eine Datenbank benötigt.


    Es würde mich freuen wen sich jemand drüber traut und das mal testet.

    lgr


    Jetzt noch ein paar Beispieldatensätze.


    Beispieldatensätze:


    CSV:
    2017-09-22 04:16:57;0;0;0;0;0;
    2017-09-22 04:17:07;48.3263;16.0552;15.9;173;32;
    2017-09-22 04:17:16;48.3272;16.055;42.3804;177;351.065;
    2017-09-22 04:17:26;48.3281;16.0549;32.0349;180;66.8471;
    2017-09-22 04:17:37;48.3281;16.0565;33.948;178;106.697;


    NMEA:
    $GPRMC,041657,V,0.0000,N,0.0000,E,0.0,0,220917,,N*64
    $GPGGA,041657,0.0000,N,0.0000,E,0,0,,0,M,,M,,*6C
    $GPRMC,041707,A,4819.5780,N,1603.3120,E,8.9,32,220917,,A*42
    $GPGGA,041707,4819.5780,N,1603.3120,E,1,5,,173,M,,M,,*63
    $GPRMC,041716,A,4819.6320,N,1603.3000,E,23.3,351.065,220917,,A*54
    $GPGGA,041716,4819.6320,N,1603.3000,E,1,5,,177,M,,M,,*69
    $GPRMC,041726,A,4819.6860,N,1603.2940,E,17.8,66.8471,220917,,A*56
    $GPGGA,041726,4819.6860,N,1603.2940,E,1,5,,180,M,,M,,*61
    $GPRMC,041737,A,4819.6860,N,1603.3900,E,18.9,106.697,220917,,A*58
    $GPGGA,041737,4819.6860,N,1603.3900,E,1,5,,178,M,,M,,*63



    GPX:
    <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
    <gpx version="1.0" creator="MX-5 Logger (C) RG Saftware" xmlns="http://www.topografix.com/GPX/1/0">
    <trk>
    <trkseg>
    <trkpt lat="48.3233" lon="16.0506" >
    <name>trkpt_2017-23-09 03:27:50</name>
    <desc></desc>
    <time>2017-09-23T03:27:50.000Z</time>
    <speed>11.7</speed>
    <course>174.4</course>
    <ele>174</ele>
    </trkpt>
    <trkpt lat="48.3223" lon="16.0506" >
    <name>trkpt_2017-23-09 03:27:59</name>
    <desc></desc>
    <time>2017-09-23T03:27:59.000Z</time>
    <speed>5.2</speed>
    <course>171.8</course>
    <ele>182</ele>
    </trkpt>