Sie sind auf Seite 1von 22

T-Systems GEI GmbH UNIPAS

Geschäftsstelle Ulm Vediamo


Interface
Seite 1

UVI

Interfacebeschreibung

Historie
Verfasser Datum Version Geändert
Thomas Falschebner 04.07.2002 1.00 Erstellung
Thomas Falschebner 25.07.2002 1.10 Aktualisiert und Erweitert
Thomas Falschebner 11.09.2002 1.20 Releaseversion
Tadeusz Rzedkowski 10.12.2003 1.30 Start/StoppComm
Tadeusz Rzedkowski 11.02.2004 1.40 ReadIdInformation, VarCoding
Tadeusz Rzedkowski 16.12.2004 1.50 Hinweis zu Parametern für DoFlash
Tadeusz Rzedkowski 29.05.2007 1.60 Erweiterung Ver. 3.1.1:
DoFlash – erweitert
FindECU() – neue Funktion

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 2

Inhaltsverzeichnis

1 Beschreibung ................................................................................................................................................ 3

1.1 Installation............................................................................................................................................. 3

2 Überblick über die Methoden ..................................................................................................................... 3

3 Beschreibung der Methoden........................................................................................................................ 4

3.1 Init ......................................................................................................................................................... 4


3.2 Reset ...................................................................................................................................................... 5
3.3 DoFlash ................................................................................................................................................. 6
3.4 GetFlashProgress.................................................................................................................................. 8
3.5 DoDiagService ...................................................................................................................................... 9
3.6 ReadECUErrors .................................................................................................................................. 11
3.7 ClearECUErrors ................................................................................................................................. 13
3.8 TransferData ....................................................................................................................................... 14
3.9 DeleteData........................................................................................................................................... 15
3.10 GetVersionInfo .................................................................................................................................... 16
3.11 ReadIDInformation.............................................................................................................................. 17
3.12 FindECU ............................................................................................................................................. 18

4 Fehlerbehandlung....................................................................................................................................... 21

4.1 Liste der möglichen Fehlercodes: ....................................................................................................... 21

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 3

1 Beschreibung
Diese Dokument beschreibt die Schnittstelle zwischen UVI und dem Prüfsystem UNIPAS.
Die Methoden werden in COM/DCOM realisiert. Die Unterfaceklasse die die Methoden zur
Verfügung stellt heißt IVI.

1.1 Installation
Wichtig:Unbedingdt zuerst VediamoSetupV.exe ausführen, um Vediamo zu installieren. An-
schließend UviSetup.exe ausführen. Die Reihenfolge ist unbedingt einzuhalten, da UVI auf
Vediamo basiert und diese Komponenten unbedingt zu Installationszeitunkt vorhanden sein
müssen. Da UVI und Vediamo unterschiedliche Version von Microsoft dlls verwenden, ist es
unbedingt notwendig die beiden Programme in unterschiedliche Verzeichnisse zu installie-
ren.
Nach der Installation müssen in der Vediamo.ini noch einige Änderungen vorgenommen
werden damit UVI korrekt arbeiten kann.
Der Eintrag SystemConsistencyCheck muss auf 0 gesetzt werden.
[SERVER]
SystemConsistencyCheck= 0

Die Vediamo.ini muß um folgenden Eintrag erweitert werden:


[UVI]
System = Name der gewünschten Vediamo-Systembeschreibung.

2 Überblick über die Methoden

Name Kommentar
Init Initialisierung der Komponente
Reset Temporäre Einstellungen zurücksetzen
DoFlash SG Flashen
GetFlashProgress Liefert den Flashfortschritt
DoDiagService Symbolischen Diagnosedienst ausfüh-
ren
ReadECUErrors Lesen des Steuergeräte Fehlerspei-
chers
ClearECUErrors Löschen des Steuergeräte Fehlerspei-
chers
TransferData Dient zur Übergabe neuer Diagnose-
und Flashdaten
DeleteData Dient zum Löschen von Diagnose- und
Flashdaten.
GetVersionInfo Liefert die Versionen der einzelnen
Komponenten (UVI,Vediamo und CAE-
SAR)
FindECU Identifizierung des angeschlossenen
ECU

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 4

3 Beschreibung der Methoden

