User Tools

Site Tools


de:doc:hw_commands

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
de:doc:hw_commands [2014/09/21 11:48] wsauerde:doc:hw_commands [2015/07/09 16:33] (current) – [Busgenerische Kommandos (P 9) für den CAN Bus] nexulm
Line 1: Line 1:
-====== The OOBD Firmware Commands ======+====== Die OOBD Firmware Kommandos ======
  
-Under the assumtionthat it will be mostly other software which talks to the interfacethe command structure was made simple, but flexible.+Unter der Vorraussetzungdaß es manch andere Software gibt die zum Interface Kontakt aufnimmt und Botschaften sendetist die Kommandostruktur einfach aber flexibel gestaltet worden.
  
-The exact description about the syntax as such can be found in the [[rfc_firmware_syntax|RFC Firmware Syntax]]+Die genaue Beschreibung der Syntax kann in [[rfc_firmware_syntax|RFC Firmware Syntax]] gefunden werden 
 + 
 +Die Firmware und ihre Kommandos sind aufgeteilt in fünf verschiedene sogenannte Funktionsblöcke
  
-The firmware and its commands are split into five different so called functions blocks 
   - System   - System
-  - Serial Input +  - Serielle Eingabe 
-  - Serial Output +  - Serielle Ausgabe 
-  - Protocol+  - Protokoll
   - Bus   - Bus
  
-where each of this function blocks is split again into a generic and a implementation specific part +in der jede der Funktionsblöcke selbst nochmal in generische und implementationsspezifische Teile aufgeteilt worden sind. 
-  * **Generic** meansthat these functions are common for all implementation of this particular function blockmeans each implementation has to support this commandsBut please note that e.gK-Line Bus will still have other generic commands as a CAN- Bus +  * **Generisch** bedeutetdas diese Funktionen gleich sind für den bestimmten Funktionsblockwas bedeutet das jede Implentation diese Kommandos unterstützen mussAber bitte nimm zu Kenntnis, daß z.Bein K-Line Bus andere generische Kommandos besitzt als ein CAN-Bus 
-  * **Implementation specific** meansthat the support of these commands if depending of actual type or implementation of the function block. So is e.gthe CAN-ID length setting supported of course by a CAN busbut not by a K-Line Bus+  *  
 +  * **Implementationsspezifisch** bedeutetdass die Unterstützung dieser Kommandos, abhängig von tatsächlichen Typ oder der Durchführung des Funktionsbausteins sind. So ist z.Bdas Setzen der CAN-ID Länge sicherlich unterstützt wird von einem CAN-Busaber nicht von einem K-Line Bus
  
-When sending any p- command to the firmwarethe first number in the command string always defines, to which function block the command is forwarded toThis gives then finally the following meaning of the first number:+Wenn man ein p - Kommando zur Firmware sendetdefiniert die erste Zahl in dem Kommandozeichensatz immer zu welchem Funktionsblock der Befehl weitergeleitet wirdDies gibt dann letztendlich die folgende Bedeutung der ersten Zahl:
  
-^  Command starts with    goes to which function block  ^ +^  Kommando beginnt mit    geht zu welchem Funktionsblock  ^ 
-|  p 0  |  System Specific  | +|  p 0  |  Systemspezifisch  | 
-|  p 1  |  System Generic  | +|  p 1  |  Systemgenerisch  | 
-|  p 2  |  Serial-In Specific  | +|  p 2  |  Serielle spezifische Eingabe  | 
-|  p 3  |  Serial-In Generic  | +|  p 3  |  Serielle generische Eingabe  | 
-|  p 4  |  Serial-Out Specific  +|  p 4  |  Serielle spezifische Ausgabe 
-|  p 5  |  Serial-Out Generic  | +|  p 5  |  Serielle generische Ausgabe  | 
-|  p 6  |  Protocol Specific  | +|  p 6  |  Protokollspezifisch  | 
-|  p 7  |  Protocol Generic  | +|  p 7  |  Protokollgenerisch  | 
-|  p 8  |  Bus Specific  | +|  p 8  |  Busspezifisch  | 
-|  p 9  |  Bus Generic  |+|  p 9  |  Busgenerisch  |
  
  
  
-max: implementation specific (unsigned long)+max: Implementationsspezifisch (unsigned long)
  
-===== System Generic Commands (P 1) =====+===== Systemgenerische Kommandos (P 1) =====
  
