CAN-IDs

G

gromsen

Guest
Hi,

beim Googlen nach den CAN-IDs meines Octis, bin auf das Forum hier aufmerksam geworden. Da sehr viele IDs gleich sind, sich manche allerdings im Detail etwas unterscheiden, werde ich die Tage mal meine Liste mit IDs und deren Funktion hier posten. Einfach auch um mal Danke zusagen weil ich ohne die hier gelisteten IDs bestimmt nicht so weit wäre.

Ein paar Dinge beschäftigen mich derzeit allerdings noch:

0x371 hält bei meinem Octi nur die vier Türen "bit-codiert" vor, allerdings nicht den Kofferraum. Jemand ne Idee wo der rumschwirren könnte? 0x371 hat im Octi übrigens nur 1 Byte und keine 2 oder 3.

Die Batteriespannung in 0x571 schwankt, und zwar wird das erste Byte von 1 an hochgezählt und zwar so:

01
02
03
04
05

Dann kommt:

08

und dann der vermeintliche Wert:

19

Was mittels folgender Formel: (byte0/2) dann die Spannung ergibt:

0x19 -> 25 (dezimal):

25/2 = 12,5 Volt.

Ich habs mal nachgemessen und die Batterie liegt bei 12,6 Volt, was dann ja eigentlich hinkommen müsste.

Jemand ne Idee dazu? Weis evtl. jemand welcher A/D-Wandler da verbaut wurde und welche Auflösung der hat? Und auch warum die das immer hochzählen?


Wenn ich mir das TP 1.6 und seinen Aufbau anschaue, dann habe ich da auch noch ein paar Fragen:

Der Eröffnungs-Identifier ist bei 1.6 ja festcodiert und nicht dynamisch wie bei 2.0, allerdings sollte die Antwort zum Eröffnen des Kanals ja an den gleichen Identifier gehen und nicht an einen anderen.

Laut Theorie sieht das Protokoll so aus:

Code:
Anfrage:

Can-ID:  Eröffnungs-ID für zum Eröffnen des Kanals
Byte 1:  Logische Adresse des anfragenden Gerätes
Byte 2:  Opcode des Pakets (C0 -> Anfrage, D0 -> positive Antwort, -> D8 negative Antwort)
Byte 3:  Gewünschte Kanal-ID auf der der Anfragende von Byte1 in Zukunft Daten empfangen möchte.

Antwort: 

CAN-ID:  Eröffnungs-ID identisch mit der des Anfragenden
Byte 1: Logische Adresse des Antwortenden
Byte 2: Opcode, siehe Anfrage
Byte 3: Kanal-ID unter der der Antwortende Nachrichten empfangen möchte
Mein Radio kommt mit meiner MFA allerdings so ins gespräch:

Anfrage:

ID bytes[]
4D9 09 C0 B9

Antwort:

ID bytes[]
2E8 E9 D0 99

Ich hab da schon etwas rumgerechnet, konnt das aber nicht zu 100% nachvollziehen. interessanter weise funktioniert es aber, wenn ich mich in den Ring einbuche und diese Nachrichten schicke (Radio ist dann aus).

Jemand ne idee hier ?


cu
 
AW: CAN-IDs

Hi,
was genau kannst du denn nicht nachvollziehen?
Dass die logische Adresse nicht gleich der Eröffnungs-ID ist?
Hilft dir denn die Aussage, dass Eröffnungs-ID gleich Basis-ID plus logische Adresse ist?

Grüße
Jens
 
AW: CAN-IDs

Was mittels folgender Formel: (byte0/2) dann die Spannung ergibt:

0x19 -> 25 (dezimal):

25/2 = 12,5 Volt.

Ich habs mal nachgemessen und die Batterie liegt bei 12,6 Volt, was dann ja eigentlich hinkommen müsste.

Jemand ne Idee dazu? Weis evtl. jemand welcher A/D-Wandler da verbaut wurde und welche Auflösung der hat? Und auch warum die das immer hochzählen?

Hallo,

dazu kommt, dass alle diese Infos schon längst zu den IDs gepostet wurden.

Gruss
Peter
 
AW: CAN-IDs

Hi,

beim Googlen nach den CAN-IDs meines Octis, bin auf das Forum hier aufmerksam geworden. Da sehr viele IDs gleich sind, sich manche allerdings im Detail etwas unterscheiden, werde ich die Tage mal meine Liste mit IDs und deren Funktion hier posten. Einfach auch um mal Danke zusagen weil ich ohne die hier gelisteten IDs bestimmt nicht so weit wäre.

Ein paar Dinge beschäftigen mich derzeit allerdings noch:

0x371 hält bei meinem Octi nur die vier Türen "bit-codiert" vor, allerdings nicht den Kofferraum. Jemand ne Idee wo der rumschwirren könnte? 0x371 hat im Octi übrigens nur 1 Byte und keine 2 oder 3.

Die Batteriespannung in 0x571 schwankt, und zwar wird das erste Byte von 1 an hochgezählt und zwar so:

