no way to compare when less than two revisions

Differences

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


Previous revision
Last revision
web:features [2017/07/26 20:36] admin
Line 1: Line 1:
 +====== Features ======
 +
 +
 +The OOBD tool set contains a wide range of features and functionality. Some of it is part of the main applications, some others are done with additional software. All these functions are in permanent development, so some of them are still in beta state.
 +
 +
 +===== Web based User Interface =====
 +
 +
 +With the upcoming 1.0 release OOBD is controlled through the web browser. This gives nearly unlimited flexibly in the look & feel of the user interface
 +
 +
 +You can create your own theme and choose between.
 +
 +
 +The default theme already includes the standard functions, so you can write simple scripts without the need of writing any HTML colde
 +
 +
 +{{  :web:webui_defaulttheme.png?400  }}
 +
 +
 +By including other popular libraries like e.g. jQuery, you can make simple responsive UIs like this
 +
 +
 +{{  :web:webui_dtcs.png?400  }}
 +
 +
 +or use pretty graphical elements like gauges and meters
 +
 +
 +{{  :web:jqwidgets.png?400  }}
 +
 +
 +Or you can create your own custom style like this 3D three.js sample
 +
 +
 +{{  :web:3d_fiesta.png?400  }}
 +
 +
 +===== Remote Connect =====
 +
 +
 +{{:doc:kadaver.png?200  }}Just with a Google Chrome Browser + the [[:doc:tools_kadaver|OOBD Chrome Add-on]] or the Kadaver Android App you can connect to a dongle  everywhere in the world via internet and do the diagnostics comfortable from your home desk.
 +
 +
 +===== Several Platforms =====
 +
 +
 +^  Java-ME ((not maintained anymore, so only old, reduced command set available)) </sup>  ^  Android  ^  Windows (and Linux & Mac((No installation pack available yet, needs to be compiled manually out of the repository)) ) |
 +|  {{  :pics:oobdme-window.png?150  }}  |{{  :pics:diagnose.png?150  }} |{{  :swing_screenshot.png?437  }} |
 +
 +
 +===== UDS compatible Telegram Support =====
 +
 +
 +In opposite to many other dongles, OOBD support the full module address range and the full 4095 Byte data length. All the protocol handshake is done by the dongle itself, only the final answer of the communication with the module is reported back to the application.
 +
 +
 +===== No Real Time Requirements =====
 +
 +
 +The dongle does all the real time data handling by itself. The finished result can be then picked also by e.g. slow mobile devices without the hassle of strong real time requirements.
 +
 +
 +===== Full Programmable With Loadable Lua Scripts =====
 +
 +
 +Reading the VIN number:
 +
 +
 +<code lua>function vin(oldvalue,id)
 + echoWrite("0902\r\n")
 + udsLen=receive()
 + if udsLen>0 then
 + if udsBuffer[1]==73 then
 + local pos=4
 + local res=""
 + while pos <= udsLen and pos < 36 do
 + if udsBuffer[pos]>31 then
 + res=res..string.char(udsBuffer[pos])
 + end
 + pos= pos +1
 + end
 + return res
 + else
 + return "Error"
 + end
 + else
 + return "NO DATA"
 + end
 +end
 +</code>
 +
 +
 +===== Simple Syntax =====
 +
 +
 +For easy integration into other projects the [[:doc:rfc_firmware_syntax|dongle command syntax]] is powerful, but simple and easy to parse
 +
 +
 +===== Graphical Programming Interface =====
 +
 +
 +{{:doc:qs_screenshot.png?200  }}
 +
 +
 +Simple Diagnostic programs and command sequences can be generated just in minutes with [[:doc:tools_quickscript|OOBD QuickScript]] and it's graphical programming Interface, fully running in a Web Browser
 +
 +
 +===== openXC Data Source =====
 +
 +
 +{{:doc:openxc_enabler.png?200  }}{{:doc:openxc_oobd.png?200  }}OOBD can also act as Data Source for [[http://openxcplatform.com/|openXC]] and so for any application which uses the openXC interface.
 +
 +
 +===== PGP Script Protection =====
 +
 +
 +{{:doc:pgp_setup2.png?200  }}If your scripts do contain your intellectual property, you don't want your scripts been used by anybody who is not authorized.
 +
 +
 +OOBD supports this with optional strong PGP encryption, where through its unique [[https://docs.google.com/presentation/d/1H8WrP4oPp-DYmitDWCdvUSYlNjoAuoAfeTDamM55VJI|two-level group encryption]] you can give fine grained control without the pain of encrypt for each user separately.
 +
 +
 +===== ODX Translator =====
 +
 +
 +{{:doc:opendiagx-screenshot.png?200  }}Some ODX dialects can be automatically translated into lua scripts, ready to use - helpful when transforming module specifications. If your input format is different, just adapt the xslt transformation
 +
 +
 +<code xml>
 +<?xml version="1.0" encoding="ISO-8859-1"?>
 +<xsl:stylesheet version="1.0"
 +xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 + 
 +<xsl:template name="trim4">
 +<xsl:param name="string" select="'left'" />
 +<xsl:value-of select="substring(concat('0000',normalize-space($string)), (string-length(normalize-space($string))+1))"/>
 +</xsl:template>
 + 
 + 
 +<xsl:template match="/">
 +  <xsl:apply-templates/>
 + 
 +dofile("../../tools/lib_lua/serial_dxm.lua")
 +dofile("../../tools/lib_lua/lua_utils.lua")
 +dofile("../../tools/lib_lua/luabit/bit.lua")
 +dofile("../lib_protocol/standard-uds.lua")
 +dofile("../lib_protocol/secaccess.lua")
 +dofile("../lib_protocol/module-uds.lua")
 + 
 +</xsl:template>
 +<xsl:template match="oobdobx">
 +moduleName = '<xsl:value-of select="./Name"/>'
 +shortName = '<xsl:value-of select="./ShortName"/>'
 +</code>
 +
 +
 +===== Monitoring Real Time Data =====
 +
 +
 +{{http://kayak.2codeornot2code.org/images/overview.png?direct&  }}OOBD offers several possibilities to monitor the CAN real time data. In the RTD mode the received data is stored in the dongle to be picked up later, while in the CAN raw mode the data is directly dumped on the serial line. This, together with the socketCANd emulator, allows to view the data in real time e.g. in [[http://kayak.2codeornot2code.org/|Kayak]]
 +
 +
 +===== Bus Quality =====
 +
 +
 +During bus transfer the dongle also monitor the occurrence of error frames, so it can be used also to measure the error rate, means the bus quality.
 +
 +
 +===== CAN Injection =====
 +
 +
 +If needed, the dongle can send long can data sequences to inject simulation data onto the CAN bus.
 +
 +
 +===== Field Programmable =====
 +
 +
 +{{:doc:oobdflash.png?400  }}Through the robust flash loader design, the firmware can be updated in the field directly via bluetooth with a simple java app without the need of any special cables or device dismantling.
 +
 +
 +===== Python Library for automated task =====
 +
 +
 +To use the dongle also for automatic testing, a python library exist to send command sequences from a dos shell or within a batch file
 +
 +
 +\\