Skip to content

EHPSR50.prg

  • Jobs: 29
  • Tables: 6

INFO

Field Value
ECU EHPSR50
ORIGIN BMW TI-431 Siegfried Helmich
REVISION 1.1
AUTHOR Software-Style M.Rafferty
COMMENT Basiert auf Spec Version A8
PACKAGE 0.06
SPRACHE deutsch

Jobs

Index

INITIALISIERUNG

Initialisierung und Kommunikationsparameter

No arguments.

Results

Name Type Comment
DONE int 1, wenn Okay

INFO

Information SGBD

No arguments.

Results

Name Type Comment
ECU string Steuergerät im Klartext
ORIGIN string Steuergeräte-Verantwortlicher
REVISION string Versions-Nummer
AUTHOR string Namen aller Autoren
COMMENT string wichtige Hinweise
PACKAGE string Include-Paket-Nummer
SPRACHE string deutsch, english

IDENT

Ident-Daten fuer EHPS

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
ID_BMW_NR string BMW-Teilenummer BMW Part number
ID_HW_NR int BMW-Hardwarenummer
ID_COD_INDEX int Codier-Index
ID_DIAG_INDEX int Diagnose-Index
ID_SYSTEM_NAME int BMW system name
ID_DATUM_TAG int Herstelldatum tag Day of manufacture
ID_DATUM_MON int Herstelldatum monat Month of manufacture
ID_DATUM_JAHR int Herstelldatum Jahr Year of manufacture
ID_LIEF_NR int Lieferanten-Nummer Supplier code
ID_LIEF_TEXT string Lieferanten-Text Supplier Name
ID_SW_NR int Softwarenummer
ID_BUS_INDEX int Bus-Index
ID_AIF_VORHANDEN int Ist ein AIF vorhanden (0 (nein)/ 1 (ja)) Is AIF data available 0=no 1=yes
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

IDENT_EXTENDED

Read additional ECU Ident information

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
ID_SIEMENS_HW_NR string Siemens ECU hardware number
ID_SIEMENS_SW_NR string Siemens ECU software number
ID_SIEMENS_SW_VERSION_NR string Siemens ECU software version number
ID_PROG_DATUM_TAG int Programm tag Day of programming
ID_PROG_DATUM_MON int Programm monat Month of programming
ID_PROG_DATUM_JAHR int Programm jahr Year of programming
_TEL_ANTWORT1 binary Hex-Antwort von SG Read Siemens HW NR response
_TEL_ANTWORT2 binary Hex-Antwort von SG Read Siemens SW NR response
_TEL_ANTWORT3 binary Hex-Antwort von SG Read Siemens SW Version NR response
_TEL_ANTWORT4 binary Hex-Antwort von SG Read Siemens Programming date response

DIAGNOSE_AUFRECHT

Tester present message

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

START_DIAGNOSTIC_SESSION

Begins a diagnostic session

Arguments

Name Type Comment
MODE int Diagnostic mode: 0x81=Standard, 0x85=Programming

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_SENDE binary Sendetelegramm anzeigen Telegram sent to ECU
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

SG_RESET

Reset the ECU

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

FS_LESEN

Read internal and external faults

No arguments.

Results

Name Type Comment
JOB_STATUS string OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
F_HEX_CODE binary Fehlerdaten pro Fehler als Hexcode Raw fault data from the ECU
F_ORT_NR int Index fuer Fehlerort Fault number
F_ORT_TEXT string Fehlerort als Text Fault description
F_HFK int Fehlerhaeufigkeit Frequency
F_UW_ANZ int Anzahl der Umweltbedingungen Count of Environment Data Items per fault
F_ART_ANZ int Anzahl der Fehlerarten Count of additional fault status information per fault
F_ART1_NR int 1. (einzige) Fehlerart Fault status 1 number
F_ART1_TEXT string 1. (einzige) Fehlerart als Text Fault status 1 text
F_ART2_NR int 2. (einzige) Fehlerart Fault status 2
F_ART2_TEXT string 2. (einzige) Fehlerart als Text Fault string 2
F_ART3_NR int 3. (einzige) Fehlerart Fault status 3
F_ART3_TEXT string 3. (einzige) Fehlerart als Text Fault string 3
F_ART4_NR int 4. (einzige) Fehlerart Fault status 4
F_ART4_TEXT string 4. (einzige) Fehlerart als Text Fault string 4
F_ART5_NR int 5. (einzige) Fehlerart Fault status 5
F_ART5_TEXT string 5. (einzige) Fehlerart als Text Fault string 5
F_ART6_NR int 6. (einzige) Fehlerart Fault status 6
F_ART6_TEXT string 6. (einzige) Fehlerart als Text Fault string 6
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