3.1 Init
Mit der Methode Init nimmt UVI Verbindung mit dem Vediamo-Server auf und lädt das in der
Vediamo.ini abgelegte System. Diese Funktion muß vor dem Aufruf aller anderen Methoden
des Interfaces erfolgen. Ein Aufruf einer anderen Methode vor INIT führt zu einem Fehler.
Der Name der Vediamo Systembeschreibung kann entweder bei der Init-Methode mitgege-
ben werden oder wird aus der Vediamo.ini gelesen. Wird die zweite Möglichkeit gewählt,
muß die Vediamo.ini um folgenden Eintrag ergänzt werden:

[UVI]
System = Name der gewünschten Vediamo-Systembeschreibung.

HRESULT Init([in]BSTR XMLIN, [out]BSTR *XMLOUT)

3.1.1 Übergabeparameter: XMLIN


Leerstring oder

Beschreibung von DATA:

<DATA>

TAG ATTRIBUTE Kommentar


SYSTEM Name der Vediamo Systembeschreibung

3.1.2 Rückgabeparameter: XMLOUT


Leerstring

3.1.3 Rückgabewerte der Funktion


0: kein Fehler
>0: Fehlercodes siehe Kapitel 4.1

Im Rückgabeparameter XMLOUT steht im Fehlerfall die Fehlerbeschreibung im XML-Format

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 5

3.2 Reset
Die Resetmethode schließt alle noch aktiven Verbindungen zu Steuergeräten und versetzt
UVI in den Zustand nach Aufruf der Init-Methode.

HRESULT Reset([in]BSTR XMLIN, [out]BSTR *XMLOUT)

3.2.1 Übergabeparameter: XMLIN


Leerstring

3.2.2 Rückgabeparameter: XMLOUT


Leerstring

3.2.3 Rückgabewerte der Funktion


0: kein Fehler
>0: Fehlercodes siehe Kapitel 4.1

Im Rückgabeparameter XMLOUT steht im Fehlerfall die Fehlerbeschreibung im XML-Format

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 6

3.3 DoFlash
Mit der Methode DoFlash wird das Steuergerät mit der in sXML-Input angegebenen Flash-
ware geflasht. Dabei werden die einzelnen Flashkeys gemäß der in den *.cff files angegebe-
nen Prioritäten sortiert. Zur Ermittlung der richtigen Diagnosedaten kann entweder die
Sachnummer und der ZGS der Diagnosedaten oder der Steuergerätequalifier übergeben
werden. Wird Sachnummer und ZGS übergeben, muß im Attribut ECUQUALIFIER ein Leer-
string übergeben werden und umgekehrt.
Die Flashware und die Diagnosedaten muß an Vediamo auf eine der folgenden Methoden
übergeben werden:
• von Anfang an im Datenverzeichnis von DiagServer vorhanden
• vor DoFlash() mit TransferData() übermittelt
• vor dem Aufruf als Datei kopiert und bei DoFlash() als FlashFile (gesamter Pfad) mit-
geteilt.

Wird bei DoFlash() ein FlashFile übergeben, so werden alle bisher im DiagServer vorhande-
nen Flashdaten entladen und nur die angegebene Datei geladen.

Der Parameter (Attribut) FWZGS wird nicht verwendet und kann ausgelassen werden.

HRESULT DoFlash([in]BSTR XMLIN, [out]BSTR *XMLOUT)

3.3.1 Übergabeparameter: XMLIN


Beschreibung von DATA:

<DATA>

TAG ATTRIBUTE Kommentar


DDSACHNR Sachnummer der Diagnosedaten
DDZGS Zeichnungsgeometriestand
ECUQUALIFIER Steuergerätequalifier
<FLASHWARE>

Beschreibung der FLASHWARE:

<FLASHWARE>

TAG ATTRIBUTE Kommentar


FLASHFILE Flashfile (mit einem FlashKey)
Oder
FLASHKEY FlashKey aus vorhandener
Bedatung
Oder
FLASHFILE Flashfile (mit mehreren Flash-
Keys)
FLASHKEY=“ALL“ Alle FlashKeys der Datei in
Prio-Reihenfolge flashen
Beispiele:

1. Eine Flashdatei mit genau einem Flashkey


<DATA DDSACHNR = "A7365298" DDZGS = "983" ECUQUALIFIER = "">
<FLASHWARE FLASHFILE= "C:\Data\Vediamodaten\CFF\4711_0815.cff“ />

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 7

</DATA>

