Montag, 25. Februar 2013

Audi MMI 3G & 3GP AMI Anschlussbelegung / USB oder Aux-In Kabel selber herstellen

Jede Audi MMI 3G und 3GP Mainunit (Gerät 5F im Diagnosescan) besitzt am Werk alle für die AMI Funktionalitäten benötigte Hardware.
Soll heißen, sie stellt Anschlüsse für Aux-In, USB und iPod an den externen Anschlüsse bereit.
Auch von der Software-Seite gibt es keinen Unterschied zwischen AMI und nicht-AMI.
Was die Mainunit angeht muss einzig das AMI in der jeweiligen Konfiguration der Unit angepasst (aktiviert) werden.
Je nach 3G/3GP Basic/High ist das genaue Prozedere unterschiedlich, von daher möchte ich hier nicht darauf eingehen, da dieser Blogeintrag Licht in die AMI Hardware "extern der Mainunit" bringen soll.

Das originale Kabel (zwischen Mainunit und Handschuhfach) kostet schlappe (knapp) 170 EUR.
Bei diesem Preis sucht man reflexartig, wenn leider auch vergeblich, nach dem extrem hohen Edelmetallanteil ;)

Möchte man sich nun ein USB Kabel selber bauen, so stellt man leider fest, dass die dafür benötigten Datenleitungen (D+/D-) an einer HSD Buchse anliegen.
Folglich muss man für diese Buchse einen passenden Stecker auftreiben.

Eine günstige Lösung um (als privater Endkunde) an so einen Stecker zu kommen, besteht darin sich ein Kabel mit der Teilenummer 7P1 971 327 (vom Touareg) zu kaufen.
Dieses kostet aktuell ca. 19  EUR.
An diesem Kabel findet man je Ende einen der benötigten Stecker. (man kann sich aus einem solchen Kabel also sogar zwei AMI USB Kabel herstellen)

Die Belegung der HSD Buchse ist wie folgt:
Gelber Stecker hinten an der 5F Unit
Pin
1 -  D+ (Data +)
2 -  iPod erkannt
3 -  D- (Data -)
4 -  Masse

12-poliger Stecker (grün) - ein Einsatz im großen Stecker (Teilenummer 3B7 035 447 B - ca. 6 EUR)
Die passenden Reparaturleitungen (mit den passenden Pins daran - jeweils zwei pro Leitung) haben die Teilenummer 000 979 009 E - knapp 3 EUR.
Der grüne Stecker ist nur bei bereits vorhandener Rückfahrkamera (RFK) oder AMI vorhanden!
Pin
1 -  Aux-In Masse
2 -  Aux-In rechter Kanal
3 -  USB +5V
4 -  USB Masse
6 -  AMI Cable Detect
7 -  Aux-In linker Kanal
8 -  Aux-In Schirm (Masse)
11 -  iPod TX (serielle Fernsteuerung)
12 -  iPod RX  (serielle Fernsteuerung)

Um ein USB Kabel zu bauen holt man sich dann noch ein normales, handelsübliches USB Kabel, von dem man an einer Seite den Stecker abtrennt.
Die USB Stecker Belegung ist:
Pin
1 USB +5V
2 D- (Data -)
3 D+ (Data +)
4 USB Masse

Ich denke mal die Verpinnung ist direkt ersichtlich, so dass ich diese hier nicht noch einmal gesondert notiere.

Eine Besonderheit gibt es dann aber noch.
Die Mainunit erkennt anhand des Pin 6 (12 poliger grüner Stecker), ob ein AMI Kabel angeschlossen ist und um welches Kabel es sich handelt und aktiviert dann die jeweiligen Erkennungsfunktionen / Eingänge.
Pin 6 muss mit dem jeweilig passenden Widerstandswert gegen Pin 4 (Masse) gezogen werden.
Hier die Widerstandswerte für die unterschiedlichen Gerätetypen:
1K Ohm = Aux In Mode
4,7K Ohm = USB Mode
18,7K Ohm = Ipod Mode

Ich denke die Aux-In Belegung ist klar. Man benötigt für ein solches Kabel natürlich keinen HSD Stecker, sondern nur den grünen Stecker und die passende Anzahl an Pins.

Na dann mal viel Spaß beim Basteln! :)

