BMW I-Bus

Informationen zum Instrumentenbus von BMW Fahrzeugen der Baureihen E38, E39 und E46. Alle Informationen ohne Gewähr und nur zur privaten Nutzung bestimmt!


Inhalt

Steuergeraete im Fahrzeug der Baureihe E39

Konvertierung des I-Bus auf RS232 Standard

Protokoll des I-Bus

Adressen der Busteilnehmer im I-Bus

Kommunikation der Steuergeraete im I-Bus

Codes der Bormonitortasten

Tastencodes der Lenkradtasten

Visualisierung von Nachrichten in der Instrumentenkombination

Visualisierung von Nachrichten im Bordmonitor

Kommunikation mit dem CD-Wechsler

Sonstige I-Bus Codes (Telefon, LCM, Licht, IKE, Bordcomputer, Navigation, Kassettenlaufwerk)

Z4 / X3 Monitorsteuerung

Steuerung des 16:9 Widescreen Bordmonitor


Steuergeräte im Fahrzeug der Baureihe E39 (5er BMW)

Bei Fahrzeugen der Modelreihe E39 des Automobilherstellers BMW werden zur Vernetzung der einzelnen Steuergeräte eigesetzt unter anderen über K-Bus ähnliche Bussysteme eingesetzt. Der K-Bus ist ein Kommunikationsbus und gehört zu den Feldbussen. Ein verbreitetes Einsatzgebiet ist die Diagnosekommunikation in Kraftfahrzeugen. Auf der Bitübertragungsschicht verwendet der K-Bus ISO-9141. Es handelt sich um eine einfache serielle UART-Kommunikation, die für Datenraten bis maximal 20 kBit/s eingesetzt werden kann.

Im vorliegenden Fahrzeug existieren insgesamt drei größere Netzwerke von Steuergeräten. Es sind dabei jeweils die Steuergeräte zusammengefasst, die ähnliche Aufgaben erfüllen. Unterhalb bestimmter Steuergeräte sind weitere kleine Netzwerke die Sensoren und Aktoren mit dem Steuergerät verbinden. Ein Beispiel hierfür ist die Klimaautomatik. Die zugehörigen Stellelemente der Luftverteilerklappen sind über den M-Bus vernetzt.

Die Steuergeräte mit Sicherheitsverantwortung sind unter anderen über CAN-Bus vernetzt. Teilweise sind diese auch noch (zusätzlich z.B. zu Diagnosezwecken) über den D-Bus bzw. K-Bus angebunden, der CAN-Bus hat aber Vorrang. Damit werden  Motor- und Getriebesteuerung und ABS Steuerung nicht von Störungen auf den D/K/I-Bussen beeinflusst.

Abbildung 1.1: Topologie der Steuergerätenetzwerke im BMW E39

Die Grafik zeigt  die drei Netzwerke mit den einzelnen gruppierten Steuergeräten. Der MP3-Player wird an den Instrumentierungsbus gekoppelt und ersetzt bzw. emuliert den CD-Wechsler. Es sind nur die Steuergeräte dargestellt die im für das Projekt verwendeten Fahrzeug verbaut sind.


Konvertierung des I-Bus (K-Bus ISO-9141) auf RS232 Standard

Der Bus arbeitet mit Pegeln, die relativ zur Batterie Spannung (ca. 12 V) des Fahrzeugs definiert sind und für eine logische 0 (Low) 0-30 % und für eine logische 1 (High) 70-100 % der Batteriespannung betragen.

Der I-Bus ist Low aktiv. Die Logische “1” wird übertragen wenn der Bus vom H-Pegel (Ruhezustand) für kurze Zeit auf L-Pegel gezogen wird. Die Übertragung wird über die Busgeschwindigkeit und den Pegel gesteuert. Low entspricht 1 und High entspricht 0, bei definierter Dauer eines Bits.

Über spezielle integrierte Schaltungen können die Pegel des I-Bus auf den RS232 Standard angepasst werden. Die entsprechenden Bus Treiber werden von verschiedenen Herstellern angeboten.