2. Eine Flash-Datei mit mehreren Keys (z.B. 1 x Code, 1 x Data), alle vorhandenen Keys
sollen geflasht werden
<DATA DDSACHNR = "A7365298" DDZGS = "983" ECUQUALIFIER = "">
<FLASHWARE FLASHKEY=”ALL” FLASHFILE= "C:\Data\CFF\4711_0815.cff“ />
</DATA>

3. Eine Flashdatei mit vielen Flashkeys sowie eine Auswahl von Flashkeys, die geflasht wer-
den sollen. In diesem Fall müssen die angegebenen Flashkeys alle in dieser Datei stecken.
<DATA DDSACHNR = "" DDZGS = "" ECUQUALIFIER = "ME28AMG">
<FLASHWARE FLASHFILE= "C:\Data\Vediamodaten\CFF\4711_0815.cff“ />
<FLASHWARE FLASHKEY= "A1234527890“/>
<FLASHWARE FLASHKEY = "A1223467890“/>
<FLASHWARE FLASHKEY = "A1267867890“/>
</DATA>

4. Eine Auswahl von Flashkeys, die geflasht werden sollen, ohne dass eine Datei angegeben
wird. Die Flashdatei(en) müssen zu dem Zeitpunkt schon geladen sein.
<DATA DDSACHNR = "A7365298" DDZGS = "983" ECUQUALIFIER = "">
<FLASHWARE FLASHKEY= "A1234527890“/>
<FLASHWARE FLASHKEY = "A1223467890“/>
<FLASHWARE FLASHKEY = "A1267867890“/>
</DATA>

Wichtig. Bei Angabe einer Flashdatei müssen folgende Bedingungen erfüllt sein:
• Datei gilt für aktuelles ECU
• Datei enthält genau einen Flashkey.
In dem Falle werden bisherige CFFs entladen und die übermittelte Datei geladen und ins
ECU geflasht

Wichtig. Der unter FLASHKEY angegebene Parameter ist bei einem Teil der Bedatung mit
der Sachnummer identisch, es gibt aber seit 2004 auch Flashdaten, in denen der Flashkey
anders zusammengesetzt ist (z.B. Sachnr und ZGS). Da das System Vediamo keine Kennt-
nis über die Zusammensetzung des Flashkeys hat, muss der Client den korrekten Flashkey,
und nicht die Sachnummer, als Parameter mitgeben.

3.3.2 Rückgabeparameter: XMLOUT


Leerstring

3.3.3 Rückgabewerte der Funktion


0: kein Fehler
>0: Fehlercodes siehe Kapitel 4.1

Im Rückgabeparameter XMLOUT steht im Fehlerfall die Fehlerbeschreibung im XML-Format

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 8

3.4 GetFlashProgress
Mit der Methode GetFlashProgress kann der Fortschritt des Flashvorgangs in % abgefragt
werden. Diese Methode liefert –1 wenn nicht geflasht wird.

HRESULT GetFlashProgress([in]BSTR XMLIN, [out]BSTR *XMLOUT)

3.4.1 Übergabeparameter: XMLIN


Beschreibung von DATA:

<DATA>

TAG ATTRIBUTE Kommentar


DDSACHNR Sachnummer der Diagnosedaten
DDZGS Zeichnungsgeometriestand
ECUQUALIFIER Steuergerätequalifier

Beispiel: <DATA DDSACHNR = "A7365298" DDZGS = "983"/>

3.4.2 Rückgabeparameter: XMLOUT


<DATA>

TAG ATTRIBUTE Kommentar


FLASHPROGRESS Fortschritt des Flashvorgangs (0-100)

Beispiel:
<DATA FLASHPROGRESS= "23"/>

3.4.3 Rückgabewerte der Funktion


0: kein Fehler
>0: Fehlercodes siehe Kapitel 4.1

Im Rückgabeparameter XMLOUT steht im Fehlerfall die Fehlerbeschreibung im XML-Format

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 9

3.5 DoDiagService
Mit der Methode DoDiagService kann ein beliebiger Service oder Variantenkodierung aus
der Steuergerätebeschreibungsdatei (*.cbf) ausgeführt werden. Zur Ermittlung der richtigen
Diagnosedaten kann entweder die Sachnummer und der ZGS der Diagnosedaten oder der
Steuergerätequalifier übergeben werden. Wird Sachnummer und ZGS übergeben, muß im
Attribut ECUQUALIFIER ein Leerstring übergeben werden und umgekehrt.

