D
DerBaum
Der Joystick ist Bestandteil des Infotainment System in vielen Renault Modellen.
Es gibt ihn schon seit etlichen Jahren. Um an neuere Infotainment Systeme Anschluß zu finden,
wurde er im Laufe der Zeit mehrfach verändert, jedoch funktioniert er (bis auf die unterschiedliche Beschriftung) immer identisch.
Der elektrische Anxchluss ist relaiv simpel.
Der Joysttick bekommt nur Dauerplus (PIN7) und Minus (PIN8 oder 2) dazu ein "Auto aufgewacht" Signal (PIN1).
Àlle weiteren Signale Werden über den Can Bus übertragen (PIN5/11 oder PIN6/12).
Minus auf Pin 2 und 8 ist intern verbunden.
Der Canbus wird auch intern von 2 Pins auf die 4 Pins aufgesplittet.
Von daher ist es egal welche der Pins man nun verwendet...
Byte Zählung / Randbedingungen:
Ich zähle in diesem Beitrag die Bytes einer Nachricht von "1 bis 8" NICHT von "0 bis 7".
Zählung von links nach rechts. Hexadezimalsystem. Can 500k
Sobald der Joystick mit den benötigten Spannungen versorgt ist, beginnt er Nachrichten zu senden.
Identifikation:
Eine Nachricht wird dauerhaft auf der Adresse 63F mit 8 Bytes und dem dem Inhalt 04 05 00 01 02 00 F2 F2
mit einer Periode von 500ms gesendet. Diese Nachricht verändert sich nicht.
Ich vermute, das diese Nachricht einfach nur ein "Hallo hier bin ich" des Joysticks ist.
"F2" Bytes sind Füllbytes und können ignoriert werden.
Tasten:
Die 9 Tasten um den Joystick haben eine eigene Nachricht.
Sobald man eine Taste drückt wird eine einzelne 8 Byte Nachricht auf der Adresse 63D gesendet.
Diese Nachricht hat nur 1 aktives Byte der Rest sind "F2" Füllbytes.
Beispiel : XX F2 F2 F2 F2 F2 F2 F2
Jeder taste ist eine Zahl zugeordnet.
Es beginnt mit der 0 auf der oberen linken Taste und geht im Uhrzeigersinn bis 8.
Drückt man kurz auf die Taste wird die Nummer der Taste mit einer führenden 0 gesendet.
Drückt man eine Taste eine Sekunde oder länger, wird die Zahl der Taste mit einer führenden 8 gesendet.
Beispiel:
kurzer Druck auf "DARK" Taste = 05 F2 F2 F2 F2 F2 F2 F2
langer Druck auf "MAP" Taste = 88 F2 F2 F2 F2 F2 F2 F2
Joystick:
Die Bewegungen des Joystick erzeugen eine eigene Nachricht. Sobald man den Joystick bewegt, wird eine
einzelne 8 Byte Nachricht auf der Adresse 63E gesendet. Diese Nachricht hat 2 aktive Bytes und 6 "F2"
Füllbytes.
Beispiel : YY ZZ F2 F2 F2 F2 F2 F2
Die Drehung des Joystick erzeugt je nach Richtung pro Klick einen Wert im zweiten Byte.
Das erste Byte ist bei Drehungen immer 00.
Die maximale Zeit für eine Nachricht ist auf 40ms Sekunden begrenzt. Dreht man den Joystick schneller, so
das die einzelnen klicks näher als 40ms zusammen liegen , so steigt der gesendete Wert.
Ein einfacher Dreh nach links erzeugt pro Klick eine 05. Dreht man etwas schneller , so steigt der gesendete
Wert auf 09. Beschleunigt man weiter wird ein 0D gesendet. Bei schnellen Drehungen wird eine 11 gesendet.
Und bei einer wirklich sehr sehr schnellen Drehung (bei der man sich schon Mühe
geben muss um den Wert zu erreichen) wird eine 15 gesendeet.
Genau so verhält es sich beim rechts drehen, nur mit leicht abweichenden Werten.
Links drehen:
05 < 09 < 0D < 11 < 15
Rechts drehen:
06 < 0A < 0E < 12 < 16
Hier mit könnte man wunderbar die Beschleunigung der Drehung berechnen, so das man Menüs unterschiedlich
weit und schnell scrollen lassen kann.
Beispiel:
schneller Dreh nach links = 00 09 F2 F2 F2 F2 F2 F2
einzelner Dreh nach rechts = 00 06 F2 F2 F2 F2 F2 F2
Die Richtungsbewegungen des Joysticks (Oben , Unten, Links, rechts, Mittelklick) belegen das erste Byte
der Nachricht. Das zweite Byte wird jeweils auf 00 gesetzt.
Klickt man kurz in eine Richtung , so wird der Richtung entsprechend eine Zahl mit einer folgenden 0 gesendet.
Klickt man länger als 1 Sekunde in eine Richtung, so folgt der Zahl für die Richtung eine 4.
Die einzige Ausnahme ist hier der Mittelklick.
Kurzer Klick:
oben = 10 00 F2 F2 F2 F2 F2 F2
Unten = 20 00 F2 F2 F2 F2 F2 F2
links = 30 00 F2 F2 F2 F2 F2 F2
rechts = 40 00 F2 F2 F2 F2 F2 F2
Mittelklick = 01 00 F2 F2 F2 F2 F2 F2
langer Klick:
oben = 14 00 F2 F2 F2 F2 F2 F2
Unten = 24 00 F2 F2 F2 F2 F2 F2
links = 34 00 F2 F2 F2 F2 F2 F2
rechts = 44 00 F2 F2 F2 F2 F2 F2
Mittelklick = 02 00 F2 F2 F2 F2 F2 F2
Beleuchtung:
Um die Beleuchtung im Joystick zu aktivieren muss man eine Nachricht senden.
Auf der Adresse 558 wird eine 1 Byte Nachricht benötigt.
Um das Licht zu aktivieren kann man folgende Bytes verwenden:
04 05 06 07
Um das Licht zu deaktivieren kann man folgende Bytes verwenden:
00 01 02 03
Hat man das Licht per Nachricht eingeschaltet, bleibt es solange an, bis man einen der "AUS" Werte sendet.
Es gibt ihn schon seit etlichen Jahren. Um an neuere Infotainment Systeme Anschluß zu finden,
wurde er im Laufe der Zeit mehrfach verändert, jedoch funktioniert er (bis auf die unterschiedliche Beschriftung) immer identisch.
Der elektrische Anxchluss ist relaiv simpel.
Der Joysttick bekommt nur Dauerplus (PIN7) und Minus (PIN8 oder 2) dazu ein "Auto aufgewacht" Signal (PIN1).
Àlle weiteren Signale Werden über den Can Bus übertragen (PIN5/11 oder PIN6/12).
Minus auf Pin 2 und 8 ist intern verbunden.
Der Canbus wird auch intern von 2 Pins auf die 4 Pins aufgesplittet.
Von daher ist es egal welche der Pins man nun verwendet...
Byte Zählung / Randbedingungen:
Ich zähle in diesem Beitrag die Bytes einer Nachricht von "1 bis 8" NICHT von "0 bis 7".
Zählung von links nach rechts. Hexadezimalsystem. Can 500k
Sobald der Joystick mit den benötigten Spannungen versorgt ist, beginnt er Nachrichten zu senden.
Identifikation:
Eine Nachricht wird dauerhaft auf der Adresse 63F mit 8 Bytes und dem dem Inhalt 04 05 00 01 02 00 F2 F2
mit einer Periode von 500ms gesendet. Diese Nachricht verändert sich nicht.
Ich vermute, das diese Nachricht einfach nur ein "Hallo hier bin ich" des Joysticks ist.
"F2" Bytes sind Füllbytes und können ignoriert werden.
Tasten:
Die 9 Tasten um den Joystick haben eine eigene Nachricht.
Sobald man eine Taste drückt wird eine einzelne 8 Byte Nachricht auf der Adresse 63D gesendet.
Diese Nachricht hat nur 1 aktives Byte der Rest sind "F2" Füllbytes.
Beispiel : XX F2 F2 F2 F2 F2 F2 F2
Jeder taste ist eine Zahl zugeordnet.
Es beginnt mit der 0 auf der oberen linken Taste und geht im Uhrzeigersinn bis 8.
Drückt man kurz auf die Taste wird die Nummer der Taste mit einer führenden 0 gesendet.
Drückt man eine Taste eine Sekunde oder länger, wird die Zahl der Taste mit einer führenden 8 gesendet.
Beispiel:
kurzer Druck auf "DARK" Taste = 05 F2 F2 F2 F2 F2 F2 F2
langer Druck auf "MAP" Taste = 88 F2 F2 F2 F2 F2 F2 F2
Joystick:
Die Bewegungen des Joystick erzeugen eine eigene Nachricht. Sobald man den Joystick bewegt, wird eine
einzelne 8 Byte Nachricht auf der Adresse 63E gesendet. Diese Nachricht hat 2 aktive Bytes und 6 "F2"
Füllbytes.
Beispiel : YY ZZ F2 F2 F2 F2 F2 F2
Die Drehung des Joystick erzeugt je nach Richtung pro Klick einen Wert im zweiten Byte.
Das erste Byte ist bei Drehungen immer 00.
Die maximale Zeit für eine Nachricht ist auf 40ms Sekunden begrenzt. Dreht man den Joystick schneller, so
das die einzelnen klicks näher als 40ms zusammen liegen , so steigt der gesendete Wert.
Ein einfacher Dreh nach links erzeugt pro Klick eine 05. Dreht man etwas schneller , so steigt der gesendete
Wert auf 09. Beschleunigt man weiter wird ein 0D gesendet. Bei schnellen Drehungen wird eine 11 gesendet.
Und bei einer wirklich sehr sehr schnellen Drehung (bei der man sich schon Mühe
geben muss um den Wert zu erreichen) wird eine 15 gesendeet.
Genau so verhält es sich beim rechts drehen, nur mit leicht abweichenden Werten.
Links drehen:
05 < 09 < 0D < 11 < 15
Rechts drehen:
06 < 0A < 0E < 12 < 16
Hier mit könnte man wunderbar die Beschleunigung der Drehung berechnen, so das man Menüs unterschiedlich
weit und schnell scrollen lassen kann.
Beispiel:
schneller Dreh nach links = 00 09 F2 F2 F2 F2 F2 F2
einzelner Dreh nach rechts = 00 06 F2 F2 F2 F2 F2 F2
Die Richtungsbewegungen des Joysticks (Oben , Unten, Links, rechts, Mittelklick) belegen das erste Byte
der Nachricht. Das zweite Byte wird jeweils auf 00 gesetzt.
Klickt man kurz in eine Richtung , so wird der Richtung entsprechend eine Zahl mit einer folgenden 0 gesendet.
Klickt man länger als 1 Sekunde in eine Richtung, so folgt der Zahl für die Richtung eine 4.
Die einzige Ausnahme ist hier der Mittelklick.
Kurzer Klick:
oben = 10 00 F2 F2 F2 F2 F2 F2
Unten = 20 00 F2 F2 F2 F2 F2 F2
links = 30 00 F2 F2 F2 F2 F2 F2
rechts = 40 00 F2 F2 F2 F2 F2 F2
Mittelklick = 01 00 F2 F2 F2 F2 F2 F2
langer Klick:
oben = 14 00 F2 F2 F2 F2 F2 F2
Unten = 24 00 F2 F2 F2 F2 F2 F2
links = 34 00 F2 F2 F2 F2 F2 F2
rechts = 44 00 F2 F2 F2 F2 F2 F2
Mittelklick = 02 00 F2 F2 F2 F2 F2 F2
Beleuchtung:
Um die Beleuchtung im Joystick zu aktivieren muss man eine Nachricht senden.
Auf der Adresse 558 wird eine 1 Byte Nachricht benötigt.
Um das Licht zu aktivieren kann man folgende Bytes verwenden:
04 05 06 07
Um das Licht zu deaktivieren kann man folgende Bytes verwenden:
00 01 02 03
Hat man das Licht per Nachricht eingeschaltet, bleibt es solange an, bis man einen der "AUS" Werte sendet.