Das Tempomatsignal der MFLs ist ein 8-bit Signal, das wie folgt aussieht:tempomat botschaft2

Jede Botschaft besteht aus zwei Startbits und acht Datenbits (Bit 1 bis Bit 8) mit den Nutzinformationen, gefolgt von einer Übertragungspause (Data Interval). Diese Übertragung wird wiederholt, solange der Sender (also die Tempomattasten) Strom bekommt.

In den ersten Versionen des MFLs waren die Tasten nichts anderes als eine Tastenmatrix, so hat der Tastenblock einen Multiplexchip bekommen, in einem Master-Slave Verbund. Der eine Chip hat die ersten acht Bit der Botschaft besetzt und der andere die zweiten acht Bit.

Der Zustand der Taste ist im Bit kodiert. Ein Bit besteht aus einem One bit und einem Inf bit (Information bit), der den Zustand darstellt. Innerhalb der Botschaft haben alle Bit dieselbe Länge, die 0,17ms beträgt. Somit ergibt sich eine Botschaftlänge von 5,44ms (von One bit des Bit 1 bis zu den beiden letzten Zero Bits). Der Abstand zwischen den Botschaften beträgt 10,88ms, es wird von der steigennden Flanke des Bit 1 (nach den beiden SYNC bzw. Start Bits) bis zu der letzten steigenden Flanke in der Botschaft gezählt. Dei Botschaft wird alle 16,32ms wiederholt.

Das Dekodieren der Botschaften erfolgt mi dem Temic U6052B (gibt es zum Beispiel hier zu kaufen). Der Chip is ein Teil eines "lokalen Multiplexsystems", bestehend aus einem U6050B (Transmitter, ist im Lenkrad verbaut) und einem U6051B/U6052B (Receiver, ist im MFL-Modil verbaut).

Der U6052B ist (noch) neu zu bekommen, obwohl er von Temic vor so ca 15 Jahre abgekündigt wurde. Alternativ, zwei von diesen Chips (jedoch als SO24 Bauform) sind in einem MFL-Modul von BMW verbaut, man kann sie auslöten und weiterverwenden. So ein MFL-Modul kostet bei eBay zwischen 10€ und 15€. Der Chip dekodiert das MFL-Signal und je nach dem welcher Bit im Signal gesetzt ist, wird der dazugehörige Ausgang auf logische 0 (also GND) geschaltet. Der Chip ist in der Lage ein Relais zu treiben (mit max 200mA), also genau das, was man braucht. Die Schaltung mit dem U6052B ist absolut trivial, man braucht lediglich eine Diode, vier Widerstände und dann noch ein RC-Glied zum Einstellen der Abtastfrequenz.

Berechnung der Abtastfrequenz:

Beim Tempomatsignal scheint BMW sich nicht an die Referenz von Temic gehalten zu haben, so beträgt die Übertragunsfrequenz lediglich 1562,5Hz (ausgehend von einer Periodendauer von 0,64ms) bzw. 1470,59Hz (ausgehend von einer Periodendauer von 0,68ms), empfohlen sind hier 6,4kHz. Es muss also die Abtastfrequenz des U6052B entsprechend angepasst werden.

Die Abtastfrequenz muss das Vierfache der Übertragungsfrequenz betragen (sprich 6250Hz bzw. 5882,35Hz). Es ist eine Abweichung von +/- 15% zulässig.

Nach der Formel fosc = 1 / (Cosc * (0,79 * Rosc+2260)) ergeben sich folgende Werte:

  • 200kOhm und 1nF ergeben 6239,68Hz Abtastfrequenz, also genau das was benötigt wird.

Wichtig: Der Rocs sollte nicht unter 68kOhm liegen. (Datenblatt Abschnitt 1.2)

Die Tempomat-Steuerung im E31 läuft über eine Widerstandsmatrix. Jedem Zustand ist ein Widerstandswert zugeordnet:

Aktion Widerstand Spannung Bit in Botschaft (Ausgang)
Leerlauf 665 Ohm 3,48v Bit 8 "wackelt"
Setzen/Beschleunigen 60,7 Ohm 0,85v Bit 2 und 5, Bit 8 "wackelt"
Abrufen 1530 Ohm 1,71v Bit 1 und 4, Bit 8 "wackelt"
Setzen/Verzögern 332 Ohm 2,65v Bit 7, Bit 8 "wackelt"
Aus 1590 Ohm 4,24v Bit 3 und 6, Bit 8 "wackelt"

Der jeweilige Widerstand wird zwischen den beiden Leitungen, die vom der EML kommen, geschaltet.

Als Relais könnte man die Relais von Fujitsu FTR LYCA 12V (Löschdiode nicht vergessen!) verwenden. Das Relais hat einen Spulenwiderstand von 847Ohm, braucht 0,02A zum Schalten und ist schön kompakt. Es werden vier davon benötigt.