HRESULT DoDiagService([in]BSTR XMLIN, [out]BSTR *XMLOUT)

3.5.1 Übergabeparameter: XMLIN


Beschreibung der DATA:

<DATA>

TAG ATTRIBUTE Kommentar


DDSACHNR Sachnummer der Diagnosedaten
DDZGS Zeichnungsgeometriestand
ECUQUALIFIER Steuergeräte-Qualifier
SERVICEQUALIFIER Qualifier des Diagnosedienstes
<INPARAMETER>

<INPARAMETER>

TAG ATTRIBUTE Kommentar


NAME Name des Parameters
VALUE Wert des Parameters

Beispiel:
<DATA DDSACHNR = "A7365298" DDZGS = "983" ECUQUALIFIER = "" SERVICEQUALI-
FIER= "Werte_setzen">

<INPARAMETER NAME= "maxgeschwindigkeit“ VALUE= "250“ />


<INPARAMETER NAME= "sprache“ VALUE= "deutsch“ />
<INPARAMETER NAME= "motortyp“ VALUE= "Benzinmotor“ />
</DATA>

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 10

Rückgabeparameter: XMLOUT
<DATA>

TAG ATTRIBUTE Kommentar


SERVICEQUALIFIER Qualifier des Diagnosedienstes
SERVICENAME Name des Diagnosedienstes
<OUTPARAMETER>

<OUTPARAMETER>

TAG ATTRIBUTE Kommentar


NAME Name des Parameters
VALUE Wert des Parameters
UNIT Einheit des Parameters
TYPE Datentyp des Parameters
DESCRIPTION Beschreibung des Parameters

Beispiel:
<DATA SERVICEQUALIFIER= "read_values“ SERVICENAME = "Werte lesen“

<OUTPARMETER NAME= "maxgeschwindigkeit“ VALUE= "250“ UNIT = "km/h“


DESCRIPTION = "eingestellte Maximalgeschwindigkeit “/>
<OUTPARMETER NAME= "sprache“ VALUE= "deutsch“ UNIT = " “ DESCRIPTION =
"eingestellte Sprache“/>
<OUTPARMETER NAME= "Motortyp“ VALUE= "Benzinmotor“ UNIT = " “ DESCRIP-
TION = "Typ des eingebauten Motors “/>
</DATA>

3.5.2 Spezialfall Variantenkodierung


Variantenkodier-Dienste werden in UVI wie jeder generische Dienst aufgerufen. Die Kodie-
rung wird mit „INPARAMETER“ ausgewählt. Mit „NAME“ werden die zu kodierenden Frag-
mente gewählt, mit „VALUE“ ihre Werte. Die Anzahl und Reihenfolge der angegebenen
Fragmente ist ohne Bedeutung. Bei Angabe mehrerer Werte für das gleiche Fragment wird
der zuletzt angegebene Wert kodiert.
Der Ablauf der Kodierung in UVI intern ist allerdings komplizierter. So muß zuerst ermittelt
werden, ob es Vorbedingungen für die Variantenkodierung gibt. Wenn ja, dann werden diese
Dienste zuerst aufgerufen. Danach muss noch der Kodiermodus aktiviert werden. Diese Ak-
tionen werden von UVI aber automatisch ausgeführt. Das einzige, was für den Benutzer von
Bedeutung ist, sind die Fehlermeldungen (siehe 4.1), die bei einer Fehlfunktion geliefert wer-
den können.

3.5.3 Rückgabewerte der Funktion


0: kein Fehler
>0: Fehlercodes siehe Kapitel 4.1

Im Rückgabeparameter XMLOUT steht im Fehlerfall die Fehlerbeschreibung im XML-Format

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 11

3.6 ReadECUErrors
Mit der Methode ReadECUErrors kann der Fehlerspeicher einer ECU ausgelesen werden.
Zur Ermittlung der richtigen Diagnosedaten kann entweder die Sachnummer und der ZGS
der Diagnosedaten oder der Steuergerätequalifier übergeben werden. Wird Sachnummer
und ZGS übergeben, muß im Attribut ECUQUALIFIER ein Leerstring übergeben werden und
umgekehrt.

HRESULT ReadECUErrors([in]BSTR XMLIN, [out]BSTR *XMLOUT)

3.6.1 Übergabeparameter: XMLIN


Beschreibung der DATA:

<DATA>

TAG ATTRIBUTE Kommentar