Abbildung 1.2: Pegelanpassung

Für dieses Aufgabe kann zum Beispiel der Melexis TH8080 LIN-Transceiver verwendet. Dieser IC stellt eine günstige und sehr stabile Lösung dar die erforderliche Anpassung zu realisieren. Die Wandelung von TTL auf RS232 kompatible Pegel übernimmt dann ein MAX232 Standard IC. Der Melexis IC kommt mit wenigen esternen Bauteilen aus. Der Schaltungsentwurf sollte nach dem lesen des Datenblattes kein Problem darstellen.

P630004G
IndexSignalSollwert
1U high [V]7 V … Ubatt
2U low [V]0 V … 2 V
3Telegrammzeit [ms]5 ms … 30 ms

Abbildung 1.3:  Oszillogramm I-/ K-Bus-Signale

Eine weitere Möglichkeit ohne spezielle IC ist eine Pegelanpassung über die folgende einfache Transistorschaltung. Die Schaltung funktioniert neigt aber teilweise zu Übertragunsproblemen bzw. Übertragungsfehlern.


Protokoll des I-Bus

In BMW Fahrzeugen ist das Protokoll über das die einzelnen Steuergeräte in den Netzwerken kommunizieren nach dem folgenden Schema aufgebaut:

·         Quell ID 
Identifikation des Teilnehmers der eine Nachricht an einen anderen BUS-Teilnehmer senden will

·         LängeLänge der kompletten Nachricht (ohne Quell ID und Längenangabe selbst)

·         Ziel ID 
Identifikation des Teilnehmers an den die Nachricht gesendet werden

·         DatenNutzdaten den Nachricht

·         XOR CRC  – ChecksummeDie Checksumme dient zur Verifizierung der Nachricht. Der Empfänger der Nachricht berechnet die Checksumme und vergleicht diese mit der in der Nachricht enthaltenen.

Abbildung 1.4:  Aufbau des Nachrichtenprotokolls

Jedes Netzwerk (K-Bus, I-Bus und D-Bus) überträgt Daten mit einer Baudrate von 9600 Bit pro Sekunde. Das Kommunikationsprotokoll hat 8 Daten-Bits, 1 Stop-Bit und gerade Parität (even).

Die Implementierung bei BMW sieht als Busmaster die Instumentenkombination vor. Nur wenn die IKE nichts sendet dürfen sich andere Busteilnehmer ‚unterhalten’. Dies erleichtert die Integration zusätzlicher Steuergeräte, z.B. MP3-Player und kann die Reaktionszeit verkürzen, z.B. Lenkradtasten. Auf dem I-Bus (wie auch den anderen Bussystemen) können bei hoher Buslast Kollisionen als Tribut an die Flexibilität auftreten. Daher verwendet BMW je nach Ausstattung mehrere Busse.

  • Folgende Mechanismen sind für die Kommunikation am I-Bus implementiert:
  • der Busmaster (IKE) hat Priorität
  • bis auf Broadcasts ist jede Botschaft (Request) zu bestätigen (Response) (dies trifft nicht für alle Botschaften zu, hier sieht der I-Bus dann eine entsprechende Kodierung vor)
  • wenn der Bus eine definierte Zeit (z.B. 20-100ms, nach Request erst nach dem Timeout, z.B. 100-1000ms) nicht belegt ist, dürfen andere Teilnehmer einen Request senden
  • nicht jeder Busteilnehmer wartet die gleiche Zeit (dies ist zwar nicht explizit geregelt, ergibt sich aber aus den Signallaufzeiten und Timingunterschieden in den Steuergeräten)
  • nach einer gewissen Übertragungszeit muss der Bus für andere Steuergeräte ‚geöffnet’ werden
  • Kollisionserkennung ist zu verwenden, insbesondere sollte das Echo überprüft werden.
  • es wird eine Adress-Arbitrierung verwendet: Der Sender mit der höchsten Adresse erhält den Buszugriff, wenn 2 oder mehr Teilnehmer gleichzeitig auf den Bus zugreifen. Dies funktioniert folgendermaßen: Während die Sendeadresse Bit für Bit auf den Bus gelegt wird, wird der Zustand der Leitung überprüft. Überträgt ein Steuergerät z.B. eine 0 (High-Pegel) und die Leitung wird Low, muss es den Bus abgeben (ohne die laufende Übertragung der anderen Steuergeräte zu stören). Bei Gleichheit entscheidet das nächste Bit. Adresse binär 00100100 ist höher als 00100011.
  • Kommandos/Botschaften werden im Steuergerät intern priorisiert. Entsprechend der Priorität wird eine unterschiedliche Pause zwischen den Botschaften (‚Botschaftsabhängige Wartezeit’) verwendet: Prio 1 ab 1,7ms, 2 ab 2.3ms und 3 ab 10ms. Bei Kollisionen wird eine vordefinierte ‚Konfliktwartezeit’ verwendet, die für Steuergeräte in der gleiche Domäne (gleiche Position des ersten rezessiven Bits in der Adresse) unterschiedlich ist.
  • sollte auf einen Request keine Antwort kommen, wird er bis zu 5 Mal nach jeweils 300ms Wartezeit wiederholt

