User Tools

Site Tools


doc:tools

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
doc:tools [2011/08/02 09:41] admindoc:tools [2014/03/02 08:56] (current) – removed admin
Line 1: Line 1:
-====== The OOBD Utilities ====== 
  
-While preparing the OOBD scripts, there are several data which needs to be transformed to be usable inside OOBD. To make this easier, there are a few tools made for these purpose. This page explains which they are, for what they are good for and how to use them. 
- 
- 
-===== Cortex_CRC32 ===== 
-The firmware of our OOBD cup, the tiny OBD Bluetooth adaptor can be updated in the field via its Bluetooth interface. But as it is a little bit dangerous to flash a device over a wireless unsecure connection, we need to do some protection in case the connection breaks during flashing. 
- 
- 
-We did it that way that the bootloader is able to identify if the device contains valid firmware or not. If it is valid, the bootloader starts the firmware ready to run, but if it isn't, the bootloader jumps into the flash routine and waiting for correct firmware to arrive. 
- 
- 
-To archive this, the firmware is armended with a additional checksum. The tool cortex_crc32 calculates this sum and add this to the firmware binary, which then can be used for flashing. 
- 
- 
- 
- 
-===== OLP - The OOBD Lua Preprocessor ===== 
- 
-In opposite to most other Lua implementations OOBD does not use the ASCII source code directly, for performance reason it loads  precompiled Lua files instead. 
- 
-These precompiled files are generated by the luac compiler, which is part of the lua package. But this luac compiler has one big disadvantage, as it totally ignores include commands in the source files, and it's quite disappointing to always add all these different dependencies by hand to the build process. 
- 
-To automate this, olp was written. It just reads the initial source file, identifies the dofile() commands in it, reads also recursively these files and then finally writes the whole source tree as one single text to stdout, where it can be picked up by the luac compiler and compiled to a single binary, containing all depentencies. 
- 
- 
- 
-===== OpenDiagX - The ODX Transformer ===== 
-Thanks to the efforts of the  [[http://de.wikipedia.org/wiki/ODX|ODX]] standardization its possible to describe the command sets of an electric control module in a formal syntax. 
- 
- 
-But to use these information in OOBD or other tools, it's nessesary to transform these ODX syntax into a format which is understood by the tools. 
- 
-This is what OpenDiagX do. Honestly OpenDiagX is nothing more as a simple [[http://de.wikipedia.org/wiki/XSLT|XSLT]] transformer, but as the obx input format and output format needed for OOBD (and SKDS) are so different, the author decided to wrap some software around the translation process - which means that an XSLT specialist could maybe do the whole translation only in xslt - but the author can't.. ;-)  
doc/tools.1312270913.txt.gz · Last modified: 2011/08/02 09:41 by admin