Audi V6 Diesel 2.7 / 3.0 Reparatursatz Saugrohrklappenansteuerung

Es gibt für die Audi Diesel V6 2.7 und 3.0 Antriebsaggregate mit Saugrohrklappen-Ansteuerungsproblemen endlich eine kostengünstige Lösung vom Hersteller.
In der Vergangenheit musste durch die Vertragswerkstätten immer gleich die ganze Saugrohrklappeneinheit getauscht werden, was ganz empfindliche Kosten im vierstelligen EUR Bereich nach sich gezogen hat. (jedenfalls ohne positiven Kulanzantrag)
(man muss sich vor Augen halten, dass es bei den eigentlichen Verursachern um Teile im Cent-Bereich handelt)

Bemerkbar macht sich das Problem durch Fehlereinträge wie: "Saugrohrklappe X für Luftstromsteuerung: unterer / oberer Anschlag nicht erreicht!"

Eigentlich ist diese Info ja schon durch die meisten Foren gegangen, da aber auf Ebay anscheinend immer noch findige Verkäufer genügend willige Abnehmer (zu überhöhten Kursen) finden, habe ich mich entschlossen die Info hier auch noch einmal zu verteilen.

Aber nicht nur im Falle von windigen findigen Ebay Anbietern lohnt es sich meiner Meinung nach diese Info zu verteilen, da ja möglicherweise die ein oder andere Vertragswerkstatt die Info auch noch nicht erhalten hat / noch nicht an alle ihre Mitarbeiter durchgereicht hat.

Bestellbar ist das ganze über den normalen Teilevertrieb unter der Teilenummer "059 198 212" zu einem Preis von 11,- EUR pro Satz.
Es werden bei einem V6 zwei Sätze benötigt, jedenfalls um gleich beide Seiten zu erneuern. (was ich persönlich empfehlen würde, da kein großer zusätzlicher Arbeitsaufwand)

Leider habe ich aktuell keine Sicht darauf, in welchen Modellen nun genau Motoren mit diesen Teilen verbaut worden sind - tut mir Leid.

Samstag, 2. Februar 2013

Katalysator instandsetzen statt Neu-/Gebrauchtteil

Alte Fahrzeuge verhalten sich ja leider nicht wie alter Wein.
Früher oder später wird meist ein neuer Katalysator fällt - wenigstens bei den Benzinern.

Ich persönlich finde es teilweise schon eine ziemliche Frechheit, wieviel Geld für eben diese Katalysatoren - selbst im Austausch - seitens der Fahrzeughersteller aufgerufen wird.
Von daher hatte ich mich schon vor Jahren auf die Suche nach einer Instandsetzungsmöglichkeit begeben.

Hier bin ich fündig geworden und habe bisher persönlich nur gute Erfahrungen gemacht:
http://www.motepa.de/katalysator.html
Die Kollegen von Motepa öffnen den alten Katalysator und befüllen diesen neu.
Alle bisherigen Kontakte liefen immer extrem freundlich, kompetent und hilfsbereit ab und bisher hat noch kein neu befüllter Katalysator seinen Dienst versagt.

Insofern bin ich der Meinung, dass es nicht immer gleich ein neuer Kat sein muss.
Im Gegensatz zu einem gebraucht gekauften Teil, weiss man wenigstens, was man hat und kauft nicht die Katze im Sack.

Audi ECU Informationen (www.audi-portal.com)

Hier noch eine Seite, die ich gerne mit euch teilen möchte:
http://www.audi-portal.com/en/diagnostic/ecu.html

Man findet dort so einige Informationen zu Codierungen / Anpassungskanäle/ Messwertblöcken / Pinbelegungen etc. von diversen Audi-Modellen, sowie den diversen jeweils verbauten Steuergeräten.

Anschauen lohnt sich in meinen Augen jedenfalls.

Energiemanagement in modernen Fahrzeugen

Irgendwann bin ich einmal über ein sehr Interessantes Dokument gestolpert, welches sich mit dem Energiemanagement in modernen KFZ extrem detailiert auseinandersetzt.
Gerade, wenn man nicht aus einer elektrotechnischen Berufsgruppe kommt, stellen sich ja doch immer mal wieder Fragen nach der Funktionsweise eines Batteriemanagers und so weiter.