Da die oben genannten Mechanismen nur aufwendig zu implementieren sin reicht in der Praxis das folgendes Vorgehen zum senden von Nachrichten aus:

Bevor eine Nachricht gesendet wird muß auf auf den Ruhezustand des Busses gewartet werden. Dieser ist erreicht wenn für eine gewisse Zeit kein Datentransfehr stattfindet. Die Zeit errechnet sich aus der Datenrate des Busses und dem Datenrahmen der Seriellen Verbindung von 10Bit/Zeichen. Dieser Datenrahmen ist in der nachfolgenden Rechnung bereits berücksichtigt (0,104ms/Bit * 10Bit).

Es muss also mindestens 1,2ms Inaktivität des Busses abgewartet werden bevor davon ausgegangen werden kann das keine weiteren Bits mehr gesendet und somit die Nachricht des gerade aktiv gewesenen Steuergerätes vollständig gesendet wurde. Danach kann eine Nachricht gesendet werden.

Diese System bzw. diese Art der Kollisionsvermeidung arbeitet in der Praxis unter der Voraussetzung das sich alle Steuergeräte genau an diese Softwarelösung halten sehr zuverlässig.  Eigentlich wird hierbei die Wartezeit der Busruhe verwendet um vor allen anderen Steuergeräten zu senden. Das bedeutet aber auch, dass wichtige Nachrichten unter umständen unterdrückt werden könnten und eigentlich die anderen Steuergeräte die Kollisionen vermeiden! Deshalb solte nur maximal 1 Busteilnehmer der nach dieser “Quick and dirty” Methode arbeitet angeschlossen werden. 


Adressen der Busteilnehmer im I-Bus

Im Netzwerk wird jeder Teilnehmer durch eine ID (Adresse) identifiziert, die Länge ist ein jeweils Byte.

ID 
(Hex)
  Name des Teilnehmers  Bemerkung
00Allgemeine Nachrichten (1)
18CD-WechslerAdresse des MP3-Players
30SES (Spracheingabe)
3BVideomodul
3FDISexternes Diagnosesystem
43Menü Bildschirm auf Bordmonitor
50LenkradtastenLinke Seite
60Parksystem PDC
68Radio
6ADSP (Soundprozessor)
7FGPS Modul
80Instrumentenkombination IKE
A8Unbekannt
BBTV-Modul (im Videomodul)
BFLichtkontrollmodul LCM
C0Multiinformationsdisplay MIDnicht verbaut
C8Telefon
D0Navigationsdaten
E7Textzeile in Instrumentenkombination
E8Unbekannt
EDMemory Sitze
F0Tasten Bordmonitor
FFAllgemeine Nachrichten (2)