FS_LOESCHEN

Clears All Faults

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

STATUS_FS_LESEN

Read number of faults and earliest faults through snapshot

No arguments.

Results

Name Type Comment
JOB_STATUS string OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet
STAT_FAULT_COUNT int Fehler zaehlen Count of all faults up to a maximum of 10
F_HEX_CODE binary Fehlerdaten pro Fehler als Hexcode Raw fault data from the ECU
F_ORT_NR int Index fuer Fehlerort Fault number
F_ORT_TEXT string Fehlerort als Text Fault description
F_HFK int Fehlerhaeufigkeit Frequency
F_UW_ANZ int Anzahl der Umweltbedingungen Count of Environment Data Items per fault
F_ART_ANZ int Anzahl der Fehlerarten Count of additional fault status information per fault
F_ART1_NR int 1. (einzige) Fehlerart Fault status 1 number
F_ART1_TEXT string 1. (einzige) Fehlerart als Text Fault status 1 text
F_ART2_NR int 2. (einzige) Fehlerart Fault status 2
F_ART2_TEXT string 2. (einzige) Fehlerart als Text Fault string 2
F_ART3_NR int 3. (einzige) Fehlerart Fault status 3
F_ART3_TEXT string 3. (einzige) Fehlerart als Text Fault string 3
F_ART4_NR int 4. (einzige) Fehlerart Fault status 4
F_ART4_TEXT string 4. (einzige) Fehlerart als Text Fault string 4
F_ART5_NR int 5. (einzige) Fehlerart Fault status 5
F_ART5_TEXT string 5. (einzige) Fehlerart als Text Fault string 5
F_ART6_NR int 6. (einzige) Fehlerart Fault status 6
F_ART6_TEXT string 6. (einzige) Fehlerart als Text Fault string 6

STATUS_IO_LESEN

Read Digital inputs/outputs

No arguments.

Results

Name Type Comment
JOB_STATUS string OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet
STAT_IGNITION_ON int 1 wenn einschalten / 0 wenn ausschalten 1=on, 0=off
STAT_ENGINE_RUNNING int 1 wenn ein / 0 wenn aus 1=on, 0=off
STAT_APPLICATION_RUNNING int 1 wenn ein / 0 wenn aus 1=on, 0=off
STAT_SPEED_CONTROL_ENABLED int 1 wenn activ / 0 wenn aus 1=enabled, 0=disabled
STAT_DIAGNOSTIC_CONTROL_MODE_ON int 1 wenn activ / 0 wenn aus 1=on, 0=off

STATUS_ANALOG

Read Analogue Input / Outputs

No arguments.

Results

