de:doc:hw_commands
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revisionLast revisionBoth sides next revision | ||
de:doc:hw_commands [2014/04/20 16:50] – created wsauer | de:doc:hw_commands [2014/09/21 17:39] – wsauer | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== | + | ====== |
- | Under the assumtion, that it will be mostly other software which talks to the interface, the command structure was made simple, but flexible. | + | 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. |
- | 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]] |
+ | |||
+ | 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** means, that these functions are common for all implementation of this particular function block, means each implementation has to support this commands. But please note that e.g. a K-Line Bus will still have other generic commands as a CAN- Bus | + | * **Generisch** bedeutet, das diese Funktionen gleich sind für den bestimmten Funktionsblock, was bedeutet das jede Implentation diese Kommandos unterstützen muss. Aber bitte nimm zu Kenntnis, daß z.B. ein K-Line Bus andere generische Kommandos besitzt als ein CAN-Bus |
- | * **Implementation specific** means, that the support of these commands if depending of actual type or implementation of the function block. So is e.g. the CAN-ID | + | * |
+ | * **Implementationsspezifisch** bedeutet, dass die Unterstützung dieser Kommandos, abhängig von tatsächlichen Typ oder der Durchführung des Funktionsbausteins sind. So ist z.B. das Setzen der CAN-ID | ||
- | When sending any p- command to the firmware, the first number | + | 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: |
- | ^ | + | ^ |
- | | p 0 | | + | | p 0 | |
- | | p 1 | | + | | p 1 | |
- | | p 2 | | + | | p 2 | |
- | | p 3 | | + | | p 3 | |
- | | p 4 | | + | | p 4 | |
- | | p 5 | | + | | p 5 | |
- | | p 6 | | + | | p 6 | |
- | | p 7 | | + | | p 7 | |
- | | p 8 | | + | | p 8 | |
- | | p 9 | | + | | p 9 | |
- | max: implementation specific | + | max: Implementationsspezifisch |
- | ===== System Generic Commands | + | ===== Systemgenerische Kommandos |
- | ^ | + | ^ |
- | | 1 | 0 | 0 | enable protocol | + | | 1 | 0 | 0 | aktiviere Protokoll |
- | | 1 | 1 | 0 | enable protocol | + | | 1 | 1 | 0 | aktiviere Protokoll |
- | | 1 | 3 | 0 | enable protocol | + | | 1 | 3 | 0 | aktiviere Protokoll |
- | | 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 |
- | | 2 | 1 | 1 | enable green LED (= ON) | | | + | | 2 | 1 | 1 | aktiviere grüne |
- | | 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 | + | | 2 | 3 | 0 | deaktiviere Summer |
- | | 2 | 3 | 1..max | + | | 2 | 3 | 1..max |
- | | 2 | 10000 | 0 | disable | + | | 2 | 10000 | 0 | deaktiviere |
- | | 2 | 10000 | 1 | enable | + | | 2 | 10000 | 1 | aktiviere |
- | ===== System Specific Commands | + | ===== Systemspezifische Kommandos |
- | ==== System Specific Commands | + | ==== Systemspezifische Kommandos |
- | ^ | + | ^ |
- | | 0 | 0 | 0 | show software version: \\ OOBD < | + | | 0 | 0 | 0 | zeige Softwareversion an: \\ OOBD < |
- | | 0 | 1 | 0 | show serial number: \\ xx: | + | | 0 | 1 | 0 | zeige Seriennummer an: \\ xx: |
- | | 0 | 2 | 0 | show power supply voltage of OBD-II | + | | 0 | 2 | 0 | zeige Spannungswert der Versorgung des OBD-II |
- | | 0 | 3 | 0 | show CPU info | | | + | | 0 | 3 | 0 | zeige CPU info | | |
- | | 0 | 4 | 0..max | + | | 0 | 4 | 0..max |
- | | 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 | + | | 0 | 7 | 0 | überprüfe |
- | | 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 | + | ===== Serielle Eingabe |
- | Nothing implemented yet | + | Noch nichts implementiert |
+ | |||
+ | ===== Serielle Eingabe - Generische Kommandos (P 3) ===== | ||
+ | Noch nichts implementiert | ||
+ | |||
+ | ===== Serielle Ausgabe - Spezifische Kommandos (P 4) ===== | ||
+ | Noch nichts implementiert | ||
+ | |||
+ | ===== Serielle Ausgabe - Generische Kommandos (P 5) ===== | ||
+ | Noch nichts implementiert | ||
- | ===== Serial-In Generic Commands | + | ===== Protokollspezifische Kommandos |
- | Nothing implemented yet | + | ==== Protokollspezifische Kommandos (P 6) für das CAN UDS Protokoll ==== |
- | ===== Serial-Out Specific Commands | + | ^ Kommando |
- | Nothing implemented yet | + | | 1 | 0..max |
+ | | 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 | ||
+ | | 9 | $xxx | 0 | setze ECU Antwort-ID (SENDID) (Default 0, setzt SENDID= RECVID %%|%% 0x08) | | | ||
+ | | 10 | $xxx | 0 | setze Testerpresent Maske 02 xx (Default 0x80) | | | ||
- | ===== Serial-Out Generic Commands | + | ==== Protokollspezifische Kommandos |
- | Nothing implemented yet | + | |
- | ===== Protocol Specific Commands (P 6) ===== | + | Keine speziellen p- Kommandos für diesen Modus, weil die Funktion hauptsächlich von dem gesendeten Dateninhalt bestimmt wird. Weiterführende Informationen zum [[rfc_canraw-mode|RFC |
- | ==== Protocol Specific Commands (P 6) for the CAN UDS Protocol ==== | + | |
- | ^ Command | ||
- | | 1 | 0..max | ||
- | | 5 | $xxx | 0 | set ECU Request-ID (RECVID) | ||
- | | 6 | $xxx | 0 | activate Tester present on CAN-ID $xxx | | | ||
- | | 7 | $xxx | 0 | deactivate Tester present on CAN-ID | ||
- | | 8 | 0..max | ||
- | | 9 | $xxx | 0 | set ECU Response-ID (SENDID) | ||
- | ==== Protocol Specific Commands (P 6) for the CAN Raw Protocol ==== | ||
- | No dedicated p- commands for this mode, as the function is mainly driven by the sent data content. For more details about the CAN Raw Mode, please refer to the [[rfc_canraw-mode|RFC CAN Raw Mode]] | + | ==== Protokollspezifische Kommandos (P 6) für das CAN RTD Protokoll ==== |
+ | Weiterführende Informationen zum [[rfc_rtd-real-time-data-protocol-for-the-oobd-firmware|RFC CAN RTD Mode]] | ||
+ | ^ Kommando | ||
+ | | 1 | | ||
- | ==== Protocol Specific Commands | + | ===== Protokollgenerische Kommandos |
- | 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]] | + | ^ Kommando |
+ | | 0 | 0 | 0 | zeige Informationen über das genutzte Protokoll | ||
+ | | 1 | 0 | 0 | deaktiviere Empfangsmodus | ||
+ | | 1 | 1 | 0 | aktiviere Empfangsmodus | ||
- | ^ Command | ||
- | | 1 | | ||
+ | ===== Busspezifische Kommandos (P 8) ===== | ||
+ | ==== Busspezifische Kommandos (P 8) für den CAN Bus, welcher im D2 Design genutzt wird ==== | ||
- | ===== Protocol Generic Commands (P 7) ===== | ||
- | ^ Command | ||
- | | 0 | 0 | 0 | show info of used protocol | ||
- | | 1 | 0 | 0 | deactivate Listen mode | | | ||
- | | 1 | 1 | 0 | activate Listen mode | | | ||
+ | ^ Kommando | ||
+ | | 2 | 0 | 0 |CAN Transceiver: | ||
+ | | 2 | 1 | 0 |CAN Transceiver: | ||
+ | | 2 | 2 | 0 |CAN Transceiver: | ||
+ | | 2 | 3 | 0 |CAN Transceiver: | ||
+ | | 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/ | ||
+ | | 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 | < | ||
+ | | 11 | < | ||
+ | | 12 | < | ||
+ | | 13 | < | ||
+ | | 14 | 0 | 0 |setze alle 11bit CAN Filter auf CAN-ID $0000 und Mask-ID $07FF (= deaktiviere jeden CAN Datenverkehr zur Applikation) | | | ||
- | ===== Bus Specific Commands (P 8) ===== | ||
- | ==== Bus Specific Commands (P 8) for the CAN Bus, used in D2 Design ==== | ||
- | ^ Command | + | \\ |
- | | 2 | 0 | 0 | CAN transceiver: | + | |
- | | 2 | 1 | 0 | CAN transceiver: | + | |
- | | 2 | 2 | 0 | CAN transceiver: | + | |
- | | 2 | 3 | 0 | CAN transceiver: | + | |
- | | 3 | 1 | 0 | Standard-CAN init (initialize CAN controller with 125kbit/s, 11bit) | + | |
- | | 3 | 2 | 0 | Standard-CAN init (initialize CAN controller with 250kbit/s, 11bit) | + | |
- | | 3 | 3 | 0 | Standard-CAN init (initialize CAN controller with 500kbit/s, 11bit) | + | |
- | | 3 | 4 | 0 | Standard-CAN init (initialize CAN controller with 1000kbit/s, 11bit) | + | |
- | | 3 | 5 | 0 | Extended-CAN init (initialize CAN controller with 125kbit/s, 29bit) | + | |
- | | 3 | 6 | 0 | Extended-CAN init (initialize CAN controller with 250kbit/s, 29bit) | + | |
- | | 3 | 7 | 0 | Extended-CAN init (initialize CAN controller with 500kbit/s, 29bit) | + | |
- | | 3 | 8 | 0 | Extended-CAN init (initialize CAN controller with 1000kbit/s, 29bit) | + | |
- | | 4 | 0 | 0 | HS-CAN (Relais switch - OFF) | | | + | |
- | | 4 | 1 | 0 | MS-CAN (Relais switch - ON) | | | + | |
- | | 10 | < | + | |
- | | 11 | < | + | |
- | | 12 | < | + | |
- | | 13 | < | + | |
- | | 14 | 0 | 0 | set all 11bit CAN filter to CAN-ID $0000 and Mask-ID $07FF (= disable any CAN traffic to application) | + | |
- | ===== Bus Generic Commands | + | ===== Busgenerische Kommandos |
- | ==== Bus Generic Commands | + | ==== Busgenerische Kommandos |
- | ^ | + | ^ |
- | | 0 | 0 | 0 | show info which interface/bus is active | + | | 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 | ?? | | | ||
- | | 0 | 5 | 1 | read different | + | | 0 | 5 | 1 | lese verschiedene |
- | | 0 | 5 | 2 | delete all software internal | + | | 0 | 5 | 2 | lösche alle softwareinternen |
- | | 0 | 10 | 0 | show all 11bit CAN-ID | + | | 0 | 10 | 0 | zeige alle 11bit CAN-ID |
- | | 0 | 11 | 0 | show all 29bit CAN-ID | + | | 0 | 11 | 0 | zeige alle 29bit CAN-ID |
de/doc/hw_commands.txt · Last modified: 2015/07/09 16:33 by nexulm