DDSACHNR Sachnummer der Diagnosedaten
DDZGS Zeichnungsgeometriestand
ECUQUALIFIER Steuergeräte-Qualifier
ENVIRONMENTDATA Sollen die Umgebungsdaten zu den aufge-
tretenen Fehlern ausgelesen werden.
FILTERED Sollen die Fehler gemäß Vediamo Sys-
tembeschreibung gefiltert werden.

Beispiel:
<DATA DDSACHNR = "A7365298" DDZGS = "983" ECUQUALIFIER = ""
ENVIRONMENTDATA = "yes" FILTERED = "no"/ >

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 12

3.6.2 Rückgabeparameter: XMLOUT


<DATA>

TAG ATTRIBUTE Kommentar

<ERROR>

<ERROR>

TAG ATTRIBUTE Kommentar


NUMBER Fehlernummer
TEXT Beschreibung des Fehlers
ISACTIVE Fehlerstatus
ISTORED Fehlerstatus
ISMILON Fehlerstatus
<ENVDATA>

<ENVDATA>

TAG ATTRIBUTE Kommentar


NAME Name des Umgebungsdatums
DESCRIPTION Beschreibung des Umge-
bungsdatums
UNIT Einheit des Umgebungsda-
tums

Beispiel:
<DATA>

<ERROR NUMBER = "P2006“ TEXT = "Ansauglufttemperatur-Fühler“ ISACTIVE =


"YES“ ISSTORED = "NO“ ISMILON = "NO“>
<ENVDATA> NAME = "Drosselklappenwinkel (erstmals)“ DESCRIPTION =
"85,5“ UNIT = "%“/>
</ERROR>
<ERROR NUMBER = "P2006“ TEXT = "Ansauglufttemperatur-Fühler“ ISACTIVE =
"YES“ ISSTORED = "NO“ ISMILON = "NO“/>

</DATA>

3.6.3 Rückgabewerte der Funktion


0: kein Fehler
>0: Fehlercodes siehe Kapitel 4.1

Im Rückgabeparameter XMLOUT steht im Fehlerfall die Fehlerbeschreibung im XML-Format

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 13

3.7 ClearECUErrors
Mit der Methode ClearECUErrors kann der Fehlerspeicher einer ECU gelöscht werden.
Zur Ermittlung der richtigen Diagnosedaten kann entweder die Sachnummer und der ZGS
der Diagnosedaten oder der Steuergerätequalifier übergeben werden. Wird Sachnummer
und ZGS übergeben, muß im Attribut ECUQUALIFIER ein Leerstring übergeben werden und
umgekehrt.

HRESULT ClearECUErrors([in]BSTR XMLIN, [out]BSTR *XMLOUT)

3.7.1 Übergabeparameter: XMLIN


Beschreibung der DATA:

<DATA>

TAG ATTRIBUTE Kommentar


DDSACHNR Sachnummer der Diagnosedaten
DDZGS Zeichnungsgeometriestand
ECUQUALIFIER Steuergeräte-Qualifier

Beispiel:
<DATA DDSACHNR = "A7365298" DDZGS = "983" ECUQUALIFIER = ""/>

3.7.2 Rückgabeparameter: XMLOUT


Leerstring

3.7.3 Rückgabewerte der Funktion


0: kein Fehler
>0: Fehlercodes siehe Kapitel 4.1

Im Rückgabeparameter XMLOUT steht im Fehlerfall die Fehlerbeschreibung im XML-Format

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 14

3.8 TransferData
Mit der Methode TransferData können UVI neue Diagnose- und Flashdaten übergeben wer-
den. Die Daten werden als Binärdaten übergeben und von UVI wieder als Datei auf dem
Filesystem gespeichert.

Für Diagnosedaten:
Zum momentanen Zeitpunkt(solange die Sachnummer an den Varianten hängt), können
Diagnosedaten nur mit dem ECUQUALIFIER (z.B. xyz) an UVI übergeben werden. Sie
werden dann mit dem Namen „xyz.cbf“ auf der Platte abgespeichert. Existiert bereits ei-
ne Datei mit diesem Namen, wird diese überschrieben. Wird bei ECUQUALIFIER ein
anderer ECUQUALIFIER übergeben als der, der sich im .cbf befindet, führt dies zu Fehl-
verhalten der UVI-Schnittstelle.