Also, ich halte es jedenfalls für sehr lesenswert und möchte den Link dorthin daher gerne mit euch teilen:
http://opus.kobv.de/tuberlin/volltexte/2006/1383/pdf/fabis_radomir.pdf

MMI 2G / 3G / 3GP metainfo2.txt Checksummenberechnung

Vor einiger Zeit habe ich mich mal damit befasst, wie denn eigentlich die Checksummenberechnung der diversen 2G / 3G / 3GP Software-Update metainfo2.txt Files durchgeführt wird.
Dieses Verständnis ist z.B. nötig, um geänderte Files über den normalen MMI Update-Mechanismus einzuspielen, welche ihrerseits mit einer Checksumme im metainfo-File hinterlegt sind.

Also...
Grundsätzlich basieren alle metainfo2.txt Checksummenberechnungen auf einem normalen crc32 (cyclic redundancy check mit 32 Bit Checksumme) Algorithmus.
Nun gibt es von diesem verschiedene Ausprägungen.
- das verwendete Polynom
- initialer Wert der Checksumme (vor dem 1. Durchlauf)
- finaler XOR mit 0xffffffff oder nicht

Bei den genannten MMI Versionen kommt ein Polynom 0xEDB88320 zum Einsatz.
Initialisiert wird der Checksummenbuffer mit 0xFFFFFFFF und dieser wird nach der Berechnung mit 0xFFFFFFFF XOR verknüpft.
Die Berechnung fängt immer bei Adresse 0 an und geht bis einschließlich zum letzten Byte.

So ein metainfo2.txt File besitzt zuerst einmal eine "globale" Checksumme, welche die Integrität des jeweiligen metainfo-Files sicherstellt.
Zu erkennen ist diese Checksumme an der Variablenbezeichung "MetafileChecksum".

An dieser Stelle ist es wichtig, dass bei einer Änderung dieser "globalen" Checksumme, keine Berechnung mit der Checksumme in dem File enthalten möglich ist.
(was ja logisch betrachtet eigentlich auch klar sein sollte...)
Also, wenn man die MetafileChecksum neu berechnen möchte, muss man diese komplette Zeile aus der Datei löschen, die Checksumme (nach oben beschriebenen Muster) berechnen und dann die Zeile wieder hinzufügen. (natürlich dann mit der neu berechneten Checksumme)

Die übrigen Checksummen in den metainfo-Files werden auch nach oben beschriebenem Muster berechnet.
Einzig, wenn Files größer als 512 Kilobyte groß sind, dann wird alle 512k jeweils über die vorherigen 512k eine Checksumme berechnet und abgelegt.
Checksum, Checksum1, Checksum2 etc. sind dann die jeweilig zu findenen Variablen.

Für einfach Berechnungen funktioniert das DF CRC-SFV Tool.
Leider nicht für Files mit mehr als 512k Größe, da es immer nur eine Checksumme über das gesamte File berechnet.
Wenn man sich einen Checksummenberechner selber schreibt, dann ist die Sache natürlich einfach gelöst.
Notfalls kann man sich bei großen Files mit filesplit32 behelfen und die großen Files in kleine Häppchen splitten und über diese kleineren Stücke dann mit DF CRC eine Checksumme berechnen.

In Verbindung mit dem MMI 2G Startscreen-Format, könnte die Checksummenberechnung - insbesondere über das DF CRC-SFV Tool aber durchaus hilfreich sein.

Ich möchte nur extra noch einmal darauf hinweisen, dass Modifikationen an Update-CDs/DVDs nicht ungefährlich sind.
Insbesondere beim MMI 3G / 3GP ist nach einem Fehler häufig die EmergApp (der Emergency-Mode) der nächste Halt.
Ist man erst einmal in diesem Modus, so muss man unbedingt die Checksumme der zuletzt verwendeten metainfo2.txt sichern und gut aufheben.
Das 3G / 3GP (5F) akzeptiert im Emergency nur noch ein Update von der zuletzt verwendeten Quelle (SD1 / SD2 / DVD) und auch nur mit der zuletzt verwendeten Checksumme.
Man bekommt die 5F Unit auch in so einem Fall wieder aus dem Emergency, das Vorgehen in so einem Fall ist aber ein Thema für einen der nächsten Blogeinträge.