Name Type Comment
JOB_STATUS string OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet
STAT_BATTERY_VOLTS_WERT real 0 -> 25.5 V
STAT_BATTERY_VOLTS_EINH string
STAT_TEMPERATURE_WERT real -40 -> 215 Deg C
STAT_TEMPERATURE_EINH string
STAT_MOTOR_CURRENT_WERT real 0 -> 127.5 A
STAT_MOTOR_CURRENT_EINH string
STAT_MOTOR_SPEED_WERT real 0 -> 5100 rpm
STAT_MOTOR_SPEED_EINH string
STAT_MOTOR_VOLTAGE_WERT real 0 -> 25.5 V
STAT_MOTOR_VOLTAGE_EINH string
STAT_PWM_MOTOR_CONTROL_WERT real 0 -> 100 %
STAT_PWM_MOTOR_CONTROL_EINH string
STAT_MOTOR_SPEED_CONTROL_WERT real 0 -> 5100 rpm
STAT_MOTOR_SPEED_CONTROL_EINH string
STAT_PWM_OUT_WERT real 0 -> 100 %
STAT_PWM_OUT_EINH string
STAT_MOTOR_CURRENT_MAX_WERT real 0 -> 127.5 A
STAT_MOTOR_CURRENT_MAX_EINH string
STAT_BATTERY_CURRENT_MAX_WERT real 0 -> 127.5 A
STAT_BATTERY_CURRENT_MAX_EINH string
STAT_ENGINE_RUNNING_ANALOG_WERT real 0 -> 20.4 V
STAT_ENGINE_RUNNING_ANALOG_EINH string
STAT_MOTOR_RESISTANCE_WERT real 0 -> 199 mOhms
STAT_MOTOR_RESISTANCE_EINH string
STAT_EMF_COEF_WERT real 0 -> 797 rpm/V
STAT_EMF_COEF_EINH string

STEUERN_PWM

Force the Pulse Width Modulation from 0 to 100%

Arguments

Name Type Comment
VALUE int Value to set the PWM ( 0 -> 100 % )

Results

Name Type Comment
STAT_PWM_WERT int New value for the PWM as %
STAT_PWM_EINH string Unit of PWM = %
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_SENDE binary Sendetelegramm anzeigen Telegram sent to ECU
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

STEUERN_PWM_RESET

Return PWM output control to the application software

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

READ_MEMORY

Read ECU Memory by Address Speicher auslesen

Arguments

Name Type Comment
MEM_ADDRESS unsigned int 16 bit ECU memory address 0x0000 -> 0x00FF: DATA memory 0x9F80 -> 0x9FBF: EEPROM memory used for Siemens logistic data 0x9FC0 -> 0x9FFF: EEPROM memory used for ZF data area 0xFF00 -> 0xFFFF: XDATA memory
MEM_LENGTH int Length of memory to read (1 -> 20)

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
MEM_DATA binary ECU memory which is read
_TEL_SENDE binary Sendetelegramm anzeigen Telegram sent to ECU
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

READ_SIEMENS_SERIAL_NR

Read the Siemens serial number

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
SERIAL_NR string Siemens serial number
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

READ_ZF_HW_NR

Read the ZF ECU Hardware number

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
ZF_HW_NR string ZF ECU Hardware number
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

WRITE_MEMORY

Write memory to a specified address Speicher schreiben

Arguments

Name Type Comment
ADDRESS unsigned int 16 bit ECU memory address 0x0000 -> 0x00FF: DATA memory 0x9FC0 -> 0x9FFF: EEPROM memory used for ZF data area 0xFF00 -> 0xFFFF: XDATA memory
LENGTH int Length of memory to write (1 -> 20)
MEMDATA string Data to write

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_SENDE binary Sendetelegramm anzeigen Telegram sent to ECU
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

WRITE_ZF_HW_NR

Write the ZF ECU Hardware Number

Arguments

Name Type Comment
ZF_NR string ZF ECU Hardware Number 12 characters

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_SENDE binary Sendetelegramm anzeigen Telegram sent to ECU
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

SEED_KEY

Obtain security access to the ECU Schutzmechanismus SEED_KEY

Arguments

Name Type Comment
LEVEL int Security Access level 1=Dealer, 2=Programming

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_SENDE1 binary Sendetelegramm anzeigen Send key telegram to ECU - request seed
_TEL_ANTWORT1 binary Hex-Antwort von SG Request seed response
_TEL_SENDE2 binary Sendetelegramm anzeigen Send key telegram to ECU - send key
_TEL_ANTWORT2 binary Hex-Antwort von SG Send key response

CHECK_REPROG_DEPENDING