Für Flashdaten:
Flashdaten werden unter dem Namen „Sachnummer.cff“ auf der Festplatte abgelegt. E-
xistiert bereits eine datei diesen Namens, wird diese überschrieben. UVI kümmert sich
nicht um die ZGS, sondern geht davon aus, dass von UNIPAS für jede Sachnummer
immer die Datei mit dem aktuellen ZGS übergeben wird und zuvor die alte Datei mit De-
leteData gelöscht wird.

HRESULT TransferData([in]BSTR XMLIN, [in]SAFEARRAY(unsigned


char) *DiagFlashData, [out]BSTR *XMLOUT)

3.8.1 Übergabeparameter:
XMLIN:
Beschreibung der DATA:

<DATA>
TAG ATTRIBUTE Kommentar
FWSACHNR Sachnummer der Daten
FWZGS Zeichnungsgeometriestand
ECUQUALIFIER Steuergeräte-Qualifier
TYPE Typ des Files (Diagnose- oder Flashdaten)
TYPE kann die folgenden Werte annehmen = „DIAG“ und „FLASH“

Beispiel:
<DATA FWSACHNR = "A7365298" FWZGS = "" ECUQUALIFIER = "" TYPE = "FLASH"/>

DiagFlashData:
Array mit dem Inhalt einer .cbf oder.cff Datei.

3.8.2 Rückgabeparameter: XMLOUT


Leerstring

3.8.3 Rückgabewerte der Funktion


0: kein Fehler
>0: Fehlercodes siehe Kapitel 4.1

Im Rückgabeparameter XMLOUT steht im Fehlerfall die Fehlerbeschreibung im XML-Format

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 15

3.9 DeleteData
Mit der Methode DeleteData können bereits an UVI übergebene Daten wieder gelöscht wer-
den. UVI entfernt diese wieder vom Dateisystem.

Für Diagnosedaten:
Zum momentanen Zeitpunkt (solange die Sachnummer an den Varianten hängt), können
Diagnosedaten nur mit dem ECUQUALIFIER aus UVI gelöscht werden. UVI sucht nach
einem File „ecuqualifier.cbf in seinem Datenverzeichnis. Der ecuqualifier muß mit dem
der beim übergeben dieser Diagnosedaten mit Transferdata angegebenen Namen über-
einstimmen, damit die datei gelöscht werden kann.

Für Flashdaten:
Zum Löschen von Flashdaten wird nach einer Datei „Sachnummer.cff“ im Datenver-
zeichnis gesucht und dann gelöscht.

HRESULT DeleteData([in]BSTR XMLIN, [out]BSTR *XMLOUT)

<DATA>

TAG ATTRIBUTE Kommentar


FWSACHNR Sachnummer der Daten
FWZGS Zeichnungsgeometriestand
ECUQUALIFIER Steuergeräte-Qualifier
TYPE Typ des Files (Diagnose- oder Flashdaten)
TYPE kann die folgenden Werte annehmen = „DIAG“ und „FLASH“

Beispiel:
<DATA FWSACHNR = "A7365298" FWZGS = "" ECUQUALIFIER = "" TYPE = "FLASH"/>

3.9.1 Rückgabeparameter: XMLOUT


Leerstring

3.9.2 Rückgabewerte der Funktion


0: kein Fehler
>0: Fehlercodes siehe Kapitel 4.1

Im Rückgabeparameter XMLOUT steht im Fehlerfall die Fehlerbeschreibung im XML-Format

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 16

3.10 GetVersionInfo
Mit der Methode GetVersionInfo können die versionen der verwendeten Module ausgelesen
werden. Es wird die Version von UVI, des Vediamo-Servers, sowie die CAESAR-Version
zurückgeliefert.

HRESULT GetVersionInfo([in]BSTR XMLIN, [out]BSTR *XMLOUT)

3.10.1 Übergabeparameter: XMLIN


Leerstring

3.10.2 Rückgabeparameter: XMLOUT


<DATA>

TAG ATTRIBUTE Kommentar


UVIVERSION Version des UVI-Moduls
VEDIAMOVERSION Version des Vediamo-Servers
CAESARVERSION Version der CAESAR.dll

Beispiel:
<DATA UVIVERSION = "01.00.00" VEDIAMOVERSION = "02.00.02" CAESARVERSION =
"02.08.03"/>

3.10.3 Rückgabewerte der Funktion


0: kein Fehler
>0: Fehlercodes siehe Kapitel 4.1

Im Rückgabeparameter XMLOUT steht im Fehlerfall die Fehlerbeschreibung im XML-Format

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 17

