OBD-II am CAN-Bus mitlesen — sehen, was das Diagnosegerät fragt.
Trace hört passiv am CAN-Bus mit, setzt ISO-TP-Nachrichten zusammen und dekodiert die OBD-II-Dienste: Mode, PID und den Messwert mit Einheit — 1726 rpm statt 1A F8.
Kein Mailprogramm eingerichtet? Schreib direkt an support@trace-analyzer.net.
Der Zugang ist derzeit kostenlos und wird auf Anfrage freigeschaltet.
- ✓ ISO-TP zusammengesetzt
- ✓ Werte mit Einheit
- ✓ Modes 01–03, 06–0A
- ✓ Hört nur zu, sendet nie
Von der Leitung zum Telegramm.
Ein Diagnosegerät fragt die Motordrehzahl ab, Steuergerät 1 antwortet — danach die Geschwindigkeit.
Jeder CAN-Frame beginnt mit einem ISO-TP-Kopf (beim Single Frame ein Byte: die Länge); Trace entfernt ihn beim Zusammensetzen, mehrteilige Antworten wie die VIN eingeschlossen. Drehzahl = (256 · 0x1A + 0xF8) / 4. Gekürzt dargestellt.
OBD-II-Verkehr als lesbare Werte.
Zusammengesetzt statt zerstückelt
Lange Antworten wie die VIN verteilen sich auf mehrere CAN-Frames. Trace fügt First- und Consecutive-Frames zu einer Nachricht zusammen, bevor es sie dekodiert.
Physikalische Werte statt Hex
Über 80 Mode-01-PIDs — Drehzahl, Tempo, Kühlmittel, Luftmasse, Lambdasonden, Katalysator- und Öltemperatur, Verbrauch, Kilometerstand und mehr — erscheinen als physikalische Werte mit Einheit. Fehlercodes zeigt Trace als P0143, die VIN als Klartext.
Eine Definition, die du anpasst
Die Skalierung steht in der offenen TrIML-Definition: Wert = Rohwert · Faktor + Offset. Jeder weitere PID ist eine Zeile — ohne Code.
- SucheVolltextsuche über alle Telegramme, auch im laufenden Strom.
- AufnahmeRohbytes und fertige Interpretation in einer .msf-Datei.
- Mehrere PortsMehrere Schnittstellen in einer Sitzung, auf einer gemeinsamen Zeitachse.
- Aus der FerneProbe an der Anlage, Auswertung im Browser — ohne eingehenden Port.
Was noch fehlt.
Damit du nicht erst beim Ausprobieren merkst, wo die Grenzen liegen:
- Noch nicht im Fahrzeug getestet. Die Erfassung über SocketCAN (Linux) und PEAK PCAN-Basic (Windows) ist gebaut; der Test mit echter Hardware steht noch aus. Die Dekodierung ist mit normgerecht erzeugten, synthetischen Nachrichtenfolgen getestet.
- Steuerbefehle nur so weit genormt. Mode 08 zeigt, welchen Test ein Diagnosegerät anfordert – etwa den Dichtheitstest der Tankentlüftung – und welche Tests ein Steuergerät kennt. Was ein Hersteller darüber hinaus festlegt, erscheint als Rohbytes.
- Unbekannte PIDs beenden die Zerlegung. Mehrfach-PID-Antworten und Freeze Frames werden Paar für Paar dekodiert. Ein PID, den die Definition nicht kennt, hat keine bekannte Länge — seine Bytes und alles dahinter in dieser Antwort erscheinen als ein Hex-Block.
- Nur OBD-II über CAN. K-Line (ISO 9141, KWP2000), J1939 und UDS sind noch nicht definiert.
Skalierung ist ein Attribut.
Jeder PID ist ein Fall mit Größe, Faktor, Offset und Einheit. Die Engine wendet die Formel an — die Definition nennt sie nur.
<!-- Mode 01: value = raw · scale + offset --> <case value="0x05"><byte name="CoolantTemp" scale="1" offset="-40" unit="C" /></case> <case value="0x0C"><word name="EngineRPM" bigendian="true" scale="0.25" unit="rpm" /></case> <case value="0x0D"><byte name="VehicleSpeed" unit="km/h" /></case>
Häufige Fragen
Fragt Trace das Auto selbst ab?
Nein. Trace sendet nie auf dem Bus. Mit PCAN schaltet Trace den Adapter vor dem Öffnen auf Listen-only und liest die Einstellung zurück — gelingt das nicht, wird der Adapter nicht geöffnet. Unter Linux schaltest du das Interface selbst auf Listen-only (ip link … listen-only on), sonst quittiert der CAN-Controller die Frames. Damit Werte erscheinen, muss etwas am Bus sie abfragen.
Welchen CAN-Adapter brauche ich?
Unter Linux jedes Interface mit SocketCAN-Treiber — Bitrate und Listen-only stellst du dort mit ip link ein. Unter Windows einen PEAK-PCAN-Adapter (PCAN-Basic), Vorgabe 500 kbit/s, die übliche OBD-II-Einstellung. Die Erfassung an echter Hardware ist noch nicht geprüft — siehe „Was noch fehlt“.
Was ist mit 29-Bit-IDs?
Sie werden mitgelesen und dekodiert. Die OBD-II-Definition wertet die CAN-ID nicht aus, sondern zeigt sie nur an — 0x18DAF110 wie 0x7E8. Bei 29 Bit fragt der Tester funktional mit 0x18DB33F1, Antworten kommen von 0x18DAF1xx.
OBD-II mit Trace ausprobieren.
Schreib kurz, woran du misst. Der Zugang wird dann freigeschaltet — und was dir fehlt, fließt direkt in die Entwicklung ein.
Kein Mailprogramm eingerichtet? Schreib direkt an support@trace-analyzer.net.