Kommunikation der Steuergeräte im I-Bus

Die Steuergeräte im Verbund des Instrumentierungsbus (I-Bus) kommunizieren nach dem im Kapitel beschriebenen  Protokoll.

Bestimmte Steuergeräte bilden einen Verbund im Bus. Dabei übernimmt ein Steuergerät die Rolle des „Master“ die anderen zugehörigen Steuergeräte bilden die „Slaves“. Hierbei handelt es sich um eine logische Zuordnung über die Software der Steuergeräte. Die elektrische Topologie des I-Busses verbindet im Gegensatz zur logischen Zuordnung alle Steuergeräte miteinander. Somit stehen alle Telegramme die über den Bus gesendet werden an allen Steuergeräten zur Verfügung.

Abbildung 1.5: Blockschaltbild der logischen Zuordnung

Steuergeräte die nicht zur Serienausstattung des Fahrzeugs gehören und nachgerüstet werden können werden am Bus automatisch erkannt. Die Erkennung erfolgt wenn in einer bestimmten Zeit auf eine an das Steuergerät gerichtete Anfrage geantwortet wird, oder das nachgerüstete Gerät sich mit einer Initialisierungsnachricht angemeldet hat. Dies betrifft auch den CD-Wechsler der durch den MP3-Player emuliert wird. Das Radio fragt nach dem Einschalten der Zündung die zugehörigen Slaves (DSP / CD-Wechsler bzw. MP3-Player) ab. Auf die Anfrage des Radios muss eine Antwort erfolgen. Außerdem muss das Gerät in regelmäßigen Abständen ein Lebenszeichen senden. Geschieht dies nicht wird das Gerät bis zum Neustart des Fahrzeugs deaktiviert. Es ist somit wichtig, dass der MP3-Player zuverlässig auf entsprechende Anfragen reagiert.

Die Steuerung des CD-Wechslers erfolgt regulär nur durch das Radio. Wird der CD-Modus angewählt sendet das Radio an den CD-Wechsler eine Nachricht die Wiedergabe zu starten. Der CD- Wechsler sendet eine Nachricht zurück an das Radio das die Wiedergabe startet. Alle weiteren Steuerbefehle wie CD-Wechsel etc. werden auf gleiche Weise übermittelt.

Die Tasten des Bordmonitor und die Tasten des Multifunktionslenkrad senden bei Tastendruck eine Nachricht die den Code der Taste sowie die Art des Tastendruck (kurzer Druck, langer Druck und loslassen der Taste) enthält.

bmw_navidisplay.jpg

Abbildung 1.6: Bordmonitor mit aktiver Radioanzeige (MP3 Daten werden angezeigt)

Der Bordmonitor besteht aus den Bordmonitortasten die mit der Sendeadresse 48 Hex und 49 Hex die Tastencodes senden. Außerdem befinden sich ein TFT-Display und das Kassettenlaufwerk im Gehäuse des Monitors. Das TFT-Display wird direkt vom Navigationsrechner mit einem RGB Videosignal gespeist und dient somit nur als Monitor. Die Steuerung des Kassentenlaufwerks ist über den I-Bus (des Bordmonitors) relaisiert. Die Audioleitung des Laufwerks ist direkt mit dem Radio verbunden 



Codes der Bormonitortasten (Adresse 0F)

Nachrichten zum Radio:     ADRESSE 68 HEX

Format der Nachricht:

<0F 04 68> <Tastencode> <XOR>

TasteDruck<1sDruck>1sDruckausTaste DruckKurzDruck LangTasteaus
<> 48 1448 5448 94Eject 48 2448 6448 A4
148 1148 5148 912 48 01 48 4148 81
348 12 48 5248 924 48 02 48 4248 82
548 1348 5348 93 6 48 0348 4348 83
TP 48 32 48 7248 B2 RDS 48 2248 6248 A2
FM 48 3148 7148 B1AM 48 2148 6148 A1
Info 48 07*48 47* 48 87*MODE 48 2348 6348 A3
TONE 48 0448 4448 84SELECT 48 2048 6048 A0
(Titel zurück)48 1048 5048 90(Titel vor)48 0048 4048 80
(Radio Menü)48 3048 7048 B0 * Nachricht zu “FF” statt Radio “68”