3.11 ReadIDInformation
Mit dieser Methode wird der Inhalt des ECU-ID-Blocks bzw. des Flash-ID-Blocks aus dem
ECU ausgelesen.

HRESULT ReadIDInformation([in]BSTR XMLIN, [out]BSTR *XMLOUT)

3.11.1 Übergabeparameter: XMLIN


Beschreibung der DATA:

<DATA>

TAG ATTRIBUTE Kommentar


DDSACHNR Sachnummer der Diagnosedaten
DDZGS Zeichnungsgeometriestand
ECUQUALIFIER Steuergeräte-Qualifier
IDTYPE Typ des auszulesenden ID-Blocks

IDTYPE kann folgende Werte annehmen:


IDTYPE Bedeutung
BOOTFPRINT Fingerprint der Boot-Flashware
BOOTSWID Software-ID der Boot-Flashware
CODEFPRINT Fingerprint des Codebereichs der Flashware
CODESWID Software-ID des Codebereichs der Flashware
DATAFPRINT Fingerprint des Datenbereichs der Flashware
DATASWID Software-ID des Datenbereichs der Flashware
ECUIDINFO ID-Block des ECU

Beispiel:
<DATA DDSACHNR = "" DDZGS = "" ECUQUALIFIER = "SIM4" IDTYPE=“ECUID“ />

3.11.2 Rückgabeparameter: XMLOUT


<DATA>

TAG ATTRIBUTE Kommentar


ECUQUALIFIER Steuergeräte-Qualifier
IDTYPE Typ des auszulesenden ID-Blocks
<IDBLOCK>

<IDBLOCK>

TAG ATTRIBUTE Kommentar


<INFORMATION>

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 18

<INFORMATION>

TAG ATTRIBUTE Kommentar


NAME Name des ID-Block-Datums
VALUE Wert des ID-Block-Datums

Je nach gewähltem IDTYPE kann das Attribut NAME die folgenden Werte enthalten:
1. IDTYPE = BOOTSWID, CODESWID oder DATASWID:
• SUPPLIERID
• DIAGID
• SWVERSION
• PARTNUMBER
2. IDTYPE = BOOTFPRINT, CODEFPRINT oder DATAFPRINT:
• SUPPLIERID
• PROGRAMMINGDATE
• TESTERSERIAL
3. IDTYPE = ECUIDINFO
• MBNUMBER
• HWVersion
• SWVersion
• MBSUPPLIER
• DIAGVERSION
• ECUIDENTIFIER
• DIAGSTAND
• MANUFACTURINGDATE

Beispiel:
<DATA ECUQUALIFIER=“nag2“ IDTYPE=“DATAFPRINT“>
<IDBLOCK>
<IDINFORMATION NAME=“SUPPLIERID“ VALUE=“2“ />
<IDINFORMATION NAME=“PROGRAMMINGDATE“ VALUE=“01/11/02“ />
<IDINFORMATION NAME=“TESTERSERIAL“ VALUE=“8468757“ />
</IDBLOCK>
</DATA>

3.11.3 Rückgabewerte der Funktion


0: kein Fehler
>0: Fehlercodes siehe Kapitel 4.1

Im Rückgabeparameter XMLOUT steht im Fehlerfall die Fehlerbeschreibung im XML-Format

3.12 FindECU
Mit der Methode FindECU wird überprüft, welches Steuergerät aus einer Liste von Steuerge-
räten angeschlossen ist. Als „erkannt“ bzw. „gefunden“ gilt ein ECU, das unter der (in der
Systembeschreibung) angegebenen Ressource kontaktiert werden konnte und dessen Vari-
ante erkannt wurde.

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 19

Es werden nacheinander alle in der VSB angegebenen ECUs durchgetestet, die im Parame-
ter ECUQUALIFIER angegeben sind. Ist der Parameter leer, so werden alle ECUs aus der
VSB durchprobiert.

HRESULT FindECU([in]BSTR XMLIN, [out]BSTR *XMLOUT)

3.12.1 Übergabeparameter: XMLIN


Beschreibung von DATA:

<DATA>

TAG ATTRIBUTE Kommentar


ECUQUALIFIER Liste der Steuergerätequalifier

Die Liste der ECU-Qualifier ist eine kommagetrennte Liste. Groß/Kleinschreibung wird be-
achtet.