-^  Command  ^  Value1  ^  Value2  ^  Meaning  ^  Errorcodes  ^ +^  Kommando  ^  Wert1  ^  Wert2  ^  Bedeutung  ^  Fehlerkodes  ^ 
-|  1  |  0  |  0  | enable protocol CAN raw  |   | +|  1  |  0  |  0  | aktiviere Protokoll CAN raw  |   | 
-|  1  |  1  |  0  | enable protocol UDS diagnositc  |   | +|  1  |  1  |  0  | aktiviere Protokoll UDS diagnositc  |   | 
-|  1  |  3  |  0  | enable protocol RTP (Real time data)  |   | +|  1  |  3  |  0  | aktiviere Protokoll RTP (Real time data)  |   | 
-|  2  |  0  |  0  | disable blue LED (= OFF)  |   | +|  2  |  0  |  0  | deaktiviere blaue LED (= AUS)  |   | 
-|  2  |  0  |  1  | enable blue LED (= ON)  |   | +|  2  |  0  |  1  | aktiviere blaue LED (= AN)  |   | 
-|  2  |  1  |  0  | disable green LED (= OFF)  |   | +|  2  |  1  |  0  | deaktiviere grüne LED (= AUS)  |   | 
-|  2  |  1  |  1  | enable green LED (= ON)  |   | +|  2  |  1  |  1  | aktiviere grüne LED (= AN)  |   | 
-|  2  |  2  |  0  | disable red LED (= OFF)  |   | +|  2  |  2  |  0  | deaktiviere rote LED (= AUS)  |   | 
-|  2  |  2  |  1  | enable red LED (= ON)  |   | +|  2  |  2  |  1  | aktiviere rote LED (= AN)  |   | 
-|  2  |  3  |  0  | disable buzzer (= OFF)  |   | +|  2  |  3  |  0  | deaktiviere Summer (= AUS)  |   | 
-|  2  |  3  |  1..max enable buzzer (= ONwith frequency in Hz of Value2    | +|  2  |  3  |  1..max aktiviere Summer (= ANmit Frequenz in Hz mittels Wert2    | 
-|  2  |  10000  |  0  | disable Relais (= OFF)  |   | +|  2  |  10000  |  0  | deaktiviere Relais (= AUS)  |   | 
-|  2  |  10000  |  1  | enable Relais (= ON)  |   |+|  2  |  10000  |  1  | aktiviere Relais (= AN)  |   |
  
-===== System Specific Commands (P 0) ===== +===== Systemspezifische Kommandos (P 0) ===== 
-==== System Specific Commands (P 0) for the D2 Implementation ====+==== Systemspezifische Kommandos (P 0) für die D2 Implementation ====
  
-^  Command  ^  Value1  ^  Value2  ^  Meaning  ^  Errorcodes  ^ +^  Kommando  ^  Wert1  ^  Wert2  ^  Bedeutung  ^  Fehlerkodes  ^ 
-|  0  |  0  |  0  | show software version: \\ OOBD <FW-ID> <Rev> <Hardware> <Model> [Build date] \\ (e.g.: OOBD D2 651 Lux-Wolf CAN-Invader Thu, 15 Aug 2013 01:15:25 +0200)  |   | +|  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  | show serial number: \\ xx:xx:xx:xx:xx:xx (=BTM222 MAC-Address)  |   | +|  0  |  1  |  0  | zeige Seriennummer an: \\ xx:xx:xx:xx:xx:xx (=BTM222 MAC-Address)  |   | 
-|  0  |  2  |  0  | show power supply voltage of OBD-II connector    | +|  0  |  2  |  0  | zeige Spannungswert der Versorgung des OBD-II Steckers an    | 
-|  0  |  3  |  0  | show CPU info  |   | +|  0  |  3  |  0  | zeige CPU info  |   | 
-|  0  |  4  |  0..max show memory information of address x  |   | +|  0  |  4  |  0..max zeige Speicherinformation von Adresse an    | 
-|  0  |  5  |  0  | show ROM table location    | +|  0  |  5  |  0  | zeige ROM Tabellenort    | 
-|  0  |  6  |  0  | show free heap memory  |   | +|  0  |  6  |  0  | zeige freien dynamischen Speicher an |   | 
-|  0  |  7  |  0  | check CRC-32 of application    | +|  0  |  7  |  0  | überprüfe CRC-32 der Applikation    | 
-|  0  |  8  |  0  | show OOBD-Cup device name    | +|  0  |  8  |  0  | zeige OOBD-Cup Gerätenamen    | 
-|  0  |  9  |  0  | show UART speed    |+|  0  |  9  |  0  | zeige UART Geschwindigkeit    |
 |  99  |  0  |  0  | Hardware - Reset  |   | |  99  |  0  |  0  | Hardware - Reset  |   |
  
  
-===== Serial-In Specific Commands (P 2) ===== +===== Serielle Eingabe Spezifische Kommandos (P 2) ===== 
-Nothing implemented yet+Noch nichts implementiert
  
-===== Serial-In Generic Commands (P 3) ===== +===== Serielle Eingabe Generische Kommandos (P 3) ===== 
-Nothing implemented yet+Noch nichts implementiert
  
-===== Serial-Out Specific Commands (P 4) ===== +===== Serielle Ausgabe Spezifische Kommandos (P 4) ===== 
-Nothing implemented yet+Noch nichts implementiert
  
-===== Serial-Out Generic Commands (P 5) ===== +===== Serielle Ausgabe Generische Kommandos (P 5) ===== 
-Nothing implemented yet+Noch nichts implementiert
  
-===== Protocol Specific Commands (P 6) ===== +===== Protokollspezifische Kommandos (P 6) ===== 
-==== Protocol Specific Commands (P 6) for the CAN UDS Protocol ====+==== Protokollspezifische Kommandos (P 6) für das CAN UDS Protokoll ====
  
-^  Command  ^  Value1  ^  Value2  ^  Meaning  ^  Errorcodes  ^ +^  Kommando  ^  Wert1  ^  Wert2  ^  Bedeutung  ^  Fehlerkodes  ^ 
-|  1  |  0..max  |  0  | set response timeout in 10ms units    | +|  1  |  0..max  |  0  | setze den Anwortzeittimout in 10ms Vielfachen    | 
-|  5  |  $xxx  |  0  | set ECU Request-ID (RECVID)  |   | +|  5  |  $xxx  |  0  | setze ECU Anforderungs-ID (RECVID)  |   | 
-|  6  |  $xxx  |  0  | start Tester present on CAN-ID $xxx with actual interval and mask | 10 (Out of Mem)  | +|  6  |  $xxx  |  0  | starte Testerpresent auf CAN-ID $xxx mit aktuellem Intervall und maskiere | 10 (kein Speicher nehr)  | 
-|  7  |  $xxx  |  0  | stop Tester present on CAN-ID  |   | +|  7  |  $xxx  |  0  | stoppe Testerpresent auf CAN-ID  |   | 
-|  8  |  0..max  |  0  | set Tester present interval in 10ms units (Default 250) |   | +|  8  |  0..max  |  0  | setze Testerpresent Intervall in 10ms Vielfachen (Default 250) |   | 
-|  9  |  $xxx  |  0  | set ECU Response-ID (SENDID) (Default 0, makes SENDID= RECVID %%|%% 0x08)  |   | +|  9  |  $xxx  |  0  | setze ECU Antwort-ID (SENDID) (Default 0, setzt SENDID= RECVID %%|%% 0x08)  |   | 
-|  10  |  $xxx  |  0  | set Tester Present mask 02 xx (Default 0x80)  |   |+|  10  |  $xxx  |  0  | setze Testerpresent Maske 02 xx (Default 0x80)  |   |
  
-==== Protocol Specific Commands (P 6) for the CAN Raw Protocol ====+==== Protokollspezifische Kommandos (P 6) für das CAN Raw Protokoll ====
  
-No dedicated p- commands for this modeas the function is mainly driven by the sent data contentFor more details about the CAN Raw Mode, please refer to the [[rfc_canraw-mode|RFC CAN Raw Mode]]+Keine speziellen p- Kommandos für diesen Modusweil die Funktion hauptsächlich von dem gesendeten Dateninhalt bestimmt wirdWeiterführende Informationen zum [[rfc_canraw-mode|RFC CAN Raw Mode]]
  
  
  
-==== Protocol Specific Commands (P 6) for the CAN RTD Protocol ==== +==== Protokollspezifische Kommandos (P 6) für das CAN RTD Protokoll ==== 
-For more details about the CAN RTD Mode, please refer to the [[rfc_rtd-real-time-data-protocol-for-the-oobd-firmware|RFC CAN RTD Mode]]+Weiterführende Informationen zum [[rfc_rtd-real-time-data-protocol-for-the-oobd-firmware|RFC CAN RTD Mode]]
  
-^  Command  ^  Value1  ^  Value2  ^  Meaning  ^  Errorcodes  ^ +^  Kommando  ^  Wert1  ^  Wert2  ^  Bedeutung  ^  Fehlerkodes  ^ 
-|  1  |         clear the internal data buffer listreleases all used memory buffers    |+|  1  |         löscht die interne Datenspeicherlistegibt all den genutzen Speicher wieder frei    |
  
  
-===== Protocol Generic Commands (P 7) ===== +===== Protokollgenerische Kommandos (P 7) ===== 
-^  Command  ^  Value1  ^  Value2  ^  Meaning  ^  Errorcodes  ^ +^  Kommando  ^  Wert1  ^  Wert2  ^  Bedeutung  ^  Fehlerkodes  ^ 
-|  0  |  0  |  0  | show info of used protocol    | +|  0  |  0  |  0  | zeige Informationen über das genutzte Protokoll    | 
-|  1  |  0  |  0  | deactivate Listen mode    | +|  1  |  0  |  0  | deaktiviere Empfangsmodus    | 
-|  1  |  1  |  0  | activate Listen mode    |+|  1  |  1  |  0  | aktiviere Empfangsmodus    |
  
  
-===== Bus Specific Commands (P 8) ===== +===== Busspezifische Kommandos (P 8) ===== 
-==== Bus Specific Commands (P 8) for the CAN Bus, used in D2 Design ====+==== Busspezifische Kommandos (P 8) für den CAN Bus, welcher im D2 Design genutzt wird ====
  
  
-^  Command  ^  Value1  ^  Value2  ^  Meaning  ^  Errorcodes  | +^  Kommando  ^  Wert1  ^  Wert2  ^  Bedeutung  ^  Fehlerkodes  | 
-|  2  |  0  |  0  |CAN transceiverSilent mode (CAN deactive) |  | +|  2  |  0  |  0  |CAN TransceiverStumm Modus (CAN deaktiv) |  | 
-|  2  |  1  |  0  |CAN transceiver: Loop back (internal loop) |  | +|  2  |  1  |  0  |CAN Transceiver: Loop back (Interne Schleife) |  | 
-|  2  |  2  |  0  |CAN transceiver: Loop back combined with silent mode |  | +|  2  |  2  |  0  |CAN Transceiver: Loop back kombiniert mit Stumm Modus |  | 
-|  2  |  3  |  0  |CAN transceiver: Normal mode (CAN active) |  | +|  2  |  3  |  0  |CAN Transceiver: Normal Modus (CAN aktiv) |  | 
-|  3  |  0 or 1  |  0  |Standard-CAN init (initialize CAN controller with 125kbit/s, 11bit) |  | +|  3  |  0 or 1  |  0  |Standard-CAN Initialisierung (initialisiere CAN Kontroller mit 125kbit/s, 11bit) |  | 
-|  3  |  2  |  0  |Standard-CAN init (initialize CAN controller with 250kbit/s, 11bit) |  | +|  3  |  2  |  0  |Standard-CAN Initialisierung (initialisiere CAN Kontroller mit 250kbit/s, 11bit) |  | 
-|  3  |  3  |  0  |Standard-CAN init (initialize CAN controller with 500kbit/s, 11bit) |  | +|  3  |  3  |  0  |Standard-CAN Initialisierung (initialisiere CAN Kontroller mit 500kbit/s, 11bit) |  | 
-|  3  |  4  |  0  |Standard-CAN init (initialize CAN controller with 1000kbit/s, 11bit) |  | +|  3  |  4  |  0  |Standard-CAN Initialisierung (initialisiere CAN Kontroller mit1000kbit/s, 11bit) |  | 
-|  3  |  5  |  0  |Extended-CAN init (initialize CAN controller with 125kbit/s, 29bit) |  | +|  3  |  5  |  0  |Extended-CAN Initialisierung (initialisiere CAN Kontroller mit 125kbit/s, 29bit) |  | 
-|  3  |  6  |  0  |Extended-CAN init (initialize CAN controller with 250kbit/s, 29bit) |  | +|  3  |  6  |  0  |Extended-CAN Initialisierung (initialisiere CAN Kontroller mit 250kbit/s, 29bit) |  | 
-|  3  |  7  |  0  |Extended-CAN init (initialize CAN controller with 500kbit/s, 29bit) |  | +|  3  |  7  |  0  |Extended-CAN Initialisierung (initialisiere CAN Kontroller mit 500kbit/s, 29bit) |  | 
-|  3  |  8  |  0  |Extended-CAN init (initialize CAN controller with 1000kbit/s, 29bit) |  | +|  3  |  8  |  0  |Extended-CAN Initialisierung (initialisiere CAN Kontroller mit 1000kbit/s, 29bit) |  | 
-|  4  |  0  |  0  |HS-CAN (Relais switch OFF) |  | +|  4  |  0  |  0  |HS-CAN (Relais schaltet AUS) |  | 
-|  4  |  1  |  0  |MS-CAN (Relais switch ON) |  | +|  4  |  1  |  0  |MS-CAN (Relais schaltet EIN) |  | 
-|  10  |   <Filter-No> |  $<CAN-ID> |set Filter CAN-ID (11bit CAN-ID 0x0000-0x07FF) where Filter-No is 1-20, i.e. p 8 10 1 $720 |  | +|  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-No> |  $<Mask-ID> |set Filter Mask-ID (11bit Mask-ID 0x0000-0x07FF) where Filter-No is 1-20 and Filter Mask depends on Filter CAN-ID (0=don't care 1=match), i.e. p 8 11 1 $7F0 (here: $720 - $72F) |  | +|  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=Übereinstimmungabhängtz.B. p 8 11 1 $7F0 (hier: $720 - $72F) |  | 
-|  12  |   <Filter-No> |  $<CAN-ID> |set Filter CAN-ID (29bit CAN-ID 0x00000000-0x1FFFFFFF) where Filter-No is 1-10, i.e. p 8 12 1 $18F30557 |  | +|  12  |   <Filter-Nr> |  $<CAN-ID> |setze Filter CAN-ID (29bit CAN-ID 0x00000000-0x1FFFFFFF) wobei Filter-Nr 1-10 istz.B. p 8 12 1 $18F30557 |  | 
-|  13  |   <Filter-No> |  $<Mask-ID> |set Filter Mask-ID (29bit Mask-ID 0x00000000-0x1FFFFFFF) where Filter-No is 1-10 and Filter Mask depends on Filter CAN-ID (0=don't care 1=match), i.e. p 8 11 1 $1FFFFFF0 (here: $18F30550 - $18F3055F) |  | +|  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=Übereinstimmungabhängtz.B. p 8 11 1 $1FFFFFF0 (hier: $18F30550 - $18F3055F) |  | 
-|  14  |  0  |  0  |set all 11bit CAN filter to CAN-ID $0000 and Mask-ID $07FF (= disable any CAN traffic to application) |  |+|  14  |  0  |  0  |setze alle 11bit CAN Filter auf CAN-ID $0000 und Mask-ID $07FF (= deaktiviere jeden CAN Datenverkehr zur Applikation) |  |
  
  
 \\ \\
  
-===== Bus Generic Commands (P 9) ===== +===== Busgenerische Kommandos (P 9) ===== 
-==== Bus Generic Commands (P 9) for the CAN Bus ====+==== Busgenerische Kommandos (P 9) für den CAN Bus ====
  
-^  Command  ^  Value1  ^  Value2  ^  Meaning  ^  Errorcodes  ^ +^  Kommando  ^  Wert1  ^  Wert2  ^  Bedeutung  ^  Fehlerkodes  ^ 
-|  0  |  0  |  0  | show info which interface/bus is active (i.e. CAN-Bus)  |   | +|  0  |  0  |  0  | Zeigt eine Info welches/r  Gerät/Bus aktiv ist (z.B. CAN-Bus)  |   | 
-|  0  |  3  |  0  | show info of CAN transceiver operating mode    | +|  0  |  3  |  0  | Zeigt eine Info des CAN Transceiver Arbeitsmodus    | 
-|  0  |  4  |  0  | ??    | +|  0  |  4  |  0  | Zeigt die CAN-Bus Config (i.e. 11bit/500kBaud)    | 
-|  0  |  5  |  1  | read different CAN error counters    | +|  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  | delete all software internal CAN error counters    | +|  0  |  5  |  2  | lösche alle softwareinternen CAN Fehlerzähler    | 
-|  0  |  10  |  0  | show all 11bit CAN-ID filtereach line with two 11bit CAN-filters like: \\ <CAN-ID> <Mask-ID> <CAN-ID> <Mask-ID>  |   | +|  0  |  10  |  0  | zeige alle 11bit CAN-ID Filterjede Zeile mit zwei 11bit CAN-Filtern wie: \\ <CAN-ID> <Mask-ID> <CAN-ID> <Mask-ID>  |   | 
-|  0  |  11  |  0  | show all 29bit CAN-ID filtereach line with one 29bit CAN-filter like: \\ <CAN-ID> <Mask-ID>  |   |+|  0  |  11  |  0  | zeige alle 29bit CAN-ID Filterjede Zeile mit zwei 29bit CAN-Filtern wie: \\ <CAN-ID> <Mask-ID>  |   |
  
de/doc/hw_commands.1411292912.txt.gz · Last modified: 2014/09/21 11:48 by wsauer