Ediabas User's Guide
Ediabas User's Guide
· Error Reference
· ECU Simulator
1. Revision history
2. Introduction
3. General
5. Help programs
1. Revision history
Version 3.0 Created overview and User Manual/Installation Guide
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 2 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 3 of 117
2. Introduction
More:
2.4 Trademarks
EDIABAS User's Guide > User manual and installation guide > 2. Introduction
This manual describes how to operate the EDIABAS (Electronic Diagnostic Basic System).
EDIABAS User's Guide > User manual and installation guide > 2. Introduction
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 4 of 117
.}
[1] Reference to a document in References.
EDIABAS User's Guide > User manual and installation guide > 2. Introduction
An explanation of abbreviations used in this and all other EDIABAS documentation can be found
in chapter "GLOSSARY".
EDIABAS User's Guide > User manual and installation guide > 2. Introduction
2.4 Trademarks
Microsoft, MS, MS-DOS, Windows, Windows Vista, WIN32, WIN64 and Pocket PC are registered
trademarks of the Microsoft Corporation.
SCO, SCO UNIX and OpenServer are registered trademarks of Santa Cruz Operation, Inc.
3. General
More:
3.5. Structure
3.8. Sequences
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 5 of 117
3.9. Availability
EDIABAS User's Guide > User manual and installation guide > 3. General
ECUs (Electronic Control Units), are developed by various participating members including
component suppliers of the Automobile Industry, vehicle manufacturers themselves and
contractors. The ECUs tested and produced by suppliers are installed in the vehicle by the
automobile manufacturer, if applicable coded (programmed) specifically for the vehicle via their
diagnostic interface and tested for proper functioning in the vehicle. Whenever an error occurs, the
cause of error is determined and remedied by means of "Electronic Diagnostics" accompanied by a
computer-based testing system. After the vehicle has been delivered, errors occurring within the
scope of "Inspection and Service" are corrected in the shop. Once again, "Electronic Diagnostics"
are applied. When an ECU is swapped in the shop, the defective unit is repaired by the
manufacturer, and its proper functioning is tested, by means of "Electronic Diagnostics". The newly
installed ECU may need to be re-coded again on the premises according to vehicle specifications.
In accordance with this life cycle, coding and testing ECUs is an often recurring and prescribed job
duty for:
EDIABAS User's Guide > User manual and installation guide > 3. General
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 6 of 117
If a large number of ECUs which, in part, have been developed and supplied by several
manufacturers are employed in several model series of vehicles, an extremely high percentage of
ECU fluctuations results, since the on-going advancements of the subsystems occur in the life span
of a vehicle series. In comparison, engines can be considered which are employed in several
different designs in the same body of a vehicle series.
Due to the discontinuation and new use of ECUs as well as technical changes to ECUs, the
modifications required in coding and testing systems (modification, commissioning, test) increase
over-proportionally. The expenditure of documentation and the risk of errors increase.
Due to intense »dissection« of tasks in large companies and sequential procedures, the steps
mentioned above lead to multiple processing, extending from the development of an ECU via
production to Customer Service:
Coding and testing programs are individually created in diverse areas: At the ECU developer; in the
test department; in pre-production; in customer service; ECU repair center. This means, based on
the documentation pertaining to an ECU, the steps involving development (or advancement) and
testing of programs are repeated more than once! The apparent differences in the job definitions
and objectives of the individual phases discourage the view for mutuality, namely each the same
component ECU.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 7 of 117
EDIABAS User's Guide > User manual and installation guide > 3. General
The identical parts of the system mentioned above can be used multiply by all application programs
following a non-recurring development phase. This occurs in sense of a type »operating system«
developed for ECU communication, for which a matching »communication driver« is provided for
each ECU.
Hence, similar to how a conventional operating system conceals information behind special
functions (e.g., about precise access to hard disks/to the screen), this »operating system« also
conceals the exact information about access to an ECU.
This »operating system« is not fixed to the application programs or even combined with one
another in data regions. Instead, it only provides »services«. These services can be issued from the
application program and are subsequently processed (when desired) time independently of these.
The result of this »service« can then be processed by the application after it has been executed. The
application program (the Client) and the operating system (the Server) only exchange
messages and data with one another.
The Server translates, the raw data received from the ECU into the symbolic data requested by the
application program.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 8 of 117
In this process, the Server, itself, is not equipped with its own intelligence, but stores its knowledge
about the individual ECUs in easily (i.e., even at runtime) exchangeable data modules. These data
modules contain the complete (or only the required) knowledge about translation of the binary ECU
data into symbolic data.
Each Client (i.e. application program) is provided with a software interface that conceals the
operating system-dependent part for exchanging the messages under a uniform procedural
interface. Several application programs can send their jobs to the server in time-sharing mode; i.e.,
as soon as an application program frees the server, the next pending job can be processed.
EDIABAS User's Guide > User manual and installation guide > 3. General
All approaches for problem-solving mentioned above have been implemented in EDIABAS.
EDIABAS can therefore be regarded as an »operating system for communication with ECUs
in Client/Server architecture«. Since, however, the term »operating system« would be extremely
confusing in this relationship and, in this case, a common basis for other application programs
would be created, the term »Basic System« has been used by Softing. This "Basic System" in
"Electronic Diagnostics" is called:
EDIABAS User's Guide > User manual and installation guide > 3. General
3.5. Structure
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 9 of 117
Figure 3.5-1 illustrates the basic structure of the individual sub-components as well as the data and
communication paths.
The ECU-specific knowledge of EDIABAS is stored in the ECU description files (SGBDs). The
ECU description files are created "variant orientated"; i.e. exactly one variant-specific ECU
description file (SGBD) exists for each ECU variant. A superior, group ECU description file can
exist for all ECUs of a group (in general, these are ECUs with the same address). Which variant of
this group is connected to the diagnostics bus can be determined using the methods contained in
this file.
The ECU description files are loaded and interpreted by the EDIABAS runtime system when
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 10 of 117
instructed by an application program. The file name of the ECU description file (no extension) is
the name with which the application programs reference an ECU "variant" or ECU "group".
Bild 3.5-2: ECU description file and group ECU description file
The main constituent of EDIABAS is the "runtime system". This runtime system can be
subdivided into three essential parts:
Sequence Control determines the behavior of the entire system and contains the communication
interface to the application programs. It is responsible for the file and error management.
The ECU description file interpreter (SGBD Interpreter) converts the binary ECU data into
symbolic data. It interprets the data, files, methods and sequences contained in the ECU description
file, initializes the communication with the ECU and returns the self-determined results of the
sequential control for forwarding to application program.
The Interface Handler (IFH) is an exchangeable software module which, depending on the
hardware interface employed, can be integrated in various versions by the user. A data request to
the ECU is transposed by the Interface Handler into a job for the currently applied hardware
interface. The data returned from this interface are appropriately filtered from interface-dependent
parts and, in this way, can be evaluated independent of the interface hardware used. Even the errors
returned from the interface are standardized to the internal error messages. In addition, the Interface
Handler provides simulation of ECUs. Thus, EDIABAS-based application programs can also then
be tested when the applied ECUs do not exist.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 11 of 117
In order to simplify access to EDIABAS, a software interface is linked to each application program.
This interface controls access to EDIABAS via a pre-defined procedural interface. This so-called
»Application Programming Interface« (EDIABAS-API) handles the system-dependent
communication of the runtime system. The data received from the runtime system are managed
within the EDIABAS-API for the application program. In this way, the runtime system is freed
from managing this data, therefore allowing it to be structured considerably compacter.
EDIABAS User's Guide > User manual and installation guide > 3. General
EDIABAS User's Guide > User manual and installation guide > 3. General
Jobs are formulated in an own description language for ECUs called BEST (BEschreibungssprache
für STeuergeräte). This description language exists in two variations. The first variant is a low-
level, assembler-similar language called BEST/1. The second variant is the high-language version
BEST/2 with 'C'-like syntax.
In general, all ECU description files are written in BEST/2. In BEST/2, jobs are defined similar to
functions; i.e., a job header exists which lists all I/O parameters. Variables and fields can be defined
and used within a job. All necessary arithmetic operators are variable. An extensive library contains
functions for manipulating data and communicating with the ECU. The language, itself, contains
almost all control structures known by 'C'. The ECU description files defined in this way must be
converted into a format which can be read by the runtime system. This must be performed using a
compiler (BEST2/BEST2WIN) prior to use in EDIABAS. On one hand, this occurs because of
performance reasons and, on the other hand, so that syntax errors can be excluded during the
runtime.
The Source Text Debugger BestView is available to test the compiled BEST/2 description files.
By means of BestView, the sequence of a job can be exactly tracked: variable contents can be
monitored, displayed and modified.
EDIABAS User's Guide > User manual and installation guide > 3. General
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 12 of 117
3.8. Sequences
A job is issued in the application program by means of the API functions apiJob, apiJobData or
apiJobExt. These functions require at least two specifications: First, the ECU to be addressed (or
the ECU group) and, second, the job which is to be executed.
These two specifications are sent to the EDIABAS runtime system. The runtime system first
determines whether this data concerns an ECU "variant" or an ECU "group". If a group was
addressed, the job IDENTIFIKATION in the group description file is automatically processed. If a
valid ECU variant was determined from the job IDENTIFIKATION, the associated variant file is
automatically loaded with the assistance of the result VARIANTE as if the name had already been
transferred from the application program. The variant file processes the job requested by the
application program. A job may either appear directly in the variant file or in the base file. Base
files are ECU description files referenced from the variant file and which can be considered as a
part of the variant file. Afterwards, the results of this job are made available to the application
program.
Whenever a description file is re-addressed (i.e. after each change), first the job ENDE of the last
loaded ECU decryption file is called. This call is made only when the job ENDE exists in the file. It
enables the hardware to be de-initialized. Afterwards the job INITIALISIERUNG is called in the
new description file. This job must exist in each description file (obligatory) and can be used to
initialize the interface hardware. Only now is the specified job executed. When the same job is
called again, no standard job is executed anymore.
If an error occurs in one of the sub-components when processing a job, processing is immediately
aborted, and an error message is returned to the application program. In this case, any results are
deleted. In this situation, the job INITIALISIERUNG is automatically called again before re-
calling the same job.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 13 of 117
As a job is being processed, its commands are sequentially interpreted. Any communication
requests to the ECU are forwarded by the Interface Handler and processed. The results determined
are sent to the application program.
apiJob("DMEV3",
"READ_SPEED"...);
job ( name:
READ_SPEED;
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 14 of 117
result: SPEED;
type: integer
... ) {
char response[];
send_and_receive
(response,
tel_readspeed);
-> 59 04 02 03
<- 59 05 03 05
05
SPEED=response[3]*256
+
response[4];
}
apiResultInt
(&variable,
.........”SPEED”,
set);
printf("Speed: %
d",variable);
The application program can read the results delivered by EDIABAS by means of the function
apiResultXXX, whereby various formats are supported. In this process, data is converted whenever
possible. Thus, for example, the result speed (e.g. rpm) which was calculated as integer in the
description file can be requested in real format by the application program.
EDIABAS User's Guide > User manual and installation guide > 3. General
3.9. Availability
The EDIABAS runtime system and the EDIABAS application development environment have been
designed as easy-to-port systems. They are presently available for the following platforms:
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 15 of 117
• MS-WINDOWS 7 (WIN64/x64)
The development environment for ECU description files is only available under MS-WINDOWS.
4.7. Un-install
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration
A total of three delivery packages are currently available. The scope of function is explained in
detail in the following sections:
• RUNTIME SYSTEM
• APPLICATION DEVELOPMENT KIT
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 16 of 117
More:
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.1. Delivery packages
The delivery package RUNTIME SYSTEM available for all systems listed in section
"Availability". This package is the basis for all other EDIABAS delivery packages. RUNTIME
SYSTEM must always be installed.
The delivery package allows application programs to run diagnostic sequences via EDIABAS.
More:
4.1.1.2. Documentation
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.1. Delivery packages > 4.1.1. RUNTIME SYSTEM
Example: 07DE3473
BIN\API32.DLL Access to the EDIABAS runtime system (WIN32)
BIN\API64.DLL Access to the EDIABAS runtime system (WIN64)
BIN\API64.EXE WIN64/WIN32 API mapper
BIN\APINET32.DLL Access to the EDIABAS runtime system via .NET framework
(WIN32)
BIN\APIVB32.DLL Access to the EDIABAS runtime system for Visual Basic
(WIN32)
BIN\APIVBNET32.DLL Access to the EDIABAS runtime system for Visual Basic
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 17 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 18 of 117
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.1. Delivery packages > 4.1.1. RUNTIME SYSTEM
4.1.1.2. Documentation
USER MANUAL
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.1. Delivery packages
The delivery package APPLICATION DEVELOPMENT Kit is available for all systems listed in
section "Availability". This package allows application programs to be developed which use
EDIABAS.
More:
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 19 of 117
4.1.2.3. Documentation
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.1. Delivery packages > 4.1.2. APPLICATION DEVELOPMENT KIT
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.1. Delivery packages
The delivery package BEST DEVELOPMENT KIT is only available for MS-WINDOWS. This
package allows ECU description files to be developed.
The delivery package comprises, among other toolsBEST/2 Compiler, BEST/2 Debugger and
BEST development environment.
The following files are contained on the delivery diskette BEST DEVELOPMENT KIT:
More:
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 20 of 117
4.1.3.2. Documentation
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.1. Delivery packages > 4.1.3. BEST DEVELOPMENT KIT
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.1. Delivery packages > 4.1.3. BEST DEVELOPMENT KIT
4.1.3.2. Documentation
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 21 of 117
More:
4.2.1. MS-WINDOWS
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.2. System requirements
4.2.1. MS-WINDOWS
In order to use EDIABAS under MS-WINDOWS, the following requirements must be met: IBM
PC/AT or 100% compatible system with at least an Pentium processor.
For the remote or proxy function of the EDIABAS RUNTIME SYSTEM for WIN32 a network
installation with TCP/IP is required.
For access of .NET Applications to EDIABAS the corresponding EDIABAS RUNTIME SYSTEM
is required. Additionally the .NET Framework 1.x/2.0/3.5 must exist on the target system.
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration
More:
4.3.1. MS-WINDOWS
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.3. Installing for the first time
4.3.1. MS-WINDOWS
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration
More:
4.4.1. MS-WINDOWS
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.4. EDIABAS program paths
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 22 of 117
4.4.1. MS-WINDOWS
The EDIABAS subdirectory BIN is to be entered in the search path of the system.
SET OLDPATH=%PATH%
PATH=c:\ediabas\bin;%OLDPATH%
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration
The EDIABAS runtime behavior can be influenced via the EDIABAS configuration.
The EDIABAS configuration consists of information pairs which are listed in the area
[Configuration] of file EDIABAS.INI. In this process, each line here describes a configuration
element and its configuration setting:
Configurationelement = Configurationsetting
The configuration settings are read from file EDIABAS.INI when EDIABAS is first initialized.
The default setting (see Table section 4.5.1) is assumed when configuration settings are missing or
when file EDIABAS.INI does not exist.
Even ECU description files can modify configuration values during EDIABAS runtime. NOTE:
These values are only valid, however, during the job.
More:
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.5. EDIABAS configuration
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 23 of 117
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.5. EDIABAS configuration
All configuration elements are listed below along with setting options and default values.
Each configuration element contains a description whether and how a modification is to be made
(INI: via EDIABAS.INI, API: by application, BEST: by ECU description file).
All configuration elements in the following table are listed in the section CONFIGURATION.
2 + time
stamp
3 + process
ID **
4 API trace
5 + time
stamp
6 + runtime
7 + process
ID **
8 debug trace
BipDebugLevel Debug level in ECU 0 .. 32767 INI API 0
description files BEST
BipEcuFile File name of the currently String INI API -
loaded ECU description BEST
file (group or variant file):
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 24 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 25 of 117
1 (store)
TaskPriority Priority setting for 0 .. 10 INI API 0
EDIABAS (0 = optimal BEST
setting, 1 = lowest priority)
TraceBuffering Buffering of trace files 0 (OFF) .. 1 INI API 0
(WIN32) (ON) BEST
TraceHistory History of archived trace 0 .. 999 INI API 0
files (WIN32), 0 = BEST
compatibility mode
TracePath Path of the Trace files Path INI API .
BEST
TraceSize max. trace file size in KB 0 .. 32767 INI API 1024
BEST
TraceSync Control whether to 0 (OFF) .. 1 INI API 1
generate sync informations (ON) BEST
in trace files (WIN32)
TraceWriter Trace writer (WIN32): <DLL> INI API
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 26 of 117
The configuration elements for the network protocol TCP (section TCP) are listed in the following
table. This section is only required when the value TCP has been assigned to the configuration
element NetworkProtocol in section CONFIGURATION.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 27 of 117
InitCmdn gets it by
configuration
element.
The configuration elements for the Ethernet interface (section XETHERNET) are listed in the
following table. This section is only required when the value ENET has been assigned to the
configuration element Interface in section CONFIGURATION.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 28 of 117
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.5. EDIABAS configuration
More:
4.5.3.1. MS-WINDOWS
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.5. EDIABAS configuration > 4.5.3. Select the hardware interface
4.5.3.1. MS-WINDOWS
The hardware interface has to be set in the configuration file EDIABAS.INI (Interface).
SOFTING EDIC
The corresponding interface driver is NOT a constituent of the delivery package RUNTIME
SYSTEM.
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.5. EDIABAS configuration
The directory of the ECU description files (referred to as SGBDs) to be used is to be entered
manually in EDIABAS.INI (EcuPath).
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration
More:
4.6.1. WIN32
4.6.2. WIN64
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 29 of 117
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.6. Start and terminate EDIABAS
4.6.1. WIN32
When an application with access on EDIABAS is started the following components are loaded
automatically: API32.DLL, EBAS32.DLL, EBAS32.EXE, EBASCC32.DLL and
TRACEX32.DLL. EBAS32.DLL loads the interface handler.
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.6. Start and terminate EDIABAS
4.6.2. WIN64
When an application with access on EDIABAS is started the following components are loaded
automatically: API64.DLL, API64.EXE and the EDIABAS/WIN32 runtime system.
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration
4.7. Un-install
When un-installed, all EDIABAS delivery packages are removed from the system. The
subdirectory ECU containing the ECU description files is only deleted when this is requested by
the user.
More:
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 30 of 117
4.7.1. MS-WINDOWS
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.7. Un-install
4.7.1. MS-WINDOWS
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration
EDIABAS accesses ECU description files (SGBDs) for processing API jobs (see chapter 3). ECU
description files are developed as source code (B2V-, or B2G file) in BEST/2 and subsequently
compiled into an object format (PRG-, or GRP file) using the BEST compiler for use with
EDIABAS. The object files are loaded and executed at runtime by the runtime system.
In order to protect ECU description files in object format, EDIABAS offers a protection
mechanism. This mechanism not only prevents unauthorized reading of file contents (job names,
table names, table contents, etc.) but also prevents unauthorized use by users (non-authorized
external companies or private persons). The ECU description files are protected in two ways: 1)
File information is coded and not written in plain-language text and 2) the file cannot run under a
non-authorized EDIABAS runtime system; i.e. it cannot be loaded by EDIABAS. Thus,
information cannot be read from the ECU description files, and jobs within cannot be executed.
After the installation, the EDIABAS runtime system first assumes a state in which only
unprotected ECU description files can be executed. ECU description files are protected by means
of passwords specified for the runtime system and for the ECU description files. Passwords for
the runtime system are specified using the Password Editor (PE) (see section 5.3), whereas
passwords in the ECU description files are entered using the BEST compiler BEST2/BEST2WIN
(see BEST User Manual sections 5.1 and 5.2).
NOTE: Only the programs PE and BEST2/BEST2WIN included in the current EDIABAS
installation can be used for specifying passwords.
1. In order to protect the EDIABAS runtime system, system passwords must be defined (at least
one) using the Password Editor (see section 5.3).
2. Next, all ECU description files used must be compiled with at least one password from the list
of the passwords entered above (see BEST user Manual, sections 5.1 and 5.2).
At runtime, the data read when loading the ECU description file must first be decoded.
Afterwards, the runtime system checks whether one of the passwords from the ECU description
file is known by the runtime system. If the runtime system recognizes at least one password from
the ECU description file, the ECU description file can be executed. The EDU description files
which are not protected with a password can be executed from every EDIABAS runtime system
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 31 of 117
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration
EDIABAS for WIN32/CE allows access to diagnostic interfaces and, consequently, cabled ECUs
which are connected to another PC.
This requires a network connection of local and remote-controlled PC via TCP/IP as well as a
WIN32 operating system supported by EDIABAS.
The application and EDIABAS run on the local PC, whereas the Interface Handler (IFH) as well as
the IFH server run on the remote-controlled PC. Before the remote-controlled PC can be accessed,
the IFH server IFHSRV32.EXE must be started first.
The remote control is enabled or controlled via the EDIABAS configuration file EDIABAS.INI.
EDIABAS is configured manually on both PCs.
The EDIABAS configuration parameters TracePath and SimulationPath are not transmitted to
the remote-controlled PC from the local PC. Instead, the corresponding configuration parameters of
file EDIABAS.INI (contained on the remote-controlled PC) are used.
The network protocol TCP (entry NetworkProtocol) as well as a user-selectable port number is to
be specified on both PCs. The port number must be identical on both PCs and must not collide with
the other TCP applications (1000 < port number < 30000).
More:
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.9. Remote diagnostics
The configuration file EDIABAS. INI must be edited on the local PC in accordance with the list
depicted below. The assignment REMOTE to the configuration element Interface causes remote
control of the PC, which is specified with the entry RemoteHost. Specification of a logical
computer name requires a corresponding HOSTS file or a DNS service.
[Configuration]
Interface = REMOTE
NetworkProtocol = TCP
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 32 of 117
[TCP]
RemoteHost = < Name/address of remote-controlled PC >
Port = < Port from remote-controlled IFH >
[Configuration]
Interface=REMOTE
NetworkProtocol=TCP
[TCP]
RemoteHost=193.29.29.175
Port=5000
TimeoutConnect=2000
TimeoutReceive=2000
TimeoutFunction=50000
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.9. Remote diagnostics
[Configuration]
Interface=<Interface>
NetworkProtocol=TCP
[TCP]
Port=< Port of the remote-controlled IFH >
[Configuration]
Interface=EDIC
NetworkProtocol=TCP
[TCP]
Port=5000
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 33 of 117
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration >
4.9. Remote diagnostics
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration
Note: The functionality described in this chapter is not included in the standard delivery!
The proxy interface connection permits central interface handling with separate sending and
reception of telegrams under Win32.
In proxy mode all access of an interface type are passed to a proxy running in the background,
which then processes the interface access. The proxy is automatically started once for every
interface type and then centrally serves all EDIABAS applications for this interface. Up to 16
EDIABAS applications can simultaneously be served per proxy.
If more than one EDIABAS application simultaneously access a proxy, the specifications of the
first EDIABAS application are valid. The other EDIABAS applications may not set diagnostic
interface parameters colliding with those of the first EDIABAS application. Simultaneous access to
a ECU address are serialized by the proxy, i.e. in case of a running send/receive, any further access
to the concerned ECU is delayed until the former send/receive has been concluded. The proxy
operation cannot be combined with the EDIABAS server operation. Functional addressing is not
permitted for proxy operation.
Proxy operation is only applicable for interfaces supporting the separate sending and reception of
telegrams under Win32.
The proxy operation can be activated by the configuration file EDIABAS.INI or at runtime with
apiInitExt. This can be done by prefixing the interface to be used with die identifier proxy
(separated by a colon).
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 34 of 117
[IfhProxy]
For operation with a firewall the used port range has to be activated.
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration
EDIABAS for WIN32 enable different application programs to access EDIABAS at the same time.
Each application program has its own EDIABAS, which is started and finished automatically.
Parallel operation of several interfaces of the same type is only possible if this is supported by the
corresponding interface software.
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration
The EDIABAS controller service for WIN32 offers monitoring functionality according to the
earlier EDIABAS versions until 7.1. The simultaneous access of several applications to the same
interface (parallel operation) is blocked during operation of the EDIABAS controller service
(interface locking)
EDIABAS User's Guide > User manual and installation guide > 4. Installation and administration
By default EDIABAS for Win32 offers parallel operation based on the process, where all threads of
an application share a common EDIABAS runtime system.
EDIABAS under Win32 offers the function of switching to multi-threading operation. During
multi-threading operation every application thread gets assigned its own EDIABAS runtime
system. At the moment of switching NO application must be registered with EDIABAS, i.e. the
switch must not occur during apiInit/apiInitExt..apiEnd of an application.
After activation of the multi-threading functionality a later deactivation isn’t possible any more. By
default the multi-threading functionality is inactive.
5. Help programs
More:
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 35 of 117
5.2. BESTINFO
5.3. BESTVER
5.4. XTRACT
5.5. STRIP
EDIABAS User's Guide > User manual and installation guide > 5. Help programs
Labels/passwords which have once been entered cannot be deleted anymore. If this is desired,
EDIABAS must be re-installed.
Each label/password can be disabled or enabled (more than once possible). A disabled
label/password behaves during runtime as if it did not exist.
A <Label> consists of 1 to 10 ASCII characters in ANSI code, where only ASCII characters are
permitted in the range: 20h <= <ASCII-character> <= 7Eh. The character '@' (40h) is
illegal.
A <Password> consists of 6 to 10 ASCII characters in ANSI code, where only ASCII characters
are permitted in the range: 20h <= <ASCII characters> <= 7Eh.
The Password Editor is controlled via the command line. It offers the following functionalities:
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 36 of 117
commands.
Call: pe
View all labels of the password file
With the Password Editor, the labels of all passwords which are known by the runtime
system can be displayed along with their status (enabled/disabled).
Call: pe -v
Add a new entry in the password file
Enter a new label/password in the EDIABAS runtime system. A total of 10 entries are
possible. When entries are added, they automatically are assigned the status "enabled".
Call: pe -a <Label>=<Password>
Enable an entry in the password file
Disabled entries can be re-enabled again. Possible more than one.
Call: pe -e <Label>
Disable an entry in the password file
Entries which have been entered can be disabled. In ECU description files sequence,
disabled entries behave as entries which do not exist. Possible more than once.
Call: pe -d <Label>
Check whether an ECU description file on the installed on the EDIABAS system can be
executed.
The Password Editor can also be used to check whether ECU description files can be
executed in connection with the installed EDIABAS system. For this purpose, the password
editor fetches the passwords from the ECU description file and compares them to the system
passwords.
Call: pe -c <SGBD>
Whenever the Password Editor exits, the user must confirm this by entering any key. The prompt
can be suppressed with option -Q.
The Password Editor returns the value 1 in the case of an error, otherwise 0.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 37 of 117
NOTE: Only the Password Editor included in the EDIABAS installation can be used.
EDIABAS User's Guide > User manual and installation guide > 5. Help programs
5.2. BESTINFO
The program BESTINFO allows the output of the following information regarding the specified
ECU description file (object format):
• File name
• Revision number
• Last user (operator) (output of maximum 63 characters), date of the last change
Call:
Example:
bestinfo testv.prg
5 Jobs:
INITIALISIERUNG
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 38 of 117
IDENT
CHECK
BINPARA
WAIT
BESTINFO ready.
Whenever the program BESTINFO exits, the user must confirm this by entering any key. The
prompt can be suppressed with option -Q.
EDIABAS User's Guide > User manual and installation guide > 5. Help programs
5.3. BESTVER
This program is only available under MS-WINDOWS. It allows the versions of ECU description
files (object format) to be tested. In addition it allows specification of a uniform version number of
the package for several description files.
Call:
Example:
Modifies the revision (revision 2.0 becomes 1.6, and author becomes Softing) and specifies a
package version number (20). The following is output:
TESTV.PRG
Revisionnumber : 2.0
By : softing.sag.Os
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 39 of 117
==>
Revisionnumber : 1.6
By : Softing
Whenever the program BESTVER exits, the user must confirm this by entering any key. The
prompt can be suppressed with option -Q.
EDIABAS User's Guide > User manual and installation guide > 5. Help programs
5.4. XTRACT
This program is only available under MS-WINDOWS. XTRACT can be used to display the help
texts stored in the BEST object files.
Call:
Option -F pipes the output is a file with the extension .biv or .big. The options –X and –XML
cause an output in XML format (file with the extension .xml). The directory can be specified where
the output file is to be produced. Wildcards can be used in objectfile.
Whenever the program XTRACT exits, the user must confirm this by entering any key. The prompt
can be suppressed with option -Q.
Example:
xtract -F testv.prg
ECU:TESTV
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 40 of 117
ORIGIN:softing.sag.Os
REVISION:2.0
AUTHOR:softing.sag.Os
ECUCOMMENT:Original: TESTV.B1V
JOBNAME:INITIALISIERUNG
JOBCOMMENT: Initialization
RESULT:DONE
RESULTTYPE:int
JOBNAME:IDENT
RESULT:JOB_STATUS
RESULTTYPE:string
...
For improved documentation of BEST objects, XTRACT also offers the functionality to output the
entries of a table instead of a BEST/2 comment. For this purpose, a BEST/2 comment must have
the following structure:
comment: table <Table name> < Column > [ < Column > ... ]
...
table exampleTable[2][]=
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 41 of 117
};
...
...
JOBNAME:exampleJob
JOBCOMMENT:Start of comment
JOBCOMMENT:End of comment
...
EDIABAS User's Guide > User manual and installation guide > 5. Help programs
5.5. STRIP
This program is only available under MS-WINDOWS. STRIP can be used to remove the help text
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 42 of 117
Aufruf:
Parameter d indicates that the debug information is to be removed, whereas parameter h indicates
that the help texts are to be removed. The directory can be specified where the output file is to be
produced. If an object file is overwritten which already exits, STRIP requests the user for re-
confirmation. This interrogation can be suppressed with option -N.
Whenever the program STRIP exits, the user must confirm this by entering any key. The prompt
can be suppressed with option -Q.
Example:
strip -N dh testv.prg
Remove the debug information and help texts from file testv.prg.
GLOSSARY
API
Application
BEST
Description file
Device
Diagnostic concept
DLL
ECM
ECU
EDIABAS
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 43 of 117
EDIC
EdicApi
IFH
Job
Runtime system
SGBD
SG
1. Revision history
2. Introduction
3. General Information
4. List of errors
A. References
1. Revision history
Version 3.0 First release
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 44 of 117
Version 6 Extended for EDIABAS 6.0.0: BIP-0012, BIP-0013 and IFH-0041 to IFH-0059
2. Introduction
More:
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 45 of 117
This manual describes the general structure of an error. All errors which can occur in EDIABAS
are listed, including the respective methods of correction. General information regarding
EDIABAS and ECU description files is described in [2].
Beispiel Beschreibung
SAMPLE.B2V Uppercase denotes file names, registers and operating
system commands.
job, string, while Bold-faced type identifies keywords and operators of the
language BEST/2 and BEST/s as well as the API functions.
.}
[1] Reference to a document in References.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 46 of 117
An explanation of all abbreviations used in this and all other EDIABAS documentation can be
found in the publication "EDIABAS User Manual" in chapter "GLOSSARY".
3. General Information
Erroneous functions such as time-out during ECU communication can occur during the execution
of EDIABAS. An erroneous function recognized by EDIABAS is reported as an EDIABAS error.
More:
EDIABAS User's Guide > EDIABAS Error Reference > 3. General Information
The Origin of an error denotes the EDIABAS-internal program area where the error was detected.
The following areas are possible:
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 47 of 117
Errors having the same Origin can be differentiated using a 4-digit error number. If an error does
not exist, it is identified by the pseudo error symbol EDIABAS_ERR_NONE.
An integer value, the error code, is assigned to each Error symbol. The value 0 indicates that an
error was not recognized by EDIABAS (error symbol EDIABAS_ERR_NONE).
EDIABAS User's Guide > EDIABAS Error Reference > 3. General Information
An error recognized by EDIABAS is reported to the application program and can only be output
there.
An application program can independently determine the type and way an error is handled,
whereby basically only the following error information can be fetched by EDIABAS:
Document [1] describes, in detail, the procedure on how an application program recognizes and
issues (outputs) errors.
EDIABAS User's Guide > EDIABAS Error Reference > 3. General Information
An error which occurs while a job is being processed causes the job to be aborted and an error
message to be issued to the application program. All job results stored up to this point are deleted.
If an error occurs during the initialization of EDIABAS (apilnitXxx) by the application program,
initialization is aborted.
An error remains stored until an application program (apiJobXxx call) starts a new job, re-
initialization is performed via apiInitXxx, or a device change is performed with apiSwitchDevice.
The errors API-0005 and API-0014 will be deleted during the next result query (apiResultXxx).
4. List of errors
This chapter lists all errors which are reported by EDIABAS. In accordance with the place of
origin, subdivision into IFH, BIP, SYS and API is made.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 48 of 117
Error code represents the error (as a value) reported by EDIABAS. This value can be fetched by
the application from EDIABAS using the function apiErrorCode.
Error text shows the error reported by EDIABAS in text format. This error text can be fetched by
the application program from EDIABAS using the function apiErrorText.
Error symbol corresponds to the error assignment in file API.H, in which the error symbol is
defined as a constant.
Each error description comprises the sections Meaning, Causes, Error correction and Target
system. Errors are explained in section "Meaning". The causes of an error are described in a
corresponding section. All measures described in section "Error correction" are always to be
observed or carried out.
Section "Target system" informs the user under which EDIABAS target system the error can occur.
If an error cannot occur on an EDIABAS target system, the corresponding target system is crossed
out.
More:
4.4. Network
4.5. Application
EDIABAS User's Guide > EDIABAS Error Reference > 4. List of errors
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 49 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 50 of 117
Error correction: Check the cables between the host system and the interface.
Target system: WIN
16
Meaning: The interface fails to accept the sent command.
Causes: While ECU communication is active, the interface accepts not
further send command. If cyclic sending of a message is
started (BEST1: xsendf; BEST2: send_frequent), ECU
communication is continuously active.
Error correction: The frequent mode must be aborted prior to re-sending a
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 51 of 117
17
Meaning: This error occurs when either no voltage is currently supplied
to the D bus or when the voltage is too small. In addition, this
error can also be caused by short circuits on the D bus. The
error message is issued only following BEST commands which
access the D bus. These are:
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 52 of 117
21
Meaning: This error is inapplicable for EDIABAS V3.0.0 or later.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 53 of 117
You can set this error using the BEST2 function make_error
Causes: -
Error correction: -
Target system: WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 54 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 55 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 56 of 117
31
Meaning: Specification of an illegal port number in the ECU description
file (SGBD).
Causes: Illegal port numbers are used In the BEST commands (BEST1:
xgetport and xsetport, BEST2: ifgetport and ifsetport).
Error correction: Correction of the port number in the ECU description file.
Target system: WIN
34
Meaning: Error when resetting the DPRAMs. This error only occurs in
connection with EDIC versions communicating via DPRAM
with the PC.
Causes: The DPRAM and/or the device driver of the interface are in an
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 57 of 117
undefined state.
36
Meaning: Error in connection with the ECU Simulator.
Causes: Syntax error in one of the simulation files.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 58 of 117
37
Meaning: The Interface Handler is not installed.
Causes: EDIABAS attempts to access the Interface Handler although
this is not (or incorrectly) installed.
Error correction: Check your application whether the correct interface handler or
driver is installed.
38
Meaning: A wrong Interface Handler version is installed.
Causes: Your EDIABAS requires a different Interface Handler version
than that which is installed.
Error correction: Re-install the required EDIABAS version and possibly the
Extension Disk.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 59 of 117
42
Meaning: This error messages occurs whenever the ignition is disabled
while the Interface Handler accesses the ECU.
Causes: The ignition is disabled.
Error correction: Enable the ignition, and repeat the last job.
Target system: WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 60 of 117
Causes: The EDIC API configuration files do not exist (or do not reside
in the correct directory).
Error correction: Re-install EDIC. If the error should continue to occur, please
inform SOFTING.
Target system: WIN
45
Meaning: At least one configuration element in one of the interface
configuration files is incorrectly configured.
Causes: Erroneous configuration e.g. of an EDIC API configuration
element.
Error correction: Re-install your interface.
47
Meaning: This error occurs whenever a voltage is currently supplied to
the D bus and when a connected ECU does not respond. The
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 61 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 62 of 117
Meaning: The version of the EDIC user interface does not match the
version of the EDIC API.
Causes: EDIC API was installed incorrectly or parts of the EDIC API
(EDIC32.DLL, EDICX32.EXE) reside in the Windows
directory.
Error correction: Delete all components of the EDIC API (EDIC32.DLL,
EDICX32.EXE) which reside in the Windows directory.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 63 of 117
54
Meaning: An error was found during the flash process of the EDIC
firmware.
Causes: Faulty EDIC API configuration, the firmware is corrupted, or
the EDIC is not connected.
Error correction: Check the EDIC connectors on the computer and the EDIC
API configuration (EDICHW.INI and EDICFW.INI).
Target system: WIN
57
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 64 of 117
Meaning: A plug-in DLL could not be loaded, or access to this DLL was
not possible.
Causes: Faulty EDIC API configuration, plug-in DLL not found, or the
plug-in DLL needs another DLL which was not found.
Error correction: Cannot be performed by the user. If this error should re-occur,
please inform the company which has implemented your plug-
in DLL.
Target system: WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 65 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 66 of 117
PARAMETER
Meaning: An interface function was called with an illegal parameter.
Causes: An illegal program status of the interface handler or driver has
occurred.
Error correction: Cannot be performed by the user. If this error should occur,
please inform SOFTING.
Target system: WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 67 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 68 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 69 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 70 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 71 of 117
EDIABAS User's Guide > EDIABAS Error Reference > 4. List of errors
More:
EDIABAS User's Guide > EDIABAS Error Reference > 4. List of errors > 4.2. Runtime system
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 72 of 117
i=100;
array[100*i]=50;
Error correction: Check all array accesses in your job if they contain an index
which is possibly invalid. The indexes must not exceed the
max. array size.
Target system: WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 73 of 117
if(a==0)
b=1000;
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 74 of 117
else
b=1000/a;
Target system: WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 75 of 117
The error occurs because the plug-in component does not exist.
Error correction: For eliminating the error, contact the developer of the ECU
description file.
WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 76 of 117
EDIABAS User's Guide > EDIABAS Error Reference > 4. List of errors > 4.2. Runtime system
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 77 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 78 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 79 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 80 of 117
If the desired job does not exist in the description file, extend
the description file by the job.
Target system: WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 81 of 117
and extension>
Target system: WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 82 of 117
and extension>
Target system: WIN
extension>
Target system: WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 83 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 84 of 117
and extension>
Target system: WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 85 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 86 of 117
EDIABAS User's Guide > EDIABAS Error Reference > 4. List of errors
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 87 of 117
a job in progress.
Error correction: Please contact the developer of the application program.
Target system: WIN
and extension>
Target system: WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 88 of 117
and extension>
Target system: WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 89 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 90 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 91 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 92 of 117
EDIABAS User's Guide > EDIABAS Error Reference > 4. List of errors
4.4. Network
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 93 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 94 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 95 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 96 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 97 of 117
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 98 of 117
NetworkProtocol.
Error correction: Assign the network protocol to be used (e.g. TCP for TCP/IP)
to the EDIABAS configuration element NetworkProtocol.
Target system: WIN
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 99 of 117
EDIABAS User's Guide > EDIABAS Error Reference > 4. List of errors
4.5. Application
EDIABAS_RUN_0000
250 RUN-0000
..
.. .. EDIABAS_RUN_0099
RUN-0099
349
Meaning: No valid status in SGBD.
Causes: Error was set by SGBD.
Error correction: Contact the devolper of the ECU description file.
Target system: WIN
A. References
[1] EDIABAS: API Interface Description
ECU Simulator
More:
1. Revision history
2. Introduction
3. General
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 100 of 117
4. Overview
5. Control
6. Error messages
8. Simulation files
A. References
1. Revision history
Version 3.0 First release
2. Introduction
More:
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 101 of 117
This manual describes how to use the ECU (Electronic Control Unit) Simulator integrated in
EDIABAS. General information about EDIABAS and the ECU description files can be found in
[1].
Example Description
SAMPLE.B2V Uppercase denotes file names, registers and operating
system commands.
job, string, while Bold-faced type identifies keywords and operators of the
language BEST/2 and BEST/s as well as the API functions.
.}
[1] Reference to a document in References.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 102 of 117
An explanation of the abbreviations used in this and all other EDIABAS documentation can be
found in the publication "EDIABAS User Manual" in chapter "GLOSSARY".
3. General
The response behavior of the diagnostic bus interface and the ECUs can be simulated in EDIABAS.
This scope of functions is designated ECU Simulator. The ECU Simulator is a constituent of
EDIABAS. From the user and the application program view, EDIABAS behaves identically in
simulation and normal mode. So-called "simulation files" control the ECU Simulator.
The ECU Simulator is an indispensable tool for developing and testing ECU description files and
application programs. In simulation mode, jobs from the ECU description files can be executed
without a real diagnostic bus interface and ECU.
4. Overview
The ECU Simulator is a part of the Interface Handler (IFH) and, hence, EDIABAS. It is accessed
EDIABAS-internally via the general procedural IFH interface. There are no special access
functions for the ECU Simulator which exceed the normal functional scope of the API interface;
i.e. no special adaptations have to be made to the application program. The ECU Simulator is
controlled via a series of simulation files which determine how the ECU Simulator is to respond to
the requests of jobs to the diagnostic interface or ECUs.
Neither device drivers nor diagnostic bus interface and ECU are required for simulation.
5. Control
The ECU Simulator is controlled via three different types of "simulation files". These files are text
files and can therefore be edited using every text editor. Since the simulation files are closed again
after each access, an ECU description file can be debugged in the development environment under
Windows, and a simulation file can simultaneously be edited.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 103 of 117
More:
The ECU Simulator is enabled and disabled by means of the EDIABAS configuration element
Simulation:
The path containing the ECU simulation files is determined using the EDIABAS configuration
element SimulationPath:
There is an interface simulation file for each diagnostic bus interface supported by EDIABAS with
which the behavior of the interface can be simulated (see section "Simulations files/Interface
simulation file").
ECU simulation files can be created for each ECU by the user. These files can be used to simulate
the response behavior of the ECUs (see section "Simulation files/ECU simulation file").
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 104 of 117
6. Error messages
In simulation mode, a series of error messages have a different cause as than in normal EDIABAS
operation. These error messages are listed below:
This error message is issued when attempt is made to access simulation data which do not
exist in the file when accessing an interface simulation file (e.g., when a certain message or
label is not found).
This message is issued when attempt is made to access data which do not exist in the file
when accessing an ECU simulation file (e.g., when a certain message or label is not found).
Each function block begins with a heading (title) which must be enclosed in square brackets and
ends before the beginning of a new function block or with the file end. Related data (e.g., request
messages to an ECU or response messages of an ECU) are both combined in a function block.
A label is assigned to each date (e.g., a message, a version number or a voltage). The label
represents the "Name" of the date:
; This is a comment
;Function block:
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 105 of 117
[Function block]
More:
7.1. Syntax
EDIABAS User's Guide > ECU Simulator > 7. Syntax and contents of the simulation files
7.1. Syntax
The names of function block headings and labels may consist of the following characters:
All names (both the name of the block heading and the name of a label)can be written in either
upper- or lowercase (e.g., "Version" or "version"). The length of a name must not exceed 63
characters.
An assignment must follow each label (except in the block Response) (e.g., UBatt = 13000).
Binary data (interface messages or ECU messages) are written in hexadecimal format and are
separated by a comma (e.g., "01,02,0A,0a,FF"). No delimiters may appear within the binary string
except for the characters "X" or "x" (both upper- or lowercase is allowed) and "_". The upper- or
lowercase characters "X" or "x" in a block "REQUEST" may represent a number in a binary data
string. (e.g., 0X for 00 to 0F, XA for 0A to FA and XX for 00 to FF). Agreements with arbitrary
characters can be caused using this 'X' character in blocks which represent data from the interface
handler to the interface or ECU. An underscore "_" represents a message with a length of null.
Example:
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 106 of 117
id_lesen = 06,00,01,00,07,00
ram_lesen = 06,00,01,XX,XX,XX
empty = _
voltage = 12000
Comments always begin with a semicolon (";"). Afterwards, all characters up to the end of the line
comprise the comment. Comments may consist of all characters.
Example:
; One-line comment
EDIABAS User's Guide > ECU Simulator > 7. Syntax and contents of the simulation files
The name of a function block heading is enclosed in square brackets, whereby delimiters are not
allowed within. The sequence of the blocks within the simulation file is arbitrary. Section
"Simulation files" describes which function blocks are to be entered in the matching simulation
files.
Example:
[BLOCK]
More:
7.2.1. VERSION
7.2.2. POWERSUPPLY
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 107 of 117
7.2.3. IGNITION
7.2.4. PORT
7.2.5. REQUEST
7.2.6. RESPONSE
7.2.7. LOOPTEST
7.2.8. KEYBYTES
EDIABAS User's Guide > ECU Simulator > 7. Syntax and contents of the simulation files > 7.2.
Function blocks
7.2.1. VERSION
Description: This block contains the version number of the interface firmware (especially
EDIC) as 2 bytes in hexadecimal notation, separated by comma.
Two bytes in the sequence <Low byte> <High byte> come from the interface.
The <High byte> has the value 00; t <Low byte> contains the version
number.
Label: Version
Example:
Version = 1E,00
EDIABAS User's Guide > ECU Simulator > 7. Syntax and contents of the simulation files > 7.2.
Function blocks
7.2.2. POWERSUPPLY
Description: This block contains the value for the battery voltage in millivolts as decimal
notation. The values of the system results UBATTCURRENT and
UBATTHISTORY can also be determined in this block.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 108 of 117
Label: Ubatt
Example:
Label: UbattCurrent
Example:
UbattCurrent = 1 ; Ubatt is on
Label: UbattHistory
Example:
EDIABAS User's Guide > ECU Simulator > 7. Syntax and contents of the simulation files > 7.2.
Function blocks
7.2.3. IGNITION
Description: This block contains the voltage value at the ignition in millivolts as decimal
notation. The values of the system results IGNITIONCURRENT and
IGNITIONHISTORY can also be determined in this block.
Label: Ignition
Example:
Label: IgnitionCurrent
Example:
Label: IgnitionHistory
Example:
EDIABAS User's Guide > ECU Simulator > 7. Syntax and contents of the simulation files > 7.2.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 109 of 117
Function blocks
7.2.4. PORT
Description: This block contains the values which are applied at the individual ports. The
values at the ports zero to eight are the voltages on the analog inputs in
millivolts (EDIC). The value at port nine is the digital value of the jumper
field (EDIC).
Example:
EDIABAS User's Guide > ECU Simulator > 7. Syntax and contents of the simulation files > 7.2.
Function blocks
7.2.5. REQUEST
Description: This block contains the requests (messages) to the interface or an ECU. A label
is assigned to each request. The label names in this block can be selected by
the user. For each label, the block "RESPONSE" must contain a label with
the same name to which the response to the corresponding request is
assigned. If the request contains an "X", this character represents an arbitrary
number. If the request contains "_ , the character represents a message with
the length 0.
Label: Any
Example:
Telegramm1= _
Telegramm2= 01,02,XX,03
EDIABAS User's Guide > ECU Simulator > 7. Syntax and contents of the simulation files > 7.2.
Function blocks
7.2.6. RESPONSE
Description: This block contains the responses to the requests contained in block
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 110 of 117
"REQUEST". This block may also contain labels without assignments; in this case, 0 bytes are
returned as a (valid) response message.
Example:
Telegramm1= 11,22,33,44
Telegramm2= 55,66,77,88
diagEnde =
EDIABAS User's Guide > ECU Simulator > 7. Syntax and contents of the simulation files > 7.2.
Function blocks
7.2.7. LOOPTEST
Description: This block contains the result of the line test. 0 designates that the test is not
OK; 1 designates that the test is OK.
Label: Looptest
Example:
Looptest = 1 ;Test OK
EDIABAS User's Guide > ECU Simulator > 7. Syntax and contents of the simulation files > 7.2.
Function blocks
7.2.8. KEYBYTES
Description: This block returns the key bytes and the identification data of an ECU (when
provided in ECU concept).
Label: Keybytes
Example:
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 111 of 117
8. Simulation files
More:
A separate simulation file exists for each interface to be simulated. The file name consists of the
interface name with the extension ".SIM" (e.g. EDIC.SIM). The name of the simulation file must
be written in lowercase under UNIX. The simulation file must exist in the correct file format (under
MS-DOS/WINDOWS CR-LF, under UNIX only LF at the end of the line. The setting of the
EDIABAS configuration element is to be used as the interface name Interface. The interface
simulation files contain the interface-specific return values. The following function blocks are to be
entered in this file:
• VERSION
• POWERSUPPLY
• IGNITION
• PORT
• LOOPTEST
• REQUEST
• RESPONSE
A special mechanism was implemented for the interface EDIC for sending and receiving an ECU
message in raw mode; i.e., the data are sent 1:1 to the diagnostic bus interface without
interpretation. Sending and receiving an ECU message is conducted in the following manner:
1. Send a message to an ECU (control bytes 04,00 + message data). For this purpose, the request
message is entered with leading underscore in the block REQUEST.
_send_id_lesen = 04,00,01,00,00,03,00,00
The interface responds with BUSY for acknowledgment (control bytes 01,00). This response is
entered under RESPONSE.
_send_id_lesen = 01,00
2. In order to read the ECU response from the diagnostic bus interface, the interface status must be
interrogated (control bytes 07,00). This request is entered again under REQUEST.
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 112 of 117
_send_id_lesen = 04,00,01,00,00,03,00,00
requestState = 07,00
If the control bytes 07,00 are sent directly after an ECU message request, the response does not
appear under the same label as the request (in the example "requestState"). Instead, however, it
under the label of the ECU message request (now, however, with a leading "X" (in the example
"Xsend_id_lesen").
_send_id_lesen = 01,00
Xsend_id_lesen = 02,00,0D,01,F6,30,32,38,35,30,30,36,30,30,34;,...
requestState = 00,00
The response appears under the same label as the request (in example "requestState" only when the
control bytes 07,00 are sent without pervious ECU message request.
Example:
;*************************************************
;*************************************************
Version = 5
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 113 of 117
[IGNITION] ; Ignition
IgnitionCurrent = 1 ; Voltage in on
Port_0 = 10
Port_1 = 21
Port_2 = 32
Port_3 = 43
Port_4 = 54
Port_5 = 65
Port_6 = 76
Port_7 = 87
Port_8 = 98
reset = 01,00
resetParameter = 02,00
setParameter = 03,00,03,00,02,10,01,00,00,D0,07,F4,01,01
stopFrequent = 06,00
requestState = 07,00
requestIdent = 08,00
requestLastMsg = 09,00
version = 0A,00
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 114 of 117
loopTest = 0B,00
readJumper = 21,00
_send_id_lesen = 0X,00,01,00,00,03,00,00
_send_fs_loeschen = 0X,00,01,00,00,03,00,05
_send_diagende = 0X,00,01,00,00,03,00,06
_send_fs_lesen = 0X,00,0A,00,00,03,00,07
_send_ack = 0X,00,01,00,00,03,00,09
reset = 00,00
resetParameter = 00,00
setParameter = 00,00
stopFrequent = 00,00
requestState = 00,00
requestIdent = 00,00,04,01,09,03,0D,01,F6,30,32,38,31,30,30;,...
requestLastMsg = 00,00
version = 00,00,03,00
loopTest = 0A,00
baudrate = 00,00
readJumper = 00,00,3F
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 115 of 117
setDigiOut = 00,00
setProgVlt = 00,00
switchSiR = 00,00
_send_id_lesen = 01,00
Xsend_id_lesen = 02,00,0D,01,F6,30,32,38,35,30,30,36,30,30,34;,...
_send_fs_loeschen = 01,00
Xsend_fs_loeschen = 02,00,03,00,09
_send_diagende = 01,00
Xsend_diagende = 02,00
_send_fs_lesen = 01,00
Xsend_fs_lesen = 02,00,10,DB,FC,B2,04,8A,00,05,A5,03,1A,01,02;,...
_send_ack = 01,00
Xsend_ack = 02,00,03,00,09
Looptest = 1
A simulation file exists for each ECU for which contains an own diagnostic bus address. This file
contains the request and the response messages of the ECU. Except for the extension ".SIM" (e.g.
DME31.SIM), this file has the same name as the ECU description file. The name of the simulation
file must be written is lowercase under UNIX. The simulation file must exist in the correct file
format (under MS-DOS/WINDOWS CR-LF, under UNIX only LF at the end of the line). The
following function blocks are to be entered in these files:
• REQUEST
• RESPONSE
• KEYBYTES
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 116 of 117
Example:
;****************************************************
;****************************************************
empty =_
id_lesen = 03,00,00
ram_lesen = 06,00,01,00,00,00
fs_loeschen = 03,00,05
diagende = 03,00,06
fs_lesen = 03,00,07
ack = 03,00,09
adr_lesen = 03,00,0B
empty =
id_lesen = 0D,00,F6,31,31,31,31,31,31,31,31,31,31,0D,00,F6,32;,...
ram_lesen = 04,00,FE,64
fs_loeschen = 03,00,09
ack = 03,00,09
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020
EDIABAS User's Guide Page 117 of 117
adr_lesen = 0F,00,FA,5E,88,FF,FF,FF,FF,FF,FF,FF,FF,E5,0E,0F,00;,...
keybytes= 01,02,00,00,0D,00,F6,31,31,31,31,31,31,31,31,31,31,03;,...
A. References
[1] EDIABAS: BEST/2 Function Primer
file:///C:/Users/sgtma/AppData/Local/Temp/~hhD033.htm 7/16/2020