Audi MMI High 3G / 3GP Navi Kartenupdate 2013

Aktuell gibt es ein von Audi ein neues Kartenupdate für 3G / 3GP (High - nicht Basic!) MMI Infotainment Systeme.
8R0051884AR ist die Teilenummer für den SD-Kartensatz. (Werkstattmaterial)
8R0060884AR ist die Teilenummer für das Freischaltungszertifikat / Aktivierungsdokument
Das Kartenupdate muss natürlich aber wie gehabt über Audi freigeschaltet werden, daher ist ein besuch bei eurem jeweiligen Audi Vertragshändler angeraten, um dieses aufspielen / freischalten zu lassen.

Freitag, 1. Februar 2013

Audi A6 (4F) leere Batterie (und damit Probleme in das Fahrzeug zu kommen)

Eine leere Batterie. Kein Problem - so denkt man jedenfalls.
Ok, jedenfalls bei einem Audi A6 4F anscheinend doch nicht so einfach.
Warum fragt man sich?
Man schnappe sich eine Starthilfebatterie und gehe zum Fahrzeug, um frohen Mutes einfach das Fahrzeug mittels Schlüssel über das Fahrertürschloss zu öffnen.
Gesagt, getan, nur leider lässt sich das Fahrzeug über das mechanische Fahrertürschloss nicht öffnen - langes Gesicht.
Oh, da war doch noch was mit SAFE Schaltung... das ist aber ziemlich übel, lautes Gefluche.

Kann nicht sein, fragt ihr?
Ha! Da habt ihr aber nicht mit dem Hersteller / den Designern der 4F Sicherheitssysteme gerechnet!
Aus einer letztens gemachten Erfahrung kann ich euch berichten, dass ihr einen 4F, welcher beim Abstellen ordnungsgemäß verriegelt wurde (und eine DWA - DiebstahlWarnAnlage besitzt), nach Verlust der Batteriespannung (unter einem bestimmten Wert), nicht mehr mechanisch entriegelt bekommt.

Ok, rufe ich mal eine Audi Vertragswerkstatt an - mögt ihr denken...
Ho ho... eine Vertragswerkstatt schickt doch keinen Mitarbeiter raus in eine Tiefgarage. Wie kann man auch nur auf so eine abwegige Idee kommen? ;)
O-Ton: "Wir arbeiten nur auf unserem Gelände. Lassen sie das Fahrzeug bitte zuerst zu uns schleppen" (natürlich auf Kundenkosten)

Ok, rufe ich den ADAC - mögt ihr denken...
Leider auch ein Fehlschlag.
Auch ein Anruf des angereisten ADAC "Spezialisten" brachte nur Versuche, die der 4F Fahrer auch schon durchgeführt hatte und einen Anruf bei der ADAC Technikhotline.
Leider keine Lösung. Scheibe einschlagen als einziger Lösungsvorschlag.
(Hättet ihr euch mehr für eure teuren, jahrelang bezahlten ADAC Gebühren erwartet? Also, ich schon...)
In diesem konkreten Fall sprechen wir über Dämmglasscheiben, welche mal locker 248 EUR für die Seitenscheiben betragen und 282 EUR (kein Dämmglas) für die Heckscheibe...

Audi Hotline anrufen, dort wird ihnen geholfen - mögt ihr denken...
Also, die Audi Hotline ist auf jeden Fall nett und sehr hilfsbereit.
Leider wird dort auch nur an die jeweiligen Werkstätten verwiesen. Das Ergebnis kennen wir bereits...

Ok, frage ich Carfreak um Rat... (der leider immer viel zu sehr beschäftigt ist, um auf Emails zu antworten)
Ich habe mir also den Stromlaufplan einmal angesehen.
Klemme 30 führt sowohl direkt zum Anlasser, als auch direkt zum Generator (LiMa).
Aha. Schwant euch etwas?
Ja, Wagen vorne auf einer Seite hochbocken, die Motorverkleidung unten demontiern (eine Sache von Minuten) und danach direkt am Generator Strom anklemmen.
Dort liegt an der großen Mutter, welche mit einer Abdeckkappe versehen ist,  Klemme 30 (Dauerplus) an.
In diesem konkreten Fall ließen sich dort noch 2.98V messen.
Strom angeklemmt (Mutter / großes Metallteil am Motor als Masse) und schon ließ sich die Zentralverriegelung wieder entriegeln. (und darauffolgend auch die Motorhaube öffnen)
Danach dann ausreichend Strom an die passenden Klemmen im Motorraum und schon ließ sich besagter 4F auch wieder starten :)

