Unter der Vorraussetzung, daß es manch andere Software gibt die zum Interface Kontakt aufnimmt und Botschaften sendet, ist die Kommandostruktur einfach aber flexibel gestaltet worden.
Die genaue Beschreibung der Syntax kann in RFC Firmware Syntax gefunden werden
Die Firmware und ihre Kommandos sind aufgeteilt in fünf verschiedene sogenannte Funktionsblöcke
in der jede der Funktionsblöcke selbst nochmal in generische und implementationsspezifische Teile aufgeteilt worden sind.
Wenn man ein p - Kommando zur Firmware sendet, definiert die erste Zahl in dem Kommandozeichensatz immer zu welchem Funktionsblock der Befehl weitergeleitet wird. Dies gibt dann letztendlich die folgende Bedeutung der ersten Zahl:
Kommando beginnt mit | geht zu welchem Funktionsblock |
---|---|
p 0 | Systemspezifisch |
p 1 | Systemgenerisch |
p 2 | Serielle spezifische Eingabe |
p 3 | Serielle generische Eingabe |
p 4 | Serielle spezifische Ausgabe |
p 5 | Serielle generische Ausgabe |
p 6 | Protokollspezifisch |
p 7 | Protokollgenerisch |
p 8 | Busspezifisch |
p 9 | Busgenerisch |
max: Implementationsspezifisch (unsigned long)
Kommando | Wert1 | Wert2 | Bedeutung | Fehlerkodes |
---|---|---|---|---|
1 | 0 | 0 | aktiviere Protokoll CAN raw | |
1 | 1 | 0 | aktiviere Protokoll UDS diagnositc | |
1 | 3 | 0 | aktiviere Protokoll RTP (Real time data) | |
2 | 0 | 0 | deaktiviere blaue LED (= AUS) | |
2 | 0 | 1 | aktiviere blaue LED (= AN) | |
2 | 1 | 0 | deaktiviere grüne LED (= AUS) | |
2 | 1 | 1 | aktiviere grüne LED (= AN) | |
2 | 2 | 0 | deaktiviere rote LED (= AUS) | |
2 | 2 | 1 | aktiviere rote LED (= AN) | |
2 | 3 | 0 | deaktiviere Summer (= AUS) | |
2 | 3 | 1..max | aktiviere Summer (= AN) mit Frequenz in Hz mittels Wert2 | |
2 | 10000 | 0 | deaktiviere Relais (= AUS) | |
2 | 10000 | 1 | aktiviere Relais (= AN) |
Kommando | Wert1 | Wert2 | Bedeutung | Fehlerkodes |
---|---|---|---|---|
0 | 0 | 0 | zeige Softwareversion an: OOBD <FW-ID> <Rev> <Hardware> <Model> [Erzeugungsdatum] (e.g.: OOBD D2 651 Lux-Wolf CAN-Invader Thu, 15 Aug 2013 01:15:25 +0200) | |
0 | 1 | 0 | zeige Seriennummer an: xx:xx:xx:xx:xx:xx (=BTM222 MAC-Address) | |
0 | 2 | 0 | zeige Spannungswert der Versorgung des OBD-II Steckers an | |
0 | 3 | 0 | zeige CPU info | |
0 | 4 | 0..max | zeige Speicherinformation von Adresse x an | |
0 | 5 | 0 | zeige ROM Tabellenort | |
0 | 6 | 0 | zeige freien dynamischen Speicher an | |
0 | 7 | 0 | überprüfe CRC-32 der Applikation | |
0 | 8 | 0 | zeige OOBD-Cup Gerätenamen | |
0 | 9 | 0 | zeige UART Geschwindigkeit | |
99 | 0 | 0 | Hardware - Reset |
Noch nichts implementiert
Noch nichts implementiert
Noch nichts implementiert
Noch nichts implementiert
Kommando | Wert1 | Wert2 | Bedeutung | Fehlerkodes |
---|---|---|---|---|
1 | 0..max | 0 | setze den Anwortzeittimout in 10ms Vielfachen | |
5 | $xxx | 0 | setze ECU Anforderungs-ID (RECVID) | |
6 | $xxx | 0 | starte Testerpresent auf CAN-ID $xxx mit aktuellem Intervall und maskiere | 10 (kein Speicher nehr) |
7 | $xxx | 0 | stoppe Testerpresent auf CAN-ID | |
8 | 0..max | 0 | setze Testerpresent Intervall in 10ms Vielfachen (Default 250) | |
9 | $xxx | 0 | setze ECU Antwort-ID (SENDID) (Default 0, setzt SENDID= RECVID | 0x08) | |
10 | $xxx | 0 | setze Testerpresent Maske 02 xx (Default 0x80) |
Keine speziellen p- Kommandos für diesen Modus, weil die Funktion hauptsächlich von dem gesendeten Dateninhalt bestimmt wird. Weiterführende Informationen zum RFC CAN Raw Mode
Weiterführende Informationen zum RFC CAN RTD Mode
Kommando | Wert1 | Wert2 | Bedeutung | Fehlerkodes |
---|---|---|---|---|
1 | löscht die interne Datenspeicherliste, gibt all den genutzen Speicher wieder frei |
Kommando | Wert1 | Wert2 | Bedeutung | Fehlerkodes |
---|---|---|---|---|
0 | 0 | 0 | zeige Informationen über das genutzte Protokoll | |
1 | 0 | 0 | deaktiviere Empfangsmodus | |
1 | 1 | 0 | aktiviere Empfangsmodus |
Kommando | Wert1 | Wert2 | Bedeutung | Fehlerkodes |
---|---|---|---|---|
2 | 0 | 0 | CAN Transceiver: Stumm Modus (CAN deaktiv) | |
2 | 1 | 0 | CAN Transceiver: Loop back (Interne Schleife) | |
2 | 2 | 0 | CAN Transceiver: Loop back kombiniert mit Stumm Modus | |
2 | 3 | 0 | CAN Transceiver: Normal Modus (CAN aktiv) | |
3 | 0 or 1 | 0 | Standard-CAN Initialisierung (initialisiere CAN Kontroller mit 125kbit/s, 11bit) | |
3 | 2 | 0 | Standard-CAN Initialisierung (initialisiere CAN Kontroller mit 250kbit/s, 11bit) | |
3 | 3 | 0 | Standard-CAN Initialisierung (initialisiere CAN Kontroller mit 500kbit/s, 11bit) | |
3 | 4 | 0 | Standard-CAN Initialisierung (initialisiere CAN Kontroller mit1000kbit/s, 11bit) | |
3 | 5 | 0 | Extended-CAN Initialisierung (initialisiere CAN Kontroller mit 125kbit/s, 29bit) | |
3 | 6 | 0 | Extended-CAN Initialisierung (initialisiere CAN Kontroller mit 250kbit/s, 29bit) | |
3 | 7 | 0 | Extended-CAN Initialisierung (initialisiere CAN Kontroller mit 500kbit/s, 29bit) | |
3 | 8 | 0 | Extended-CAN Initialisierung (initialisiere CAN Kontroller mit 1000kbit/s, 29bit) | |
4 | 0 | 0 | HS-CAN (Relais schaltet - AUS) | |
4 | 1 | 0 | MS-CAN (Relais schaltet - EIN) | |
10 | <Filter-Nr> | $<CAN-ID> | setze Filter CAN-ID (11bit CAN-ID 0x0000-0x07FF) wobei Filter-Nr 1-20 ist , z.B. p 8 10 1 $720 | |
11 | <Filter-Nr> | $<Mask-ID> | setze Filtermasken-ID (11bit Mask-ID 0x0000-0x07FF) wobei Filter-Nr 1-20 ist und die Filtermaske von der Filter CAN-ID (0=egal 1=Übereinstimmung) abhängt, z.B. p 8 11 1 $7F0 (hier: $720 - $72F) | |
12 | <Filter-Nr> | $<CAN-ID> | setze Filter CAN-ID (29bit CAN-ID 0x00000000-0x1FFFFFFF) wobei Filter-Nr 1-10 ist, z.B. p 8 12 1 $18F30557 | |
13 | <Filter-Nr> | $<Mask-ID> | setze Filter Mask-ID (29bit Mask-ID 0x00000000-0x1FFFFFFF) wobei Filter-Nr 1-10 ist und die Filtermaske von der Filter CAN-ID (0=egal 1=Übereinstimmung) abhängt, z.B. p 8 11 1 $1FFFFFF0 (hier: $18F30550 - $18F3055F) | |
14 | 0 | 0 | setze alle 11bit CAN Filter auf CAN-ID $0000 und Mask-ID $07FF (= deaktiviere jeden CAN Datenverkehr zur Applikation) |
Kommando | Wert1 | Wert2 | Bedeutung | Fehlerkodes |
---|---|---|---|---|
0 | 0 | 0 | Zeigt eine Info welches/r Gerät/Bus aktiv ist (z.B. CAN-Bus) | |
0 | 3 | 0 | Zeigt eine Info des CAN Transceiver Arbeitsmodus | |
0 | 4 | 0 | Zeigt die CAN-Bus Config (i.e. 11bit/500kBaud) | |
0 | 5 | 1 | lese verschiedene CAN Fehlerzähler (Rx-Count, Rx-Error, REC, Tx-Count, Tx-Error, TEC, Busoff-Error, Warning-Error, Passive-Error) | |
0 | 5 | 2 | lösche alle softwareinternen CAN Fehlerzähler | |
0 | 10 | 0 | zeige alle 11bit CAN-ID Filter, jede Zeile mit zwei 11bit CAN-Filtern wie: <CAN-ID> <Mask-ID> <CAN-ID> <Mask-ID> | |
0 | 11 | 0 | zeige alle 29bit CAN-ID Filter, jede Zeile mit zwei 29bit CAN-Filtern wie: <CAN-ID> <Mask-ID> |