Ich hab die Öltemperaturanzeige inzwischen ziemlich zu Ende entwickelt.
Nochmal zurück zum Anfang.... warum das Ganze?
Naja, die Öltemperatur war schon immer interessant, leider Serie nur beim M-Roadster als Zusatzinstrument. Kann man natürlich nachrüsten, dazu braucht man aber die in Gold aufgewogenen Zusatzinstrumente, sowie die genauso hoch gehandelte Mittelkonsolenblende.
Daher die Idee, die analoge Anzeige im Tacho vom E36 M3 zu nutzen. Die lässt sich recht einfach im Tacho nachrüsten (anstelle der E36-Momentanverbrauchsanzeige, dessen Platz auch im Z3-Tacho vorgesehen ist, aber nicht ausgeschnitten).
Problem: Das funktioniert wie von Alex beschrieben wunderbar im Vorfacelift, nicht aber bei den CAN-Kombiinstrumenten der Facelifts. Außerdem muss man so oder so einen Öltemperatursensor für diese Anzeige nachrüsten, mit Kabel ziehen usw...
Bei einer Routine-Auslese-Session an meinem 2.8er (M52TU!!) bin ich dann bei den Analog-Werten in IN*PA darauf gestoßen, dass da ja eine Öltemperatur angezeigt wird
Naja, nun hab ich schon fleißig im I-Bus des Multifunktionslenkrads herumgepfuscht, und der K-Bus zur Diagnose ist sehr sehr ähnlich, also solange rumprogrammiert bis ich mit meinem Arduino (kleiner, leicht programmierbarer Mikrocontroller) und einem K-Bus/LIN-Transceiver Diagnosenachrichten senden und empfangen konnte. Dann noch fix mitgeloggt, was IN*PA schickt, damit es die Analog-Werte zurückbekommt und noch fix die Bits und Bytes entschlüsselt, wie man daraus eine Öltemperatur machen muss. Dieses "fix" hat gut ein Jahr verschlungen, bis das auch technisch alles zuverlässig funktioniert hat. Bis heute ist es mir allerdings nicht gelungen, die analoge Anzeige sauber anzusteuern (die Treiber-Chips von damals sind schon lange nicht mehr zu haben), und so bin ich irgendwann frustriert auf eine Display-Lösung álà CheckM8/Gauge S umgestiegen. Damit eröffnen sich natürlich ganz neue Möglichkeiten
Und vor allem: Alles ohne zusätzliche Sensoren, Kabel ziehen usw.... einfach nur den Diagnosebus an der OBD2-Dose im Fußraum anzapfen
Die notwendige Elektronik passt in ein kleines Döschen, das hinten am Tacho mit dem Kabel zum Display verbunden wird. Von extern wird nur nur die Diagnoseleitung (TXD2, Kabelfarbe weiß/violett mit gelben Tupfen), 12V Zündungsplus (Klemme 15) und natürlich Masse gebraucht.
Das Display wird einfach auf den Träger einer Momentanverbrauchsanzeige aus einem E36-Spendertacho geklebt:
Empfehlenswert ist ein Spendertacho, der nicht nur die Momentanverbrauchsanzeige hat und deswegen natürlich schon den Ausschnitt im Tachoblatt, sondern direkt ein Tachoblatt, welches die gleiche Skalierung und roten Bereich im Drehzahlmesser hat. So muss man das Z3-Blatt nicht ausschneiden und den Rahmen schwarz anmalen. In den Ausschnitt kommt eine schwarz lackierte Alublende, die mir ein befreundeter Zetti-Fahrer mit entsprechenden Möglichkeiten aus Alu gelasert hat. Die ist von den Maßen her direkt abgeleitet vom Ziffernblatt der Momentanverbrauchsanzeige.
Der Träger mit Display wird dann einfach eingeklipst und das Kabel durch vorhandene Öffnungen nach hinten/draußen geführt.
Fertig sieht das ganze dann so aus:
Beim herumspielen mit den Icons und Grafiken zum Start (Z3 Logo etc...) bin ich sehr schnell an die Grenzen des Speichers des kleinen Arduinos gestoßen. Das Ding ist halt auch schon uralt. Nach etwas Recherche bin ich auf den ESP32 gestoßen, einen sehr viel moderneren kleinen Mikrocontroller, der nicht nur viel viel mehr Speicher mitbringt und um den Faktor 10 schneller ist, sondern auch noch WLAN und Bluetooth nativ an Bord hat
Neben aufwändigeren Grafiken kann man das WLAN nun auch nutzen, um die Software jederzeit upzudaten, ohne dass man hinten an den Tacho/den Mikrocontroller ran muss, und außerdem bequem per Webbrowser, ohne irgendein spezielles Tool.
Final kam noch das Feature dazu, beim Start den Fehlerspeicher vom Motorsteuergerät auszulesen, wenn man ja eh schon am Diagnosebus hängt
Apropos Diagnose... die Elektronik erkennt jede anderweitige Kommunikation auf dem Bus, sprich Nachrichten, die nicht selbst gesendet wurden oder Antworten auf selbst gesendete Anfragen sind, und schaltet sich dann umgehend stumm, um eine Fahrzeugdiagnose nicht zu stören. Im Display wird dann das Z3-Logo angezeigt, statt Temperaturwerte.
Sollten die Temperaturen einen gewissen Schwellwert überschreiten (frei programmierbar), fangen die Anzeigen (Icons und Werte) an zu blinken.
Ein persönliches Intro darf natürlich nicht fehlen
https://youtu.be/qBAah8zpIc8
Durch die entwickelten Techniken bin ich in der Lage, mit vertretbarem Aufwand weitere Einzelstücke auf Anfrage zu fertigen. Grundsätzlich funktioniert das Display mit Öltemperatur beim M52Tu und M54 (also alle Doppelvanos Sechszylinder). Der M52 Singlevanos hat leider keinen Öltemperatursensor, daher auch keine Öltemperatur zum abfragen. Ebenso die Vierzylinder. Auch hier kann man das Display verbauen, allerdings nur mit Batteriespannung und Kühlwassertemperatur (nett, aber halt nicht so interessant wie die Öltemperatur). Wenn man da die Öltemperatur möchte, muss in jedem Fall ein Temperatursensor nachgerüstet werden. CheckM8 und Gauge S bieten hierfür bereits Lösungen, sodass ich in diese Richtung eigentlich nicht weiterentwickeln will. Da wird es halt sehr viel komplexer, weil die Sensoren kalibriert werden müssen usw.... Gleiches gilt für den Öldruck. Mal sehen, ob ich in Zukunft dazu mal die Muse habe.
Vielen Dank an alle, die mich mit ihrem spezifischen Wissen in bestimmten Bereichen unterstützt haben, durch fruchtvolle Diskussionen zur Verbesserung beigetragen haben und besonders an Jens, der mir die Alublenden möglich gemacht hat.
Gruß Steffen