Nachrichten zum Navigationsrechner: ADRESSE 3B HEX

Format der Nachricht:

<0F 04 3B> <Drehknopfcode> <XOR>

48 05     Druck                     48 45     Druck > 1s            48 85     Druck aus

49 0n     Drehen links          49 8n     Drehen rechts 

n ist zwischen 1 und 9. Der Wert ändert sich je nach Drehgeschwindigkeit.

Allgemeine Nachrichten:     ADRESSE FF HEX

Format der Nachricht:

<0F 04 FF> <Tastencode> <XOR>

Taste ‘Telefon’

48 08     Druck                     48 48     Druck > 1s            48 88     Druck aus

Taste ‘Standheizung / Uhr’ 

48 07     Druck                     48 47     Druck > 1s            48 87     Druck aus   

Taste ‘MENÜ’

48 34     Druck                     48 74     Druck > 1s            48 B4     Druck aus


Tastencodes der Lenkradtasten (Adresse 50)

Abbildung 1.7: Lenkradtasten

Nachrichten zum Radio:     ADRESSE 68 HEX 

Format der Nachricht:

<50 04 68> <Tastencode> <XOR>

Taste “-” (Lautstärke +)

32 10    

Taste “+” (Lautstärke +-)

32 11     

Button “>” (nächster Titel)

3B 01     Druck                     3B 21     Druck aus

Button “<” (vorheriger Titel)

3B 08     Druck                     3B 28     Druck aus

Nachrichten zum Telefon:     ADRESSE C8 HEX

Format der Nachricht:

<50 04 C8> <Tastencode> <XOR>

Taste ‘Wählen’

3B 80     Druck                     3B 90     Druck > 1s            3B A0     Druck aus

Taste “R/T”

3B 40     Druck

Nachrichten zur Sprachsteuerung (SES / ULF):     ADRESSE B0 HEX

Das Aktivieren der SES geschiet durch halten der Taste ‘Wählen’

<50 04 B0> 3B 80 5F

Hinweis: bei MFL ab Mj.1999 wir die SES automatisch erkannt und der oben genannte Code beim Halten der Hörertaste abgegeben. Die älteren MFL können dies nicht! Somit kann mit diesen die SES nicht direkt aktiviert werden.


Visualisierung von Nachrichten in der Instrumentenkombination

Die Textzeile der Instrumentenkombination kann über den I-Bus beschrieben werden. Eventuell bereits angezeigte Nachrichten, vom Bordcomputer zum Beispiel, werden dabei ausgeblendet. Die Anzeige erfolgt nach Übertragung der Nachricht für ca. 10s. Nach dieser Zeit wechselt die Anzeige wieder zu dem vorher angezeigten Text oder schaltet sich aus wenn dies der vorherige Zustand der Anzeige war.

bmw_ike.jpg

Abbildung 1.8: Das Bild zeigt die Instrumentenkombination. Es wird der Name des aktuell abgespielten Interpreten in der Textzeile angezeigt.

Beschreiben der Textzeile in der Instrumentenkombination:    ADRESSE 80 HEX

Format der Nachricht:

<68 17 80> 23 62 30  <Option>  <Text in ASCII Hex> <XOR>

Hinweis: Es müssen immer alle Zeichen die in der Textzeile darstellbar sindgesendet werden da ansonsten die “alten” Zeichen nicht überschrieben werden. Somit ist die Nachrichtenlänge immer “17H”.

Die Nachricht  kann mit folgenden Optionen angezeigt werden:

35 00     normale Anzeige

37 01     Text zwischen zwei roten Feilen anzeigen

37 03     Texte zwischen zwei roten, blinkenden Feilen anzeigen