Tja, was lernt man daraus?
Ein stabiler Wagenheber und ein Schlitzschraubendreher überfordert den ADAC bereits. (welcher aber wenigstens den Weg zu dem Fahrzeug findet)
Audi und deren Vertragswerkstätten überfordert bereits die Kundennähe (sorry) deutlich.
Sowohl ADAC Hotline, als auch Audi Hotline überfordert die Frage nach möglichen Optionen. (obwohl in Vertragswerkstätten die Problemstellung durchaus beknannst ist - dies konnte über befreundetet Kontakte einwandfrei verifiziert werden)

Ich dachte ich schreibe über diese Erfahrung mal einen Blogeintrag, da die Lösung ja vielleicht mal jemanden helfen kann, der ansonsten tief in die Tasche greifen müsste.

Fazit:Weder Audi noch ADAC haben sich in meinen Augen mit Ruhm bekleckert.

MMI 2G Startscreen Fileformat (.yim)

Irgendwann hatte ich mal Langeweile und habe mir das Dateiformat der MMI 2G Startscreens angesehen.
Die Dateien haben auf den 2G Update-CDs folgende Namen:
Screen0.yim
Screen1.yim
...
Screen5.yim

Schaut man sich die Datei in einem Hex-Editor an, so stellt man ein paar Dinge fest.
Header:
  • 0x0 [24 Bytes] - Fileheader start
  • 0x0 - 0xb Checksumme ???
  • 0x10 [4 Bytes] - Dateigröße (ASCII Encodiert)
  • 0x18 [4 Bytes] - Bildtyp [XIM2]
  • 0x1c [4 Bytes] - Dateigröße mit Bildheader, aber ohne File-Header und ohne Bildtyp
  • 0x20 [2 Bytes] - X-Bildauflösung (480 Pixel)
  • 0x22 [2 Bytes] - Y-Bildauflösung (240 Pixel)
  • 0x26 [2 Bytes] - Größe Bildheader
  • 0x34 [4 Bytes] - hier findet sich die Nutzdatengröße in Bytes (+ 4) 
Ich habe mir dann die weiteren Daten angesehen und dabei festgestellt, dass es sich um eine RLE (Run Length Encoding) Kompression handelt.

Bei einer solchen Kompression werden aufeinander folgende Pattern durch die Anzahl und dann den Pattern ersetzt.
Beispiel: "07 FF 00 00" wird extrahiert als 32767 (0x7ff) mal der Pattern "00 00".

Da es sich um Bilder mit einer Farbtiefe von maximal 16 Bit handelt, ist jeder Pixel 2 Bytes lang. (in diesem Fall "00 00" = schwarz) Genauer gesagt handelt es sich nur um 15 Bit Farbtiefe. (R=5 Bit, G=5 Bit, B=5 Bit)

Weiter hat der Screen eine Auflösung von 480x240 Pixeln, so dass man insgesamt auf 230400 Bytes kommen muss. (115200 Pixel mit jeweils 2 Bytes)

Interessant ist dann natürlich bei einer RLE Kompression, wie denn sich nicht wiederholende Pattern abgebildet werden. Die geschieht über das MSB (Most Significant Bit) der beiden Steuerbytes.
Wenn also z.B. "FF FF" statt "7F FF" (im obigen Beispiel) gestanden hätte, so wäre auch noch das MSB gesetzt gewesen und es hätte sich um eine Zeichenfolge mit 0x7fff Länge gehandelt.

Wichtig, die Länge bezieht sich natürlich auch die "Grundeinheit" und diese ist immer 2 Bytes lang. Es wären also 2 * 32767 Bytes ohne Wiederholung in die Ausgabe zu übertragen.
Eigentlich kann man das File mit diesem Verständnis schon im Hexeditor mit den Augen und einem Taschenrechner decodieren.
Die Nutzdaten fangen immer bei 0x3c an und gehen bis zum Fileende.

