OOBD Team | S. Koehler |
Request for Comments:6 | |
Obsoletes: - | |
Category: Standard | March 2014 |
This memo provides information about how the OOBD firmware command syntax is been set up. Distribution of this memo is unlimited.
Copyright (C) OOBD Team (2014). All Rights Reserved.
Under the assumption, that it will be mostly other software which talks to the interface, the command structure was made simple, but flexible.
To archive this, the interface knows only two different kind of inputs, data or parameters, the so called P- Commands
where the values are defined as (in EBNF- Syntax)
data = hex , { hex }; digit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" ; hex = "A" | "B" | "C" | "D" | "E" | "F" |"a" | "b" | "c" | "d" | "e" | "f" | digit ;
input:
p functionblock , command , value , {value} <CR>
where the definion is as follows
p = "p" | "P" ; functionblock = number ; command = number ; value = number ; number = digit {digit } | "$" , hex , { hex } ;
input:
data <CR>
if the p-command or the data input were successfully procceded, the firmware answers with optional additional output and always with a trailing line containing a “.”, which signals the successful execution of the command.
someoutput .
In case of an error, the firmware answers with a “:error:”, the functional block id, an error number and optional more error codes and Text
:error: 8 3 out of mem
All other outputs from the firmware, which are not an answer on a p- or data command, have to be started with a leading “#”
#some firmware message
Sending 11 bytes of data
input:
112233445566778899AABB
if the number of input chars is not even, the last char is handled as MSB of the last byte, so
112233445566778899AAB
is send as
112233445566778899AAB0
Set the parameter 127 to 64:
p 127 64
the same, but with hexadecimal notation:
p $7F $40
Sending data
locks the input until the receive tasks times out
This RFC has no security issues.
Steffen Koehler
Phone: +49 172 410 35 98
EMail:steffen@koehlers.de
Copyright (C) OOBD Team (2014). All Rights Reserved.
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the OOBD Team organizations, except as needed for the purpose of developing standards in which case the procedures for copyrights defined in the Standards process must be followed, or as required to translate it into languages other than English.
The limited permissions granted above are perpetual and will not be revoked by the OOBD Team or its successors or assigns.
This document and the information contained herein is provided on an “AS IS” basis and THE OOBD TEAM DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.“ Relation to other RFCs
The OOBD-RFC announcements are distributed via the oobd-commit-messages@googlegroups.com mailing list.
To join (or quit) the list goto https://groups.google.com/forum/?hl=de&fromgroups=#!forum/oobd-commit-messages