Beispiel: <DATA ECUQUALIFIER=“CR2,CR3,ME28“ />

3.12.2 Rückgabeparameter: XMLOUT


<DATA>

TAG ATTRIBUTE Kommentar


ECU Qualifier des erkannten Steuergeräts
VARIANT Qualifier der erkannten Variante

Wird kein ECU erkannt, so sind beide Parameter (ECU und VARIANT) leer.

Beispiel:
<DATA ECU="ME28" VARIANT=“M112_0245457032_E3“ />

3.12.3 Rückgabewerte der Funktion


0: kein Fehler (auch bei nicht erkanntem ECU)
>0: Fehlercodes siehe Kapitel 4.1 (z.B. Server nicht initialisiert, Fehler im Eingabeparameter
usw.)

Im Rückgabeparameter XMLOUT steht im Fehlerfall die Fehlerbeschreibung im XML-Format

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 20

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 21

4 Fehlerbehandlung
Im Fehlerfall liefern die Methoden einen XML-String mit folgendem Format:

<DATA>

TAG ATTRIBUTE Kommentar


ERRORTEXT Beschreibung des Fehlers
ERRORTYPE Typ des Fehlers

Beispiel:
<DATA ERRORTEXT="ECU-Initialisierung fehlgeschlagen" ERRORTYPE="UVI_ERROR“/>

4.1 Liste der möglichen Fehlercodes:

4.1.1 UVI Fehlercodes


Fehler- Fehlertyp Fehlertext
nummer
102000 UVI_ERROR Nicht spezifizierter Fehler
102001 UVI_ERROR ECU-Initialisierung fehlgeschlagen
102002 UVI_ERROR Generic Service fehlgeschlagen
102003 UVI_ERROR Leere Parameterliste
102004 UVI_ERROR Falsche Parameterliste
102005 UVI_ERROR Der Eintrag „[UVI] System „konnte in der vediamo.ini nicht gefunden werden.
102006 UVI_ERROR ECU ist nicht im Flashing-State
102007 UVI_ERROR Ungültiger ECU-Qualifier
102008 UVI_ERROR Ungültiger Service Qualifier
102009 UVI_ERROR Falsche Anzahl Eingangsparameter
102010 UVI_ERROR Vediamo konnte nicht in den FlashingState versetzt werden.
102011 UVI_ERROR Falsche Vediamo-Serverversion
102012 UVI_ERROR Keinen ECU-Qualifier für die folgende Sachnummer gefunden:
102013 UVI_ERROR Keine Flashware für den folgenden Flashkey gefunden:
102014 UVI_ERROR Es ist nicht möglich das gewünschte System im Vediamo Server zu laden
102015 UVI_ERROR Der Diagnosedienst konnte von Vediamo nicht ausgeführt werden
102016 UVI_ERROR Falscher INPUT-Parameter. Name nicht gefunden
102017 UVI_ERROR CFF/CBF-File konnte nicht gelesen werden. Das File ist möglicherweise nicht
vorhanden.
102018 UVI_ERROR CFF/CBF-File konnte nicht geschrieben werden. Das File ist möglicherweise
schon vorhanden.
102019 UVI_ERROR Es konnte kein Kontakt zum Vediamo Server hergestellt werden
102020 UVI_ERROR UVI wurde nicht initialisiert, Die Methode Init wurde nicht aufge-rufen
2080 UVI_ERROR VarCoding-Modus kann nicht aktiviert werden
2081 UVI_ERROR Vorbedingung kann nicht ausgeführt werden
2082 UVI_ERROR Vorbedingung für Kodierung fehlerhaft

Dok-Ref: UVIInterfacebeschreibung.doc
T-Systems GEI GmbH UNIPAS
Geschäftsstelle Ulm Vediamo
Interface
Seite 22

4.1.2 XML-Parser Fehlercodes


202100 XML_ERROR XML-Dokument konnte nicht geladen werden
202101 XML_ERROR Fehlender Wert für Attribut
202102 XML_ERROR Fehlendes Attribut
202103 XML_ERROR Ungültiger Wert für Attribut
202104 XML_ERROR Nicht existierender Knoten

4.1.3 Vediamo Fehlercodes


Fehler- Fehlertyp Fehlertext
nummer
00xxxx VEDIAMO_ERROR Einzelne Fehler siehe Vediamo Dokumentation

Dok-Ref: UVIInterfacebeschreibung.doc

Das könnte Ihnen auch gefallen