Calculate the checksum and check the coherence system

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

REPORT_REPROG_STATUS

Get the status of reprogramming after a mistake

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet
REPROG_STATUS unsigned int Reprogramming status Bit0: checksum of ECU EEPROM software - if error then TRUE Bit1: ECU EEPROM software does not fit to ROM software - if error then TRUE Bit2: always FALSE Bit3: always FALSE Bit4: always FALSE Bit5: always FALSE Bit6: always FALSE Bit7: always FALSE

FLASH_SCHREIBEN_ADRESSE

Request download

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

FLASH_SCHREIBEN

Transfer data to the ECU Data is transfered in blocks of 62 bytes (maximum 128 x 62 == 7936 bytes)

Arguments

Name Type Comment
DATA binary Data to transfer to the ECU (62 bytes)

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_SENDE binary Sendetelegramm anzeigen Telegram sent to ECU
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

FLASH_SCHREIBEN_ENDE

Exit data transfer

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

PROG_DATUM_SCHREIBEN

Schreiben der Programm datum Write the programming date

Arguments

Name Type Comment
PROG_DATUM_TAG int Programm tag (1 -> 31) Day of programming
PROG_DATUM_MON int Programm monat (1 -> 12) Month of programming
PROG_DATUM_JAHR int Programm jahr - (2000 -> 9999) Year of programming

Results

Name Type Comment
JOB_STATUS string OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_SENDE binary Sendetelegramm anzeigen Write program data telegram to ECU
_TEL_ANTWORT1 binary Hex-Antwort von SG Write program date response
_TEL_ANTWORT2 binary Hex-Antwort von SG Read program date response

C_FG_LESEN

Auslesen der Fahrgestellnummer Read the VIN

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
FG_NR string Fahrgestellnummer VIN
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

C_FG_AUFTRAG

Schreiben der Fahrgestellnummer Write the VIN

Arguments

Name Type Comment
FG_NR string Fahrgestellnummer (18-stellig) VIN - stored as 17 ascii characters ( + 1 ascii checksum ) string can be 17 or 18 characters - if 18 the last character is ignored

Results

Name Type Comment
JOB_STATUS string OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_SENDE binary Sendetelegramm anzeigen Write VIN telegram to ECU
_TEL_ANTWORT1 binary Hex-Antwort von SG Write VIN response
_TEL_ANTWORT2 binary Hex-Antwort von SG Read VIN response

DIAGNOSE_ENDE

Diagnosemode des SG beenden Stop the diagnostic session

No arguments.

Results

Name Type Comment
JOB_STATUS string Status der Kommunikation - OKAY, wenn fehlerfrei table JobResult STATUS_TEXT
_TEL_ANTWORT binary Hex-Antwort von SG ECU response packet

Tables

Index

JOBRESULT

Dimensions: 22 rows × 2 columns

SB STATUS_TEXT
0x11 SERVICE NICHT UNTERSTÜTZT
0x12 SUB-FUNKTION NICHT UNTERSTÜTZT
0x22 Bedingung nicht korrekt
0x31 Anfrage außer Toleranz
0x33 Sicherheitszugang aberkannt / erforderlich
0x35 Ungültiger Schlüssel
0x36 Anzal der Versuche überschritten
0x37 Erforderliche Zeitverzögerung nicht abgelaufen
0x40 Hinunterladen nicht erlaubt
0x41 Unzulässiger Typ zum hinunterladen
0x42 Spezifizierte Adresse kann nicht hinuntergeladen werden
0x50 Hochladen nicht erlaubt
0x52 Hochladen von spezifizierte Adress nicht möglich
0x53 Die angefordrte Anzahl Bytes kann nicht hochgeladen werden
0x78 Anfoderung korrekt erhalten - Antwort noch offen
0x79 Inkorrekte BYTE Anzahl während Block Transfer
0x80 Service nicht unterstützt im aktuellen Diagnose Mode
0x90 Vorgang nicht ausgeführt
0x91 Ungültiges Nachrichten Format
0xA0 OKAY
0xFF ERROR_ECU_NACK
0x00 ERROR_ECU_UNKNOWN_STATUSBYTE