37 04     Gong und Text zwischen zwei roten, blinkenden Feilen anzeigen 

37 05     Gong und Text anzeigen 

37 08     Gong  I  (ohne Anzeige einer Nachricht)

37 10     Gong  II  (ohne Anzeige einer Nachricht)


Visualisierung von Nachrichten im Bordmonitor 

Die Bildausgabe des Navigationsrechners erfolgt auf dem TFT-Display des Bordmonitors. Die vom Navigationsrechner generierten Bildinformationen können nicht oder nur mit hohen Aufwand  verändert werden. Es ist zwar grundsätzlich möglich andere Videosignale auf dem Bordmonitor anzuzeigen indem die Videosignale auf eine externe Quelle umgeschaltet werden. Allerdings ist hier entweder ein Videoumschalter notwendig oder das Videosignal müsste über den Eingang der Rückfahrkamera in das Videomodul eingespeist werden. Letzteres hätte eine schlechte Bildqualität zur Folge da der Kameraeingang nur kompatibel zu FBAS Videosignalen nach dem NTSC Videostandard ist. Des Weiteren wäre die Generierung eines entsprechenden Videosignals mit einem unverhältnismäßig hohen Aufwand verbunden. 

Das Projekt wählt denselben Weg den das Radio zur Anzeige von Informationen verwendet. Im „Radio Anzeigemodus“ des Navigationssystems können einzelne Bereiche des angezeigten Bildes über den I-Bus vom Radio beschrieben werden. Im für das Projekt verwendeten Fahrzeug ist ein Navigationsrechner der 4. Generation (MK4) verbaut.  Dieser bietet den sogenannten „Split-Screen“ Modus. In diesem Anzeigemodus werden auf der rechten Bildschirmseite Navigationsdaten dargestellt. Auf der linken Bildschirmseite können entweder die Straßenkarte, Bordcomputerdaten oder die Radioanzeige dargestellt werden. Die Anzeige des Telefonmenüs und der Einstellungen werden grundsätzlich im Vollbildmodus dargestellt. Es ist auch möglich alles im Vollbildmodus darzustellen wenn eine entsprechende Einstellung vorgenommen wird. Die Anzeige des MP3-Players ist allerdings für den „Split-Screen“ Modus optimiert da dieser eine bessere Darstellung bietet da die beschreibbaren Felder untereinander liegen.

Abbildung 1.9: Gegenüberstellung „Splitt-Screen“ Modus (links) und Vollbildanzeige (rechts)

Auf den Bildern ist die Radioanzeige im CD-Wechsler Modus zu sehen. Alle über den Bus beschreibbaren Felder sind mit Texten beschrieben. Es ist zu beachten, dass sich die Anordnung der Felder in beiden Anzeigemodi unterscheidet.  

Die Inhalte der Felder bleiben bestehen solange sie überschrieben werden oder der Modus (hier CD-Wechsler Modus) verlassen wird. Dies gilt für jedes Zeichen eines Textfeldes. Wenn zum Beispiel der aktuelle Wert 8 Zeichen hat während der neu anzuzeigende Wert aus 5 Zeichen besteht ist die Differenz mit Leerzeichen aufzufüllen. Die Anzahl der darstellbaren Zeichen ist je nach Feld unterschiedlich. Dieses Verhalten kann dazu genutzt werden eigene Texte in die Felder zu schreiben.

Die Möglichkeit die sich aus diesem Verhalten bietet ist die Felder, nachdem das Radio Nachrichten zum Navigationsrechner gesendet und somit die Textfelder beschrieben hat, mit Daten des MP3-Players überschrieben. Somit können eigene Daten auf dem Bordmonitor ausgegeben werden.

Die Nachrichten an den Navigationsrechner werden vom Radio mit der Adresse 68 Hex gesendet. Der beschreibbare Teil (links im „Split-Screen“) ist ein Titel- und Indexbereich in  jeweils 6 Textfeldern unterteilt.