01
02
03
04
05

Dann kommt:

08

und dann der vermeintliche Wert:

19

Was mittels folgender Formel: (byte0/2) dann die Spannung ergibt:

0x19 -> 25 (dezimal):

25/2 = 12,5 Volt.

Ich habs mal nachgemessen und die Batterie liegt bei 12,6 Volt, was dann ja eigentlich hinkommen müsste.

Jemand ne Idee dazu? Weis evtl. jemand welcher A/D-Wandler da verbaut wurde und welche Auflösung der hat? Und auch warum die das immer hochzählen?


Wenn ich mir das TP 1.6 und seinen Aufbau anschaue, dann habe ich da auch noch ein paar Fragen:

Der Eröffnungs-Identifier ist bei 1.6 ja festcodiert und nicht dynamisch wie bei 2.0, allerdings sollte die Antwort zum Eröffnen des Kanals ja an den gleichen Identifier gehen und nicht an einen anderen.

Laut Theorie sieht das Protokoll so aus:

Code:
Anfrage:

Can-ID:  Eröffnungs-ID für zum Eröffnen des Kanals
Byte 1:  Logische Adresse des anfragenden Gerätes
Byte 2:  Opcode des Pakets (C0 -> Anfrage, D0 -> positive Antwort, -> D8 negative Antwort)
Byte 3:  Gewünschte Kanal-ID auf der der Anfragende von Byte1 in Zukunft Daten empfangen möchte.

Antwort: 

CAN-ID:  Eröffnungs-ID identisch mit der des Anfragenden
Byte 1: Logische Adresse des Antwortenden
Byte 2: Opcode, siehe Anfrage
Byte 3: Kanal-ID unter der der Antwortende Nachrichten empfangen möchte
Mein Radio kommt mit meiner MFA allerdings so ins gespräch:

Anfrage:

ID bytes[]
4D9 09 C0 B9

Antwort:

ID bytes[]
2E8 E9 D0 99

Ich hab da schon etwas rumgerechnet, konnt das aber nicht zu 100% nachvollziehen. interessanter weise funktioniert es aber, wenn ich mich in den Ring einbuche und diese Nachrichten schicke (Radio ist dann aus).

Jemand ne idee hier ?


cu


Servus...
Erstmal zur Batteriespannung:

Die Spannung steht im Byte 1 von 0x0571.
Und zwar bei ALLEN VW/Skoda/Seat Fahrzeugen, und ich meine auch bei Audi.

Der Wertebereich geht von 0x00 bis 0xFE (0 bis 254)
Der Wert 0XFF gibt an, dass da ein Fehler vorliegt.

Die Teilung liegt bei 0.05 Volt.
Der Physikalische Messbereich startet bei 5.00 Volt.

Das bedeutet:
0x00 = 5.00 Volt
0x01 = 5.05 Volt
usw.
Das ergibt einen Maximalen Messbereich von 17.7 Volt
Formel:
Volt = (Byte1*0.05)+5

Wenn das bei Dir da irgendwie hochzählt, hast Du eine falsche ID erwischt.



Dann zum Kommunikationsaufbau.
in TP 1.6 sind an der Kommunikation immer 4 IDs beteiligt. Das wurde hier aber schon zig mal geschrieben und sogar log Dateien wurden gepostet.
2 IDs steuern den Kanalaufbau, wenn der Kanal steht, werden die Daten von 2 weiteren IDs, nämlich den IDs, die im Kanalaufbau bestimmt werden, gesendet.

Hier Dein Beispiel

4D9 09 C0 B9
Hier fragt das Radio, ob es Daten an die MFA senden darf.
Es wird hier das TP Diagnoseprotokoll benutzt.
Das Radio hat halt die Adr. 09
Die Grundadr. der Diagnosekanäle ist 4D0
Daher die 4D9
Würde das Navi fragen, stände da eine 4D6. Beim Telefon eine 4DA usw.

Ferner fragt das Radio, ob es zur Kommunikation den Kanal B9 nutzen darf.

Das KI bzw. die MFA antwortet darauf:

2E8 E9 D0 99

Mit der D0 wird eine positive Antwort gegeben.
Es teilt nun dem Radio mit, dass es seinerseits auf dem Kanal 99 kommunizieren wird.

Der Grundkanal für die TP Kommunikation ist die 0x0600
Da packen wir nun die 0xB9 drauf und erhalten 0x06B9 und bei der 0x99 die 0x0699

Wenn Du nun also Deinen Logger anwirfst und auf die IDs
0x02E8
0x04D9
0x0699
0x06B9
lauscht, kannst Du die gesamte Kommunikation zwischen Radio und MFA mitschneiden.


Genau so funktioniert die Kommunikation zu allen Teilnehmern, die das TP benutzen.
Das sind bei unseren ollen T5:
- Radio
- Navi
- Telefon
- Alle Diagnosesitzungen die eine virtuelle K-Line via CAN benutzen.

Gruß,

Stefan
 
Zurück
Oben