Vielleicht hlft es ja jemandem, der bisher vor einem Rätsel gestanden hat?
Versuche Bilder zu encodieren und dann wieder per Software-Update einzuspielen sind leider fehlgeschlagen.
Meine Vermutung ist, dass die Bytes 0x0-0xB eine Form von Checksumme darstellen.
Leider bin ich bisher nicht dahinter gekommen, wie sich diese ASCII dargestellte Zahl errechnet.

Also, wenn es jemand basierend auf diesen hier zur Verfügung gestellten Informationen gelingen sollte einen veränderten Startscreen in ein MMI 2G Display Interface einzuspielen, so möchte ich nur darum bitten Licht in das Dunkel zu bringen was das Thema Checksumme angeht. Das fände ich jedenfalls nur fair...

Wie man die Metainfo-Checksummen berechnet werde ich in einem gesonderten Eintrag mal ausführlich erleutern.
(dieses Wissen braucht es zum Einspielen eines geänderten Files ja auch)

Audi A6 (4F) Facelift Kombiinstrument flashen / Energieeffizienzanzeige aktiveren

Ich hatte letztens Zeit mich mal intensiver damit zu befassen, wie man denn ein Audi A6 4F Facelift Kombiinstrument flashen kann.
Die dafür benötigten Files sind auf den aktuellen Audi Flash-DVDs enthalten, einzig die Namensgebung ist etwas ungewöhnlich, so dass ich doch erst intensiv über die Files suchen musste.

Die passenden Files für das KI enthalten alle ein C6.
A133_C6PA_HL_0133.sgo
A133_C6PA_ML_0133.sgo
A209_C6PA_HL_0209.sgo
A209_C6PA_ML_0209.sgo
A214_C6PA_HL_0214.sgo
A214_C6PA_ML_0214.sgo

An der vorderen und hinteren Zahl erkennt man die Versionsnummer der jeweiligen KI Firmware.
HL steht für HighLine
MLsteht - vermute ich - für MidLine
Jedenfalls habe ich die HL Version erfolgreich auf Facelift Kombiinstrumenten mit farb-FIS aufgespielt.
Den Versuch mit der ML-Version auf monochrom-FIS habe ich selber mangels Zugriff auf dementsprechende Hardware, bisher noch nicht gemacht.
Die Filegröße deutet aber start darauf hin, dass die Version für ein monochrom FIS passend ist.

Wie man letztens auf einem Foto in Motor-Talk sehen konnte, scheint ab einer gewissen Version auch noch eine weitere Ebene hinzugekommen zu sein.
Aktuell bin ich noch dabei die neu hinzugekommenen Anpassungskanäle (77, 79, 81) zu ergründen.
Ich werde euch dann berichten, wenn ich da Klarheit bekommen habe.

Edit: Wenn ihr mit der Software-Version 214 den Anpassungskanal 77 auf 65535 setzt, dann kommt eine weitere FIS Ebene hinzu.

Neue MMI 3G/3GP Software-Versionen

Es gibt neue MMI Software Versionen auf DVD.
Einmal für das 3GP:
8R0 906 961 CA   A4,A5,Q5,Q7  SVM-Code: 3GPEU612AU3G

An der 3GP Version ist spannend, wie die neue HW51 (4H0 Teilenummer Index N aufwärts) eingebunden wurde.
So wie es scheint, wurde der Treiber für die GPS Hardware nicht erweitert, so dass er beide Chipsätze unterstützt, sondern die Files (z.B. ifs-root.ifs, in welchem sich der GPS-Treiber befindet), einfach doppelt in das Update gepackt.
Einmal für HW41 und einmal für HW51.

Dann gibt es aber auch noch ein MMI 3G High Update:
8R0 906 961 CC  A4,A5,Q5,A6,A8,Q7  SVM-Code: 3GHEU253

Leider ja wie immer ohne Changelog und somit kann man - bis auf die HW51 GPS Unterstützung - schlecht beurteilen, was denn eigentlich geändert worden ist und ob ein Update nötig / empfehlenswert ist.

Ich habe die alte Liste mit den SW-Versionen auch gleich mit den beiden neuen DVDs ergänzt.
Ihr findet die komplette liste hier.