Abbildung 1.10: Beschreibbare Textfelder im Radioanzeigemodus des Bordmonitors

Beschreiben der Textfelder Navigationssystems im Radio bzw. CD-Wechsler Modus:  ADRESSE 3B HEX


Format der Nachricht für Titelfeld 0

<68 Länge 3B> 23 62 30 <Text in ASCII Hex> <XOR>

Format der Nachricht für Titelfelder T-1 bis T-6

<68 Länge 3B> A5 62 01 <Index des Textfeldes>  <Text in ASCII Hex> <XOR>

                Index ist 01 bis 06 für die Titelfelder 1 bis 6

Format der Nachricht für Indexfelder I-0 bis I-5 (MK2 Navigationssystem)

<68 Länge 3B> A5 62 00 <Index des Textfeldes>  <Text in ASCII Hex> <XOR>

Format der Nachricht für Indexfelder I-0 bis I-5 (MK3 und MK4 Navigationssystem mit Splitscreensoftware)

<68 Länge 3B> 21 60 00 <Index des Textfeldes>  <Text in ASCII Hex> <XOR>

FeldIndexFeldIndex
040545
141646
242747/07
(3)(43)(8)(48)
(4)(44)(9)(49)

Werte In Klammern sind nur im Vollbildmodus relevant

Zum Auffrischen der Indexfelder muss folgende Nachricht gesendet werden:

<68 06 3B> A5 60 01 00 91

Im Beschriebenen  Modus (Radio à CD-Wechsler) können über das Anwählen der Indexfelder mit dem Drehknopf des Bordmonitors  eine entsprechende Rückmeldung ausgegeben werden. Diese Rückmeldung wird an die Adresse des Radios gesendet.  Da mit originalem CD-Wechsler in den Indexfeldern die 6 CDs als Menü dargestellt werden ist es mit der oben genannten Funktion möglich diese über den Drehknopf auszuwählen. Diese Funktionalität kann für eine Steuerung über ein dynamisches Menü verwendet werden. Allerdings wurde in diesem Projekt auf diese Funktion verzichtet. Der Hauptgrund dafür ist der begrenzte Platz im Programmspeicher des verwendeten Mikrocontrollers. (à siehe Kapitel 4.2.3)

Format der Nachricht (Rückmeldung bei Anwahl der Indexfelder)

<3B 06 68>  23 62 30 <Index des Textfeldes> <XOR>

IndexDruckDruck ausIndexDruckDruck aus
0004050545
101 (CD 1)41606 (CD 4)46
202 (CD 2)42707 (CD 5)47
303 (CD 3)43808 (CD 6)48
4044490949

Bei Anwahl der Indexfelder 1-6 fordert das Radio als Reaktion mit einer Nachricht an die Adresse des CD-Wechslers einen CD-Wechsel. Diese Anfrage muss entsprechend beantwortet werden.


Kommunikation mit dem CD-Wechsler

Der CD-Wechsler kommuniziert hauptsächlich mit dem Radio. Nach Aktivierung des I-Busses, dies geschieht beim Öffnen des Fahrzeugs, beginnt der CD-Wechsler sich mit einer Anmeldenachricht dem System bekannt zu machen. Allein durch diese Nachricht wird der CD-Wechsler Modus im Radio allerdings nicht aktiviert. Dies geschieht nur wenn der CD-Wechsler auf die folgende Anfrage des Radios unverzüglich antwortet. Das Radio wiederholt diese Anfrage in einem Zyklus von ca. 10 Sekunden. Es müssen mindestens zwei Drittel dieser Anfragen beantwortet werden, wenn dies nicht erfolgt wird der CD-Wechsler Modus wieder deaktiviert. Bei einem Eindrahtbus wie dem I-Bus kann es, wenn ein anderes Steuergerät auf dem Bus Daten sendet, zu Verzögerungen kommen die eigene Nachricht abzusetzen. Außerdem ist nicht immer ausgeschlossen das Nachrichten fehlerhaft übermittelt werden. Die Antworten auf die Anfragen vom Radio müssen in der späteren Emulation aus den genannten Gründen zuverlässig beantwortet werden.