LIEFERANTEN

Dimensions: 56 rows × 2 columns

LIEF_NR LIEF_TEXT
0x01 Reinshagen => Delphi
0x02 Kostal
0x03 Hella
0x04 Siemens
0x05 Eaton
0x06 UTA
0x07 Helbako
0x08 Bosch
0x09 Loewe => Lear
0x10 VDO
0x11 Valeo
0x12 MBB
0x13 Kammerer
0x14 SWF
0x15 Blaupunkt
0x16 Philips
0x17 Alpine
0x18 Teves
0x19 Elektromatik Suedafrika
0x20 Becker
0x21 Preh
0x22 Alps
0x23 Motorola
0x24 Temic
0x25 Webasto
0x26 MotoMeter
0x27 Delphi PHI
0x28 DODUCO => BERU
0x29 DENSO
0x30 NEC
0x31 DASA
0x32 Pioneer
0x33 Jatco
0x34 Fuba
0x35 UK-NSI
0x36 AABG
0x37 Dunlop
0x38 Sachs
0x39 ITT
0x40 FTE
0x41 Megamos
0x42 TRW
0x43 Wabco
0x44 ISAD Electronic Systems
0x45 HEC (Hella Electronics Corporation)
0x46 Gemel
0x47 ZF
0x48 GMPT
0x49 Harman Kardon
0x50 Remes
0x51 ZF Lenksysteme
0x52 Magneti Marelli
0x53 Borg Instruments
0x54 GETRAG
0x55 BHTC
0xFF unbekannter Hersteller

DIGITAL

Dimensions: 6 rows × 4 columns

NAME BYTE MASK VALUE
IGNITION_ON 13 0x01 0x01
ENGINE_RUNNING 13 0x02 0x02
APPLICATION_RUNNING 13 0x04 0x04
SPEED_CONTROL_ENABLED 13 0x08 0x08
DIAGNOSTIC_CONTROL_MODE_ON 13 0x10 0x10
?? 0 0x00 0xFF

ANALOG

Dimensions: 14 rows × 4 columns

NAME FACT_A FACT_B EINH
BATTERY_VOLTS 0.1 0.0 V
TEMPERATURE 1.0 -40.0 Grad C
MOTOR_CURRENT 0.5 0.0 A
MOTOR_SPEED 20.0 0.0 min-1
MOTOR_VOLTAGE 0.1 0.0 V
PWM_MOTOR_CONTROL 0.39215686 0.0 %
MOTOR_SPEED_CONTROL 20.0 0.0 min-1
PWM_OUT 0.39215686 0.0 %
MOTOR_CURRENT_MAX 0.5 0.0 A
BATTERY_CURRENT_MAX 0.5 0.0 A
ENGINE_RUNNING_ANALOG 0.08 0.0 V
MOTOR_RESISTANCE 0.78 0.0 mOhms
EMF_COEF 3.125 0.0 min-1/V
Ungültige Ziffer 0.0 0

FORTTEXTE

Dimensions: 8 rows × 2 columns

ORT ORTTEXT
0x5523 Batterie Spannungsfehler
0x5517 Übertemperatur oder schlechtes Temperatursignal
0x5531 Verriegelungsschutz
0x5550 Motor Kurzschluß oder offener Stromkreis
0x5529 FET Kurzschluß oder offener Stromkreis
0x5508 Ungültiger Motorlauf
0x5507 Ungültige Motorspannung
0xFFFF Ungültiger Fehler

FARTTEXTE

Dimensions: 10 rows × 2 columns

ARTNR ARTTEXT
0x00 --
0x01 über max Schwellwert
0x02 unter min Schwellwert
0x03 kein siknal gefunden
0x04 ungültiges Signal
0x05 --
0x06 Fehler momentan nicht vorhanden
0x07 Fehler momentan vorhanden
0x08 --
0xFF unbekannter Status