OBD2 und der CAN

OP #4983081
Guten Abend,

ich habe ein kleines Problem mit dem CAN an meinem Fahrzeug (A4 Bj 
2007).
Ich wollte per CAN Interface am OBD2 Stecker ein paar Daten auslesen, 
wenn ich also das hier sende:

ID  DLC   B0 B1 B2 B3 B4 B5 B6 B7
7DF  8    02 01 12 00 00 00 00 00

Sollte ich ja eine Antwort vom Steuergerät (Drehzahl) bekommen mit einer 
ID zwischen 7E8h und 7EFh oder??

Alles was ich sehe ist der ganz normale CAN Trafic, sonst nichts...

Checkliste:
CAN SPEED = 500kbps
Auto CAN fähig = JA

Wenn mir jemand helfen könnte wäre super.

MFG Woern
OP
Hallo,

ich habe alle ID´s von 7D0 bis 7FF ausprobiert, es gab auf keine eine 
Antwort.

Ju schrieb:
> Hast du die Zündung an, wenn du das versuchst?

Ja, ich habe immer die Zündung an gehabt und alles auch nochmal mit 
laufendem Motor getestet.

Ju schrieb:
> Muss nicht erst der Diagnose-Modus
> gestartet werden?

Wie soll ich den Diagnose-Modus starten?? Gibt es dafür eine Botschaft 
die ich vorab senden muss??

MFG
Gast
Steffen W. schrieb:
> Ju schrieb:
>> Muss nicht erst der Diagnose-Modus
>> gestartet werden?
>
> Wie soll ich den Diagnose-Modus starten?? Gibt es dafür eine Botschaft
> die ich vorab senden muss??

Bei UDS wäre es Service 10, ehrlich gesagt weiß ich nicht ob es bei OBD 
überhaupt Sessions gibt, hast du schon mal aufgezeichnet wie ein ELM327 
Adapter sich verhält wenn er die Drehzahl ausliest?
Dez - Hex Problem :-)

Probier mal als Drehzahl PID 0x0C. 0x12 ist Commanded Secondary Air 
Status und wird zumindest von meinem Audi nicht unterstützt.

also so:

ID  DLC   B0 B1 B2 B3 B4 B5 B6 B7
7DF  8    02 01 0C 00 00 00 00 00

Ganz am Anfang sollte man deswegen ein 01 00 (Request supported PIDs) 
senden. Dann sieht man an der/den Antwort/en, welche PIDs überhaupt 
unterstützt werden.
Ich verwende ein Diamex DXM oder Pi-OBD Modul. Beide benutzen ELM 
ähnliche Kommandos. Deswegen meine ich mit 01 00 die reine OBD 
Botschaft. Was da für Kvaser noch drumherum benötigt wird, kann ich nur 
vermuten. Aber sicher noch ein CAN PCI Byte für Single Frame mit 
korrekter Längeninfo.

also so:

ID  DLC   B0 B1 B2 B3 B4 B5 B6 B7
7DF  8    02 01 00 00 00 00 00 00
Vor einer Weile habe ich mich mal mit OBD beschäftigt und bin da über 
ein Dokument gestolpert, da stand auch drin, wie man die Adressen 
aufrufen muss. Leider habe ich das nicht oder nicht mehr. Musst mal ein 
bisschen im Netz unter OBD suchen.
Denke ich habe das nicht abgespeichert, weil ich nicht programmieren 
wollte, sondern nur die Diagnose verstehen.
OP
Also, ich habe es ebend noch einmal getestet...

(Alle Angaben in HEX)

Gesendet habe ich:
ID  DLC   B0 B1 B2 B3 B4 B5 B6 B7
7DF  8    02 01 0C 00 00 00 00 00  (Anforderung der Motordrehzahl)

Empfangen habe ich:
ID  DLC   B0 B1 B2 B3 B4 B5 B6 B7
7E8  8    04 41 0C 0D E4 00 00 00

B2 = PID Nummer (Motordrehzahl)

256 * B3 + B4
-------------  = Motorsrehzahl 889 U/Min ---> Passt
     4

MFG

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 9 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.