Nachrichten vom CD-Wechsler:    ADRESSE 18 HEX

Format der Anmeldenachricht:    ADRESSE FF HEX

<18 04 FF> 02 01 E0

Format der Antwort auf die Radioanfrage:    ADRESSE FF HEX

<18 04 FF> 02 00 E1

Nachrichten zum Radio:     ADRESSE 68 HEX

<18 0A 68> 39 00 02 00 3F 00 dd tt <XOR>   CD und Titel Status wenn CD-Wechsler nicht abspielt 

<18 0A 68> 39 00 09 00 3F 00 dd tt <XOR>   CD und Titel Status wenn CD-Wechsler abspielt 

<18 0A 68> 39 02 09 00 3F 00 dd tt <XOR>   Starte abspielen des Titels

<18 0A 68> 39 03 09 00 3F 00 dd tt <XOR>   CD Status Scan vorwärts

<18 0A 68> 39 04 09 00 3F 00 dd tt <XOR>   CD Status Scan rückwärts

<18 0A 68> 39 07 09 00 3F 00 dd tt <XOR>   Titelende

<18 0A 68> 39 08 09 00 3F 00 dd tt <XOR>   CD Wechsel

– dd ist die CD-Nummer (zwischen 01 und 06).

– tt ist die Titelnummer 


Z4 / X3 Monitorsteuerung


Nachrichten zum Monitor:  Adresse BF Hex

System aufwecken

<80 04 BF> 11 01 2B

TFT einschalten / Monitor ausfahren<3B 06 F0> 4F 11 11 81 03

Lebenszeichen (muß alle 8-10 Sekunden an den Monitor gesendet werden)<3B 04 46> 01 00 78 
Steuerung des 16:9 Widescreen Bordmonitor
Nachrichten zur Änderung des Anzeigemodus im Bordmonitor: Adresse F0 Hex (Sender ED Hex)<ED 05 F0> 4F 11 <Option> <XOR>Optionen31 Setze 16:9/Zoom 60Hz (Navianzeige)
32 Setze 16:9/Zoom 50Hz (TV Mode)11 Setze 16:9 60Hz (Navianzeige)
12 Setze 16:9 50Hz (TV Mode)01 Setze 4:3 60Hz (Navianzeige)
02 Setze 4:3 50Hz (TV Mode)

Ansteuerung der Karosserieelektronik
Nachrichten zu den Steuergeräten für die Baureihe E39:  Adresse 00 Hex (Sender 3F Hex / DIS)
<3F 05 00> 0C 00 44 <XOR> Fenster Fahrerseite hinten schließen
<3F 05 00> 0C 00 45 <XOR> Fenster Fahrerseite hinten öffnen
<3F 05 00> 0C 00 46 <XOR> Fenster Beifahrerseite hinten schließen
<3F 05 00> 0C 00 47 <XOR> Fenster Beifahrerseite hinten öffnen
<3F 05 00> 0C 00 65 <XOR> alle Fenster öffnen
<3F 05 00> 0C 00 66 <XOR> Schiebedach öffnen
<3F 05 00> 0C 00 0B <XOR> Zentralverriegelung öffen/schließen
<3F 05 00> 0C 00 40 <XOR> Kofferraum öffnen
<3F 05 00> 0C 00 00 <XOR> Fahrersitz nach vorne verschieben
<3F 05 00> 0C 00 01 <XOR> Fahrersitz nach hinten verschieben
<3F 06 00> 0C 01 31 01 <XOR> Spiegel Fahrerseite einklappen
<3F 06 00> 0C 01 30 01 <XOR> Spiegel Fahrerseite ausklappen
<3F 06 00> 0C 02 31 01 <XOR> Spiegel Beifahrerseite einklappen
<3F 06 00> 0C 02 30 01 <XOR> Spiegel Beifahrerseite ausklappen