• No results found

KW2000 Supported Services

N/A
N/A
Protected

Academic year: 2021

Share "KW2000 Supported Services"

Copied!
51
0
0

Loading.... (view fulltext now)

Full text

(1)
(2)

Rev.

Rev. Date Date DescriptionDescription AuthorAuthor R00 17/03/2006

R00 17/03/2006 Initial revisionInitial revision G. PirovanoG. Pirovano

R01 13/04/2006

R01 13/04/2006 Inserted theInserted the Request freeze fr Request freeze frame dataame data serviceservice G. PirovanoG. Pirovano

REG

REG PIRO04/SAM04 – ISO14230 – KW2000 PROTOCOL – PIRO04/SAM04 – ISO14230 – KW2000 PROTOCOL – SUPPORTED SERVICESSUPPORTED SERVICES Written by: Giancarlo Pirovano

Written by: Giancarlo Pirovano

(3)

INDEX

INDEX

CHAPTER

CHAPTER 1: 1: INTRODUCTION INTRODUCTION 11

CHAPTER

CHAPTER 2: 2: NORMATIVE NORMATIVE REFERENCES REFERENCES 11

CHAPTER

CHAPTER 3: 3: DEFINITIONS DEFINITIONS 22

CHAPTER

CHAPTER 4: 4: KW2000 KW2000 GENERAL GENERAL INFORMATION INFORMATION 22

4.1 H

4.1 HEADER EADER  33

4.1.1 F

4.1.1 FORMAT BYTEORMAT BYTE 33

4.1.2 T

4.1.2 TARGET ADDRESS BYTEARGET ADDRESS BYTE 44

4.1.3 S

4.1.3 SOURCE ADDRESS BYTEOURCE ADDRESS BYTE 44

4.1.4 D

4.1.4 DATA LENGTH BYTEATA LENGTH BYTE 44

4.2 D

4.2 DATA BYTESATA BYTES 44

4.3 C

4.3 CHECKSUM BYTESHECKSUM BYTES 44

4.4 T

4.4 TIMINGSIMINGS 55

CHAPTER

CHAPTER 5: 5: INITIALIZATINITIALIZATION ION 55

5.1 CARB

5.1 CARB INITIALIZATIONINITIALIZATION 66

5.2 5

5.2 5 BAUD INITIALIZATIONBAUD INITIALIZATION((OR SLOW INITOR SLOW INIT) ) 66 5.3 F

5.3 FAST INIT INITIALIZATIONAST INIT INITIALIZATION 77

5.4 K 

5.4 K EY BYTESEY BYTES 77

5.5 M

5.5 MULTIUSER BUS ISSUEULTIUSER BUS ISSUE 88

CHAPTER

CHAPTER 6: 6: SERVICES SERVICES SUPPRTED SUPPRTED BY BY GAS GAS ECU ECU 1010 6.1 S

6.1 START COMMUNICATION SERVICETART COMMUNICATION SERVICE 1111

6.2 S

6.2 STOP COMMUNICATION SERVICETOP COMMUNICATION SERVICE 1313

6.3 R 

6.3 R EQUEST CURRENT POWERTRAIN DIAGNOSTIC DATAEQUEST CURRENT POWERTRAIN DIAGNOSTIC DATA 1414 6.4 R 

6.4 R EQUEST POWERTRAIN FREEZE FRAME DATAEQUEST POWERTRAIN FREEZE FRAME DATA 1616 6.5 R 

6.5 R EQUEST EMISSION RELATED DIAGNOSTIC TROBLE CODESEQUEST EMISSION RELATED DIAGNOSTIC TROBLE CODES 1818 6.6 C

6.6 CLEAR EMISSION RELATEDLEAR EMISSION RELATEDDTC DTC 1919

6.7 T

6.7 TESTER PRESENTESTER PRESENT 1919

6.8 S

6.8 START DIAGNOSTIC SESSIONTART DIAGNOSTIC SESSION 1919

6.9 S

(4)

6.10 S

6.10 SECURITY ACCESSECURITY ACCESS 2121

6.11 ECU

6.11 ECU RESETRESET 2323

6.12 R 

6.12 R EADEADECUECU IDENTIFICATIONIDENTIFICATION 2323

6.12.1 H

6.12.1 HARDWARE IDENTIFICATIONARDWARE IDENTIFICATION 2424

6.12.2 F

6.12.2 FIRMWARE IDENTIFICATIONIRMWARE IDENTIFICATION 2424

6.12.3 C

6.12.3 CONFIGURATION IDENTIFICATIONONFIGURATION IDENTIFICATION 2525 6.13 R 

6.13 R EQUEST VEHICLE INFORMATIONEQUEST VEHICLE INFORMATION 2525

6.13.1 R 

6.13.1 R EPORT SUPPORTED INFO TYPES REQUESTEPORT SUPPORTED INFO TYPES REQUEST 2525

6.13.2 M

6.13.2 MESSAGES TO REPORT THEESSAGES TO REPORT THEVVEHICLEEHICLEIIDENTIFICATIONDENTIFICATION N NUMBER REQUESTUMBER REQUEST 2626

6.13.3 V

6.13.3 VEHICLEEHICLEIIDENTIFICATIONDENTIFICATION N NUMBER UMBER  2626 6.14 W

6.14 WRITE DATA BY LOCAL IDENTIFIER RITE DATA BY LOCAL IDENTIFIER  2727

6.14.1 V

6.14.1 VEHICLEEHICLEIIDENTIFICATIONDENTIFICATION N NUMBER UMBER  2828 6.15 R 

6.15 R EAD DATA BY LOCAL IDENTIFIER EAD DATA BY LOCAL IDENTIFIER  2828

6.15.1 V

6.15.1 VEHICLEEHICLEIIDENTIFICATIONDENTIFICATION N NUMBER UMBER  3030

6.15.2 ECU M

6.15.2 ECU MEASUREMENTSEASUREMENTS 3030

6.16 R 

6.16 R EAD DIAGNOSTIC TROBLE CODESEAD DIAGNOSTIC TROBLE CODES 3030

6.17 C

6.17 CLEAR DIAGNOSTIC INFORMATIONLEAR DIAGNOSTIC INFORMATION 3131

6.18 R 

6.18 R EAD STATUS OF DIAGNOSTIC TROUBLE CODESEAD STATUS OF DIAGNOSTIC TROUBLE CODES 3232 6.19 I/O

6.19 I/O CONTROL BY LOCAL IDENTIFIER CONTROL BY LOCAL IDENTIFIER  3434

6.19.1 G

6.19.1 GAS VALVE CONTROLAS VALVE CONTROL 3636

6.19.2 G

6.19.2 GAS INJECTORS CONTROLAS INJECTORS CONTROL 3636

6.19.3 P

6.19.3 PETROL INJECTORS CONTROLETROL INJECTORS CONTROL 3737

6.19.4 P

6.19.4 PETROL CONNECTION CONTROLETROL CONNECTION CONTROL 3838

6.19.5 L

6.19.5 LAMBDA EMULATION CONTROLAMBDA EMULATION CONTROL 3838

6.19.6 T

6.19.6 TEST SWITCH LEDSEST SWITCH LEDS 3939

6.19.7 R 

6.19.7 R EAD SWITCH BUTTONEAD SWITCH BUTTON 4040

6.19.8 S

6.19.8 SET LAMBDA EMULATION VOLTAGEET LAMBDA EMULATION VOLTAGE 4141

6.19.9 R 

6.19.9 R EAD ANALOG VOLTAGEEAD ANALOG VOLTAGE 4242

6.19.10 R 

6.19.10 R EAD STATUS OF RPM SIGNALEAD STATUS OF RPM SIGNAL 4343

6.19.11 R 

6.19.11 R EAD PERIOD OF RPM SIGNALEAD PERIOD OF RPM SIGNAL 4444

6.19.12 S

(5)

TABLES

TABLES

Tab. 1:

Tab. 1: KW200 message structureKW200 message structure ...22 Tab.

Tab. 2: 2: Format byte Format byte structure...structure...33 Tab.

Tab. 3: 3: mode mode bits...bits...3...3 Tab. 4:

Tab. 4: format byte structure required by format byte structure required by ISO14230-4...ISO14230-4...4...4 Tab.

Tab. 5: 5: supported services...supported services...11...11 Tab. 6:

Tab. 6: PIDs supported for PIDs supported for service 0x01...service 0x01...1616 Tab. 7:

Tab. 7: Freeze frame data supported PIDsFreeze frame data supported PIDs ...18...18 Tab. 8:

Tab. 8: diagnostidiagnostic modesc modes ...20...20 Tab. 9:

Tab. 9: access mode parameter valuesaccess mode parameter values ...2121 Tab.

Tab. 10: 10: identificidentification optionsation options ...24...24 Tab. 11: vehicle identification numbe

Tab. 11: vehicle identification number transmission sequencer transmission sequence ...2727 Tab. 12: write data by local identifier - record local identifie

Tab. 12: write data by local identifier - record local identifiersrs ...27...27 Tab. 13: read

Tab. 13: read data by local identifier - record local identifiers...data by local identifier - record local identifiers...2929 Tab. 14:

Tab. 14: DTC's status descriptionDTC's status description ...3434 Tab. 15:

Tab. 15: input output input output local identifiers...local identifiers...35...35 Tab. 16:

Tab. 16: gas injectors status gas injectors status codificatcodificationion...3737 Tab. 17: output configurations for the test of

Tab. 17: output configurations for the test of the leds of the the leds of the switch...switch...40...40 Tab.

Tab. 18: 18: analog channels analog channels codes...codes...4343

PICTURES

PICTURES

Fig. 1:

Fig. 1: tester request and tester request and ECU responses...ECU responses...5...5 Fig. 2: normal timing set with default values

Fig. 2: normal timing set with default values ...5...5 Fig. 3:

Fig. 3: 5 5 baud init baud init general form...general form...6...6 Fig.

Fig. 4: 4: fast init fast init general form...general form...7...7 Fig.

Fig. 5: 5: key key bytesbytes...8...8 Fig.

Fig. 6: 6: address rangesaddress ranges...1313 Fig. 7: read status of DTC

(6)

Safety symbols

Safety symbols

Warning

Warning Calls attention to a procedure, practice, or condition, that could possiblyCalls attention to a procedure, practice, or condition, that could possibly cause bodily injury or death.

cause bodily injury or death. Caution

Caution Calls attention to a procedure,practice, or condition that could possiblyCalls attention to a procedure,practice, or condition that could possiblycause damage to equipment or permanent loss of data.cause damage to equipment or permanent loss of data. Attention

(7)

Chapter

Chapter 1:

1: Introduction

Introduction

ISO 14230 has been established in order to define common requirements for diagnostic systems ISO 14230 has been established in order to define common requirements for diagnostic systems implemented on a serial data link.

implemented on a serial data link.

To achieve this, it is based on the Open Systems Interconnection (OSI) Basic Reference Model in To achieve this, it is based on the Open Systems Interconnection (OSI) Basic Reference Model in accordance with ISO 7498 which structures communication systems into seven layers. When accordance with ISO 7498 which structures communication systems into seven layers. When mapped on this model, the services used by a diagnostic tester and an Electronic Control Unit mapped on this model, the services used by a diagnostic tester and an Electronic Control Unit (ECU) are broken into

(ECU) are broken into

  

   diagnostic services (layer 7),diagnostic services (layer 7),

  

   communication services (layers 1 to 6).communication services (layers 1 to 6).

This documents deals with the diagnostic services supported by the PIRO04 and SAM04 gas fuel This documents deals with the diagnostic services supported by the PIRO04 and SAM04 gas fuel injection control units (form now on GAS ECU).

injection control units (form now on GAS ECU).

The implementation of the physical and data communication layers is in accordance with the The implementation of the physical and data communication layers is in accordance with the ISO14230 standard part 1 and 2.

ISO14230 standard part 1 and 2.

The vehicle environment to which this part of ISO 14230 applies may consist of a single tester that The vehicle environment to which this part of ISO 14230 applies may consist of a single tester that may be temporarily connected to the on-vehicle diagnostic data link and several on-vehicle may be temporarily connected to the on-vehicle diagnostic data link and several on-vehicle Electronic Control Units connected directly or indirectly.

Electronic Control Units connected directly or indirectly.

Chapter

Chapter 2:

2: Normative

Normative references

references

The following standards contain provisions which, through reference in this text, constitute The following standards contain provisions which, through reference in this text, constitute  provisions of

 provisions of this documethis document. All stant. All standards are sndards are subject to revubject to revision, and partision, and parties to agreeies to agreement based oment based onn this document are encouraged to investigate the possibility of applying the most recent editions of  this document are encouraged to investigate the possibility of applying the most recent editions of  the standards listed below. Members of ISO maintain registers of currently valid International the standards listed below. Members of ISO maintain registers of currently valid International Standards.

Standards.

ISO

ISO 14229: 14229: Road Road vehicles vehicles — — Diagnostic Diagnostic systems systems — — Diagnostic Diagnostic services services specification.specification. ISO 14230

ISO 14230-1: -1: Road vehiRoad vehicles — Diagcles — Diagnostic systems nostic systems — Keyword Pro— Keyword Protocol 200tocol 2000 — Pa0 — Part 1 : Physical rt 1 : Physical layer.layer. ISO 14230

ISO 14230-2: -2: Road vehiRoad vehicles — Diagcles — Diagnostic systems nostic systems — Keyword Pro— Keyword Protocol 200tocol 2000 — Pa0 — Part 2 : Data rt 2 : Data link layer.link layer. ISO 14230

ISO 14230-3: -3: Road vehiRoad vehicles — Diagcles — Diagnostic systems nostic systems — Keyword Pro— Keyword Protocol 200tocol 2000 — Pa0 — Part 3 : Applicart 3 : Application layer.tion layer. ISO 14230

ISO 14230-4: -4: Road vehicleRoad vehicles — Diagnos — Diagnostic systems — stic systems — Keyword ProtoKeyword Protocol 2000 col 2000 — Part 4 — Part 4 : Requirem: Requirements for ents for  emission related systems.

emission related systems. SAE

SAE J 1J 1930: 930: 1995, 1995, Electrical/electronElectrical/electronic systeic systems ms diagnostic diagnostic — — Terms, Terms, definitions, definitions, abbreviationabbreviations as andnd acronyms.

acronyms. SAE J

SAE J 1979: 1979: 1997, 1997, E/E dE/E diagnostic iagnostic test mtest modes— odes— Terms, Terms, definitions, definitions, abbreviationabbreviations ans and ad acronyms.cronyms. SAE

(8)

Chapter

Chapter 3:

3: Definitions

Definitions

For the purposes of this document, the definitions given in ISO 14229 and SAE J 1930 apply. For the purposes of this document, the definitions given in ISO 14229 and SAE J 1930 apply. CARB

CARB California California Air Air Resource Resource BoardBoard Client

Client The tester The tester connected connected to to the the ECUs ECUs to to request request diagnostic diagnostic parameters.parameters. DTC

DTC Dignostic Dignostic Trouble Trouble CodesCodes EPA

EPA Environment Environment Protection Protection AgencyAgency GAS

GAS ECU ECU The controller The controller of of the the gas gas injection. injection. May May refer refer to to PIRO04 PIRO04 or or SAM04.SAM04. LSB

LSB Least Least significant significant bytebyte MSB

MSB Most Most significant significant bytebyte OBD

OBD On On Board Board DignosticDignostic Server

Server One One of of the the ECUs ECUs connected connected to to the the tester tester that that respond respond to to the the tester’s tester’s requests.requests. SID

SID Service Service IDentifier IDentifier  TBD

TBD To To Be Be DefinedDefined TBV

TBV To To Be Be VerifiedVerified VIN

VIN Vehicle Vehicle Identiofication Identiofication Number Number 

Chapter

Chapter 4:

4: KW2000

KW2000 general

general information

information

The KW2000 message has the following structure: The KW2000 message has the following structure:

FORMAT BYTE FORMAT BYTE TARGET ADDR TARGET ADDR SOURCE ADDR SOURCE ADDR DATA BYTES DATA BYTES SERVICE ID SERVICE ID PAR 1 PAR 1 PAR 2 PAR 2 … … PAR 254 PAR 254 CHECKSUM CHECKSUM

Tab. 1: KW200 message structure Tab. 1: KW200 message structure

Format byte, target address byte, source address byte and data bytes compose the header section. Format byte, target address byte, source address byte and data bytes compose the header section. Service identifier and its parameters compose the data section

Service identifier and its parameters compose the data section

The checksum is the LSB of the sum of the bytes composing the header and the data section. The checksum is the LSB of the sum of the bytes composing the header and the data section. The maximum length of the message is 260 bytes (255 data + 4 header + 1 checksum).

(9)

Target address, source address and data length are not mandatory and their use or not is specified by Target address, source address and data length are not mandatory and their use or not is specified by the format byte.

the format byte.

The standard doesn’t define the communication caractheristics of the byte but it was discovered that The standard doesn’t define the communication caractheristics of the byte but it was discovered that the bytes are sent as:

the bytes are sent as: -

- 8 8 bitbit -

- no no parityparity -

- 1 1 stop stop bitbit

4.1 Header 

4.1 Header 

The header is composed by: format byte, target address byte, source address byte, data length. The header is composed by: format byte, target address byte, source address byte, data length. 4.1.1

4.1.1 Format Format bytebyte

The format byte has the following structure: The format byte has the following structure:

 A1

 A1 A0 A0 L5 L5 L4 L4 L3 L3 L2 L2 L1 L1 L0L0 Tab. 2: Format byte structure

Tab. 2: Format byte structure

A1, A0 defines the use of the address bytes, according to the following table: A1, A0 defines the use of the address bytes, according to the following table:

A1

A1 A0 A0 ModeMode

0

0 0 0 No No address address informationinformation 0

0 1 1 CARB CARB mode mode (exception (exception mode)mode) 1

1 0 0 Physical Physical addressing addressing modemode 1

1 1 1 Functional Functional addressing addressing modemode Tab. 3: mode bits

Tab. 3: mode bits

If the mode bits are 00, the target and source address will not be present. If the mode bits are 00, the target and source address will not be present.

A.1,A.0=01 (CARB mode) is an exception mode. The CARB mode is not specified in ISO 14230. A.1,A.0=01 (CARB mode) is an exception mode. The CARB mode is not specified in ISO 14230. CARB uses format bytes $68 (0110 1000) and $48 (0100 1000). For more details refer to CARB uses format bytes $68 (0110 1000) and $48 (0100 1000). For more details refer to ISO 9141-2 and SAE J1979.

ISO 9141-2 and SAE J1979.

Physical addressing is used when the tester sends its request to one ECU at a time. Physical addressing is used when the tester sends its request to one ECU at a time.

Functional addressing is used when the tester sends its request to more than one ECU at the same Functional addressing is used when the tester sends its request to more than one ECU at the same time.

time.

L5..L0 defines the length of the data section if the data length byte is not used. The following cases L5..L0 defines the length of the data section if the data length byte is not used. The following cases can be

can be encounteredencountered:: 1)

1) L5..L0 L5..L0 = = 0: 0: the the data data length length byte byte is is presentpresent 2)

(10)

ISO14230-4 requires functional addressing for the tester requests; the functional target address must ISO14230-4 requires functional addressing for the tester requests; the functional target address must  be

 be 0x33. 0x33. Physical Physical addressing addressing is is used used by by the the ECU ECU for for the the response. response. The The data data length length must must bebe specified in the format byte.

specified in the format byte.

In this case the format byte has the following structure: In this case the format byte has the following structure:

1 0 X X X X X X

1 0 X X X X X X ECU responseECU response

1 1 X X X X X X

1 1 X X X X X X Tester requestTester request

Tab. 4: format byte structure required by ISO14230-4 Tab. 4: format byte structure required by ISO14230-4

4.1.2

4.1.2 Target Target address address bytebyte

This is the address of the destination of the message. It can be physical or functional. This is the address of the destination of the message. It can be physical or functional. Physical addrressing is used by the tester to address one single ECU.

Physical addrressing is used by the tester to address one single ECU.

Functional addressing is used by the tester to send the same request to more than one ECU. Functional addressing is used by the tester to send the same request to more than one ECU. The ECU will always respond to the tester requests using physical addressing.

The ECU will always respond to the tester requests using physical addressing. ISO14230-4 requires that the tester uses the functional address 0x33 in its requests. ISO14230-4 requires that the tester uses the functional address 0x33 in its requests. 4.1.3

4.1.3 Source Source address address bytebyte

This is the physical address of the device that sends the message. This is the physical address of the device that sends the message.

ISO14230-4 requires that the tester uses the physical address 0xF1 as source address. This address ISO14230-4 requires that the tester uses the physical address 0xF1 as source address. This address will be used by the ECUs as target address in their responses.

will be used by the ECUs as target address in their responses. 4.1.4

4.1.4 Data Data length length bytebyte

This byte is present only if the bits L5..L0 of the format byte are 0. This byte is present only if the bits L5..L0 of the format byte are 0.

ISO14230-4 requires that the length of the data bytes is indicated in the format byte. ISO14230-4 requires that the length of the data bytes is indicated in the format byte. Moreover it requires a maximum of seven data bytes to be present in the message. Moreover it requires a maximum of seven data bytes to be present in the message.

4.2

4.2 Data

Data bytes

bytes

The data section is composed by the service identifier and its parameters. Its length could be upto The data section is composed by the service identifier and its parameters. Its length could be upto 63 bytes if the data length byte is not present in the message or upto 255 bytes if the data length 63 bytes if the data length byte is not present in the message or upto 255 bytes if the data length  byte is pres

 byte is present in the ment in the message.essage.

ISO14230 requires, anyway, a maximum of seven data bytes, one service identifier and upto six ISO14230 requires, anyway, a maximum of seven data bytes, one service identifier and upto six  parameter

 parameters.s.

4.3

4.3 Checksum

Checksum bytes

bytes

The checksum byte has the function to let the destination of the message to check for errors in the The checksum byte has the function to let the destination of the message to check for errors in the transmission.

transmission.

It is the 8-bit sum of the bytes of the header and data sections. It is the 8-bit sum of the bytes of the header and data sections.

(11)

4.4 Timings

4.4 Timings

The KW2000 protocol is timeout based. This means the the end of a message is detected when the The KW2000 protocol is timeout based. This means the the end of a message is detected when the  bus remai

 bus remains in idle fns in idle for a certaior a certain time.n time.

The protocol requires a interbyte time for the teser request and the ECU requests, a time between The protocol requires a interbyte time for the teser request and the ECU requests, a time between the tester request and the ECU response and a time from the end of the response of the ECU and a the tester request and the ECU response and a time from the end of the response of the ECU and a new request of the tester.

new request of the tester.

If no request is detected on the bus, the communication is over, so the tester must continually send a If no request is detected on the bus, the communication is over, so the tester must continually send a  presence si

 presence signal or reqgnal or requests on thuests on the bus.e bus.

 Fig. 1: tester request and EC

 Fig. 1: tester request and ECU responsesU responses

The following table describes the minimum and maximum default values for the P

The following table describes the minimum and maximum default values for the P xxtimings.timings.

Timing

Timing Min Min (ms) (ms) Max Max (ms) (ms) DescriptionDescription P1

P1 0 0 20 20 Interbyte Interbyte time time for for ECU ECU responseresponse

P2 25 50

P2 25 50 Time between the end of a tester request or a ECUTime between the end of a tester request or a ECU response and another ECU response

response and another ECU response P3

P3 55 55 50005000 Time between the end of the ECU responses and a newTime between the end of the ECU responses and a new request from the tester 

request from the tester  P4

P4 5 5 20 20 Interbyte Interbyte time time for for tester tester requestrequest  Fig. 2: normal timing set with defa

 Fig. 2: normal timing set with default valuesult values

The KW2000 protocol has a service to modify the minimum and maximum timings, but in The KW2000 protocol has a service to modify the minimum and maximum timings, but in ISO 14230-4 it is required for the tester and the ECUs to use only the normal timing set with default ISO 14230-4 it is required for the tester and the ECUs to use only the normal timing set with default values.

values.

Chapter

Chapter 5:

5: Initialization

Initialization

The KW2000 protocol requires that the comunication is initialized before the tester can send The KW2000 protocol requires that the comunication is initialized before the tester can send requests to the servers.

requests to the servers. 1)

1) CARB CARB initializationinitialization 2)

2) 5 5 baud baud address address initializationinitialization 3)

3) fast fast initializationinitialization

There are general facts that are common to all modes of initialization: There are general facts that are common to all modes of initialization:

(12)

-

- prior to prior to any any activity activity there there shall shall be be a a bus-idle bus-idle time;time; -

- then the then the tester tester sends sends an an initialization initialization pattern;pattern; -

- all information all information which which is is necessary necessary to to establish establish communication communication is is contained contained in in the the response response of of  the ECU.

the ECU.

ISO14230-4 requires that the tester must support both 5-baud and fast init initialization, instead the ISO14230-4 requires that the tester must support both 5-baud and fast init initialization, instead the ECU shall support only one of the two initialization methods.

ECU shall support only one of the two initialization methods. The GAS ECU will suppoprt only the fast init initialization. The GAS ECU will suppoprt only the fast init initialization.

5.1

5.1 CARB

CARB initialization

initialization

For CARB purposes 5 Baud initialization is used only. It is a functional initialization.Messages are For CARB purposes 5 Baud initialization is used only. It is a functional initialization.Messages are send to all emission related ECUs (see ISO 9141-2 and ISO 14230-4).

send to all emission related ECUs (see ISO 9141-2 and ISO 14230-4).

5.2

5.2 5 baud

5 baud initialization

initialization (or slow

(or slow init)

init)

The general form of the 5-baud initialization is shown in the following pictures: The general form of the 5-baud initialization is shown in the following pictures:

 Fig. 3: 5 baud init general form  Fig. 3: 5 baud init general form

1)

1) the bus the bus must stay must stay idle for idle for at least at least 300ms300ms 2)

(13)

3)

3) the ECU sends the the ECU sends the synchronizatsynchronization pattern 0x55, which ion pattern 0x55, which is used by is used by the tester to the tester to detect thedetect the actual baud rate used by the ECU.

actual baud rate used by the ECU. 4)

4) the ECU the ECU sends the sends the key bytes key bytes KB1 and KB1 and KB2KB2 5)

5) the the tester tester sends sends back back KB2 KB2 invertedinverted 6)

6) the ECU the ECU sends back sends back the address the address sent by sent by the tester the tester invertedinverted

ISO 14230-4 requires that the 5-baud address is 0x33 and the actual communication rate is 10400 ISO 14230-4 requires that the 5-baud address is 0x33 and the actual communication rate is 10400  baud.

 baud.

5.3

5.3 Fast

Fast init

init initialization

initialization

The general form of the fast init initialization is described in the following picture: The general form of the fast init initialization is described in the following picture:

 Fig. 4: fast init general form  Fig. 4: fast init general form

1)

1) the the bus bus must must be be idleidle 2)

2) the tester holds the tester holds the bus the bus in its in its dominant state (0) dominant state (0) for 25msfor 25ms 3)

3) the tester releases the tester releases the bus the bus and after 25 and after 25 ms sends ms sends the startcommunication requestthe startcommunication request

4) the board responds with the startcommunication response (hopefully positive); in the 4) the board responds with the startcommunication response (hopefully positive); in the

response the key bytes KB1 and KB2 are sent to the tester  response the key bytes KB1 and KB2 are sent to the tester 

5.4

5.4 Key

Key bytes

bytes

With these bytes an ECU informs the tester about the supported header, timing and length With these bytes an ECU informs the tester about the supported header, timing and length information. So an ECU does not necessarily have to support all possibilities.

(14)

The decoding of the key bytes is defined in ISO 9141. The decoding of the key bytes is defined in ISO 9141. KB2 is fixed at 0x8F. KB1 reports the supported modes. KB2 is fixed at 0x8F. KB1 reports the supported modes. ISO14230 requires that the keybytes are 8FE9, wich means: ISO14230 requires that the keybytes are 8FE9, wich means:

1)

1) 3 3 byte byte header header  2)

2) no no additional additional length length bytebyte 3)

3) normal normal timingtiming

 Fig. 5: key bytes  Fig. 5: key bytes

AL0

AL0 support support of of data data length length in in format format byte byte (0=NO, (0=NO, 1=YES)1=YES) AL1

AL1 support support of of additional additional data data length length byte byte (0=NO, (0=NO, 1=YES)1=YES) HB0

HB0 support support of of 1 1 byte byte header header (0=NO, (0=NO, 1=YES)1=YES) HB1

HB1 support support of of target/sourctarget/source e addresses addresses in in header header (0=NO, (0=NO, 1=YES)1=YES) TP0

TP0 use use of of extended extended timing timing parameters parameters (0=NO, (0=NO, 1=YES)1=YES) TP1

TP1 use use of of normal normal timing timing parametrs parametrs (0=NO, (0=NO, 1=YES)1=YES)

Obviously TP0 and TP1 are mutually exclusive so only TPO=0 TP1=1 or TP0=1 TP1=0 can be Obviously TP0 and TP1 are mutually exclusive so only TPO=0 TP1=1 or TP0=1 TP1=0 can be used.

used.

5.5

5.5 Multiuser

Multiuser bus

bus issue

issue

This is extracted from the standard: This is extracted from the standard:

The physical layer may be used as a multiuser-bus, so a kind of arbitration or bus management is necessary. The physical layer may be used as a multiuser-bus, so a kind of arbitration or bus management is necessary. There are several proposals which are not part of this part of ISO 14230. The car manufacturers are There are several proposals which are not part of this part of ISO 14230. The car manufacturers are responsible for the correct working of bus management. (ISO14230-2 clause 1).

responsible for the correct working of bus management. (ISO14230-2 clause 1).

The KW2000 protocol allows the ECU to be connected on the bus and the tester can address more The KW2000 protocol allows the ECU to be connected on the bus and the tester can address more than one ECU at a time using functional addressing.

than one ECU at a time using functional addressing.

ISO14230 requires that the tester uses functional addressing. ISO14230 requires that the tester uses functional addressing.

The GAS ECU will be installed in a unknown environment and will have to respond to many tester  The GAS ECU will be installed in a unknown environment and will have to respond to many tester  requests toghether with (at least) the petrol ECU.

(15)

Some form of general purpose bus management must be designed not to disturb the communication Some form of general purpose bus management must be designed not to disturb the communication of the tester with the petrol ECU

of the tester with the petrol ECU11..

1 111

The tester must be designed to manage multiple ECU responses: what happens when the tester receives two resposes The tester must be designed to manage multiple ECU responses: what happens when the tester receives two resposes to a functional request asking for data (f.i. engine coolant temperature)? Which one is showed? The first?, The last?, to a functional request asking for data (f.i. engine coolant temperature)? Which one is showed? The first?, The last?, Both? The matter has to be investigated!

(16)

Chapter

Chapter 6:

6: Services

Services supprted

supprted by GA

by GAS ECU

S ECU

The supported services are described in the following table: The supported services are described in the following table:

S

Seerrvviicce e nnaamme e SSIID D SSuupp NNoottee Start

Start communicatiocommunication n 0x810x81  GAS ECU address 0x12GAS ECU address 0x12 Stop

Stop communicatiocommunication n 0x820x82 

 Access timing pa

 Access timing parameters rameters 0x830x83  Tester shall not support this serviceTester shall not support this service Request

Request powertrain powertrain diagnostic diagnostic data data 0x010x01  See details for supported PIDsSee details for supported PIDs Request

Request powertrain powertrain freeze freeze frame frame data data 0x020x02 

Request emission related diagnostic troble Request emission related diagnostic troble codes

codes 0x030x03 

Clear/Reset emission related

Clear/Reset emission related diagnosticdiagnostic information

information 0x040x04 

Request oxygen sensor monitoring test Request oxygen sensor monitoring test result

result 0x050x05 

Request on-board monitoring test results Request on-board monitoring test results for specific monitored systems

for specific monitored systems 0x060x06  Request emission related diagnostic troble

Request emission related diagnostic troble codes detected during current or last codes detected during current or last completed driving cycle

completed driving cycle

0x07

0x07  Pending DTCs are not supported by thePending DTCs are not supported by the

ECU ECU Request control of on-board system, test

Request control of on-board system, test or component

or component 0x080x08 

SAE J1979 consider only the test of the SAE J1979 consider only the test of the evaporative system (PID=0x01). All of the evaporative system (PID=0x01). All of the other PIDs are r

other PIDs are r eserved by the documenteserved by the document Request

Request vehicle vehicle information information 0x090x09  Only VIN is supportedOnly VIN is supported Start

Start diagnostic diagnostic session session 0x100x10 

ECU

ECU reset reset 0x110x11  OnlyOnly PowerOnPowerOn is supportedis supported Read

Read freeze freeze frame frame data data 0x120x12 

Read

Read diagnostic diagnostic troble troble codes codes 0x130x13 

Clear

Clear diagnostic diagnostic information information 0x140x14 

Read

Read status status of of diagnostic diagnostic troble troble codes codes 0x170x17 

Read

Read diagnostic diagnostic troble troble codes codes by by status status 0x180x18 

Read

Read ECU ECU identification identification 0x1A0x1A 

Stop

Stop diagnostic diagnostic session session 0x200x20 

Read

Read data data by by local local identifier identifier 0x210x21 

Read

Read data data by by common common identifieidentifier r 0x220x22 

Read

Read memory memory by by address address 0x230x23 

Set

Set data data rates rates 0x260x26 

Security

(17)

S

Seerrvviicce e nnaamme e SSIID D SSuupp NNoottee Dynamically

Dynamically define define local local identifier identifier 0x2C0x2C 

Write

Write data data by by common common identifier identifier 0x2E0x2E 

Input

Input output output control control by by common common identifier identifier 0x2F0x2F 

Input

Input output output control control by by local local identifier identifier 0x300x30 

Start

Start routine routine by by local local identifier identifier 0x310x31 

Start

Start routine routine by by common common identifier identifier 0x320x32 

Request

Request routine routine result result by by local local identifier identifier 0x330x33 

Request

Request download download 0x340x34 

Request

Request upload upload 0x350x35 

Transfer

Transfer data data 0x360x36 

Request

Request transfer transfer exit exit 0x370x37 

Start

Start routine routine by by address address 0x380x38 

Stop

Stop routine routine by by address address 0x390x39 

Request

Request routine routine result result by by address address 0x3A0x3A 

Write

Write data data by by local local identifier identifier 0x3B0x3B 

Write

Write memory memory by by address address 0x3D0x3D 

Tester

Tester present present 0x3E0x3E 

Esc

Esc code code 0x800x80 

Tab. 5: supported services Tab. 5: supported services

6.1

6.1 Start

Start communication

communication service

service

The GAS ECU recognizes the KW2000 fast-init initialization method. This requires that the tester  The GAS ECU recognizes the KW2000 fast-init initialization method. This requires that the tester  sends the Start communication command by mean of this service.

sends the Start communication command by mean of this service. The GAS ECU address will be 0x12.

The GAS ECU address will be 0x12. Fig. 6

Fig. 6 shows the address ranges defined by the protocol: we consider the GAS ECU to be a engineshows the address ranges defined by the protocol: we consider the GAS ECU to be a engine controller.

controller.

The tester shall use the address 0xF1. The tester shall use the address 0xF1.  No negative

(18)

Request Request Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Format Format byte byte 818111

C1 C122

FMT FMT #2

#2 Target Target address address byte byte 121233 33 3344

TGT TGT #3

#3 Source Source address address F1F155 SRCSRC

#4

#4 Start Start communicatiocommunication n SID SID 81 81 SCRSCR #5

#5 Checksum Checksum XX XX CSCS

Positive response Positive response Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Format Format byte byte 83 83 FMTFMT

#2

#2 Target Target address address byte byte F1 F1 TGTTGT #3

#3 Source Source address address byte byte 12 12 SRCSRC #4

#4 Start Start communicatiocommunication n SID SID 81 81 SCRPRSCRPR #5

#5 Key Key byte byte #1 #1 E9E966 KB1KB1

#6

#6 Key Key byte byte #2 #2 8F 8F KB2KB2

#7

#7 Checksum Checksum XX XX CSCS

Though ISO14230 requires that the data length must be limited to 7 bytes, the gas ECU is able to Though ISO14230 requires that the data length must be limited to 7 bytes, the gas ECU is able to manage upto 63 data bytes. The limitation refers only to the diagnostic services 0x00-0x0F defined manage upto 63 data bytes. The limitation refers only to the diagnostic services 0x00-0x0F defined in J1979 and referred by ISO14230-3.

in J1979 and referred by ISO14230-3. The

The StartCommunicationStartCommunication service is used in the fast init initialization: before the request the wake-service is used in the fast init initialization: before the request the wake-up pattern defined in ISO14230-2 must be sent to the gas ECU.

up pattern defined in ISO14230-2 must be sent to the gas ECU.

The following figure shows the ranges of the possible physical addressing, as suggested by the The following figure shows the ranges of the possible physical addressing, as suggested by the KW2000 standard.

KW2000 standard.

1 1

Physical addressing is used Physical addressing is used

2 2

Functional addressing is used Functional addressing is used

3 3

Physical addressing is used. Physical addressing is used.

4 4

Functional addressing is used. Functional addressing is used.

5

5Required by ISO14230-4, but other address numbers could be used.Required by ISO14230-4, but other address numbers could be used. 6

(19)

 Fig. 6: address ranges  Fig. 6: address ranges

6.2

6.2 Stop

Stop communication

communication service

service

Usally the communication between the client and the server is broken due to a communication Usally the communication between the client and the server is broken due to a communication timeout. If no tester request is received within P3

timeout. If no tester request is received within P3maxmax, the GAS ECU stops the communication., the GAS ECU stops the communication.

The client may also use the

The client may also use the stop commu stop communication senication servicerviceto stop the communication with the server.to stop the communication with the server.  No negative

(20)

Request Request Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Format Format byte byte 818111

C1 C122

FMT FMT #2

#2 Target Target address address byte byte 121233 33 3344

TGT TGT #3

#3 Source Source address address F1F155 SRCSRC

#4

#4 Stop Stop communication communication SID SID 82 82 SPRSPR #5

#5 Checksum Checksum XX XX CSCS

Positive response Positive response Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Format Format byte byte 81 81 FMTFMT

#2

#2 Target Target address address byte byte F1 F1 TGTTGT #3

#3 Source Source address address byte byte 12 12 SRCSRC #4 Stop

#4 Stop communicacommunication tion SID SID positive positive response response 82 82 SPRPRSPRPR #6

#6 Checksum Checksum XX XX CSCS

From now on, format byte, source and target addresses and checksum will not be reported in the From now on, format byte, source and target addresses and checksum will not be reported in the message examples/descriptions.

message examples/descriptions.

6.3

6.3 Request cur

Request current pow

rent powertrain

ertrain diagnostic

diagnostic data

data

Request Request Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Request Request current current powertrain powertrain diagnostic diagnostic data data req. req. SID SID 01 01 SIDRQSIDRQ #2

#2 PID PID XX XX PIDPID

1 1

Physical addressing is used Physical addressing is used

2 2

Functional addressing is used Functional addressing is used

3 3

Physical addressing is used. Physical addressing is used.

4

4Functional addressing is used.Functional addressing is used. 5

(21)

Positive response (request supported PIDs) Positive response (request supported PIDs) Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Request Request current current powertrain powertrain diagnostic diagnostic data data resp. resp. SID SID 41 41 SIDPRSIDPR #2

#2 Supported Supported PID PID XX XX PIDPID

#3

#3 Data Data A A XX XX DATA_ADATA_A

#4

#4 Data Data B B XX XX DATA_BDATA_B

#5

#5 Data Data C C XX XX DATA_CDATA_C

#6

#6 Data Data D D XX XX DATA_DDATA_D

The values for data A to D depends on the PID requested, please refer to appendix A and appendix The values for data A to D depends on the PID requested, please refer to appendix A and appendix B of J1979 for definition of PIDs and response values.

B of J1979 for definition of PIDs and response values. The PID supported by GAS ECU are the following: The PID supported by GAS ECU are the following:

Parameter

Parameter name name PID PID NoteNote Support

Support for for group group 1 1 PIDs PIDs 0x00 0x00 MandatoryMandatory Monitor

Monitor status status and and DTC DTC number number 0x010x01 DTC that caused freeze frame data

DTC that caused freeze frame data storage

storage 0x020x02

Engine

Engine coolant coolant temperature temperature 0x050x05

Fuel

Fuel rail rail pressure pressure (lower (lower range) range) 0x0A0x0A

Only if an absolute pressure sensor  Only if an absolute pressure sensor  (AEB 025 type) is

(AEB 025 type) is installed.installed.

The standard requires that only one of Pid The standard requires that only one of Pid 0x0A, 0x22, 0x23 is supported

0x0A, 0x22, 0x23 is supported Intake

Intake manifold manifold absolute absolute pressure pressure 0x0B0x0B

Only if map signal is connected or an Only if map signal is connected or an

absolute pressure sensor (AEB 025 type) is absolute pressure sensor (AEB 025 type) is installed

installed Engine

Engine RPM RPM 0x0C0x0C

Location

Location of of oxigen oxigen sensor sensor 0x130x13 The standard requires that only one of PidThe standard requires that only one of Pid 0x13, 0x1D is supported

0x13, 0x1D is supported Oxygen

Oxygen sensor sensor Bank Bank 1 1 – – Sensor Sensor A A 0x140x14 Pid 0x13 is used for Pid 0x13 is used for sensor location.sensor location. Short term fuel trim is always 0% Short term fuel trim is always 0%

Oxygen

Oxygen sensor sensor Bank Bank 2 2 – – Sensor Sensor A A 0x180x18

Only if the GAS ECU is configured for 2 Only if the GAS ECU is configured for 2 lambda probes (2 banks)

lambda probes (2 banks) Pid 0x13 is used for

Pid 0x13 is used for sensor location.sensor location. Short term fuel trim is always 0% Short term fuel trim is always 0% OBD requirement to which the ECU is

OBD requirement to which the ECU is designed

designed 0x1C0x1C

Support

(22)

Parameter

Parameter name name PID PID NoteNote Fuel rail pressure relative to manifold

Fuel rail pressure relative to manifold vacuum

vacuum 0x220x22

Only if a

Only if a diffrential pressure sensor diffrential pressure sensor  (AEB 013 type) is

(AEB 013 type) is installed.installed.

The standard requires that only one of Pid The standard requires that only one of Pid 0x0A, 0x22, 0x23 is supported

0x0A, 0x22, 0x23 is supported Fuel

Fuel level level input input 0x2F0x2F

Tab. 6: PIDs supported for service 0x01 Tab. 6: PIDs supported for service 0x01

 Negative responses

 Negative responses with with rejection coderejection code subfunction not supported  subfunction not supported can be received from the GAScan be received from the GAS ECU if a non-supported PID is requested or the GAS ECU configuration doesn’t allow the PID to ECU if a non-supported PID is requested or the GAS ECU configuration doesn’t allow the PID to  be

 be suported suported (f.i. (f.i. requesting requesting the the bank bank 2 2 – – sensor sensor A A oxygen oxygen sensor sensor voltage voltage if if the the GAS GAS ECU ECU isis configured for a single oxygen sensor).

configured for a single oxygen sensor).

6.4

6.4 Request p

Request powertrain

owertrain freeze f

freeze frame

rame data

data

Every time a new error code is store, a picture of the system is taken and stored. Every time a new error code is store, a picture of the system is taken and stored. This service let the user acquire the data stored in the ECU memory.

This service let the user acquire the data stored in the ECU memory. Only one data frame can be stored by the ECU, so the parameter 

Only one data frame can be stored by the ECU, so the parameter  Frame #  Frame # shall be set to 0.shall be set to 0.

Request Request Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Request Request current current powertrain powertrain diagnostic diagnostic data data req. req. SID SID 02 02 SIDRQSIDRQ #2

#2 PID PID XX XX PIDPID

#3

#3 Frame Frame # # XX XX FRNOFRNO

Positive response (request supported PIDs) Positive response (request supported PIDs) Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Request Request current current powertrain powertrain freeze freeze frame frame data data req. req. SIDSID positive response

positive response

42 SIDRQPR

42 SIDRQPR

#2

#2 PID PID XX XX PIDPID

#3

#3 Frame Frame # # XX XX FRNOFRNO

#4

#4 Supported Supported PIDs: PIDs: Data Data A A (Mandatory) (Mandatory) XX XX DATA_ADATA_A #5

#5 Supported Supported PIDs: PIDs: Data Data B B (Mandatory) (Mandatory) XX XX DATA_BDATA_B #6

#6 Supported Supported PIDs: PIDs: Data Data C C (Mandatory) (Mandatory) XX XX DATA_CDATA_C #7

(23)

Positive response (report freeze frame PID value) Positive response (report freeze frame PID value) Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Request Request current current powertrain powertrain freeze freeze frame frame data data req. req. SIDSID positive response

positive response

42 SIDRQPR

42 SIDRQPR

#2

#2 PID PID XX XX PIDPID

#3

#3 Frame Frame # # XX XX FRNOFRNO

#4

#4 Supported Supported PID: PID: Data Data A A (Mandato(Mandatory) ry) XX XX DATA_ADATA_A #5

#5 Supported Supported PID: PID: Data Data B B (Conditiona(Conditional) l) XX XX DATA_BDATA_B #6

#6 Supported Supported PID: PID: Data Data C C (Conditional(Conditional) ) XX XX DATA_CDATA_C #7

#7 Supported Supported PID: PID: Data Data D D (Conditional(Conditional) ) XX XX DATA_DDATA_D

Negative response Negative response Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Negative Negative response response SID SID 7F 7F NACKNACK #

#2 2 RReeqquueesst t ccuurrrreennt t ppoowweertrtrraaiin n ffrreeeezze e ffrraamme e ddaatta a rreeqq. . SSIIDD 002 2 SSIIDD #3

#3 Response Response code code XX XX RCRC

The parameter 

The parameter  Frame  Frame # # shall be set to 0. If a frame different from 0 is requested, a negativeshall be set to 0. If a frame different from 0 is requested, a negative response message will be received by the client.

response message will be received by the client.

The values for data A to D depends on the PID requested, please refer to appendix A and appendix The values for data A to D depends on the PID requested, please refer to appendix A and appendix B of J1979 for definition of PIDs and response values.

B of J1979 for definition of PIDs and response values.

In simple words PIDs 0x00, 0x20, 0x40 upto 0xE0 request information on supported PIDs;

In simple words PIDs 0x00, 0x20, 0x40 upto 0xE0 request information on supported PIDs; request request   supported P

 supported PIDsIDs positive  positive response wiresponse will be sent ll be sent to the clieto the client by the sent by the server.rver.

PIDs in the range 0x01..0x1F (0x21..0x2F) (0x31..0x3F) … (0xE1..0xFF) are used to request PIDs in the range 0x01..0x1F (0x21..0x2F) (0x31..0x3F) … (0xE1..0xFF) are used to request specific data to the server and shall be used by the client only if declared as supprted by the server. specific data to the server and shall be used by the client only if declared as supprted by the server. Support for PID 0x00 is mandatory; support for the other PIDs is optional.

Support for PID 0x00 is mandatory; support for the other PIDs is optional. The PIDs supported by the OMVL gas ECU are the following:

The PIDs supported by the OMVL gas ECU are the following:

Parameter

Parameter name name PID PID NoteNote Support

Support for for group group 1 1 PIDs PIDs 0x00 0x00 MandatoryMandatory DTC that caused freeze frame data

DTC that caused freeze frame data storage

storage 0x020x02

Engine

Engine coolant coolant temperature temperature 0x050x05

Fuel

Fuel rail rail pressure pressure (lower (lower range) range) 0x0A0x0A

Only if an absolute pressure sensor  Only if an absolute pressure sensor  (AEB 025 type) is

(AEB 025 type) is installed.installed.

The standard requires that only one of Pid The standard requires that only one of Pid 0x0A, 0x22, 0x23 is supported

0x0A, 0x22, 0x23 is supported Intake

Intake manifold manifold absolute absolute pressure pressure 0x0B0x0B

Only if map signal is connected or an Only if map signal is connected or an

absolute pressure sensor (AEB 025 type) is absolute pressure sensor (AEB 025 type) is installed

(24)

Parameter

Parameter name name PID PID NoteNote Engine

Engine RPM RPM 0x0C0x0C

Oxygen

Oxygen sensor sensor Bank Bank 1 1 – – Sensor Sensor A A 0x140x14 Oxygen

Oxygen sensor sensor Bank Bank 2 2 – – Sensor Sensor A A 0x180x18 Only if the GAS ECU is configured for 2Only if the GAS ECU is configured for 2 lambda probes (2 banks)

lambda probes (2 banks) Support

Support for for group group 2 2 PIDs PIDs 0x200x20 Fuel rail pressure relative to manifold

Fuel rail pressure relative to manifold vacuum

vacuum 0x220x22

Only if a

Only if a diffrential pressure sensor diffrential pressure sensor  (AEB 013 type) is

(AEB 013 type) is installed.installed.

The standard requires that only one of Pid The standard requires that only one of Pid 0x0A, 0x22, 0x23 is supported

0x0A, 0x22, 0x23 is supported Fuel

Fuel level level input input 0x2F0x2F

Tab. 7: Freeze frame data supported PIDs Tab. 7: Freeze frame data supported PIDs

6.5

6.5 Request emi

Request emission related

ssion related diagnostic tr

diagnostic troble codes

oble codes

This service is used to get stored errors from the server. As upto 3 DTC can be transmitted in a This service is used to get stored errors from the server. As upto 3 DTC can be transmitted in a single message, if more than 3 DTC are stored inside the server, more than one response message single message, if more than 3 DTC are stored inside the server, more than one response message will be sent to the client.

will be sent to the client.

Please refer to SAE J1797 for detailed information about this service. Please refer to SAE J1797 for detailed information about this service. The DTC detected and managed by the ECU are reported in

The DTC detected and managed by the ECU are reported in PIRO/SAM04 Diagnostic CodesPIRO/SAM04 Diagnostic Codes..

Request Request Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Request Request emission emission related related DTC DTC request request SID SID 03 03 SIDRQSIDRQ

Positive response Positive response Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Request Request emission emission related related DTC DTC positive positive response response 43 43 SIDPRSIDPR #2 #2 DTC DTC #1 #1 (MSB) (MSB) XX XX DTC1HIDTC1HI #3 #3 DTC DTC #1 #1 (LSB) (LSB) XX XX DTC1LODTC1LO #4 #4 DTC DTC #2 #2 (MSB) (MSB) XX XX DTC2HIDTC2HI #5 #5 DTC DTC #2 #2 (LSB) (LSB) XX XX DTC2LODTC2LO #6 #6 DTC DTC #3 #3 (MSB) (MSB) XX XX DTC3HIDTC3HI #7 #7 DTC DTC #3 #3 (LSB) (LSB) XX XX DTC3LODTC3LO

Before sending this message, current powertrain diagnostic data should be requested (SID = 0x01) Before sending this message, current powertrain diagnostic data should be requested (SID = 0x01) with PID Number of emission related DTC and MIL status (PID = 0x01).

with PID Number of emission related DTC and MIL status (PID = 0x01).

The code 0x0000 defines a void DTC and is sent by the server to fill the fields of the response The code 0x0000 defines a void DTC and is sent by the server to fill the fields of the response message.

(25)

6.6

6.6 Clear

Clear emission

emission related

related DTC

DTC

Use this service to delete all of the DTCs and Freeze frame data stored in the ECU memory. Use this service to delete all of the DTCs and Freeze frame data stored in the ECU memory. Only a positive response is foreseen.

Only a positive response is foreseen.

Request Request Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Clear Clear emission emission related related diagnostic diagnostic information information SID SID 04 04 SIDRQSIDRQ Positive Response

Positive Response Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Clear Clear emission emission related related diagnostic diagnostic information information positivepositive response

response

44 SIDPR

44 SIDPR

6.7

6.7 Tester

Tester present

present

This service is used to keep the communication with the ECU alive. As required by ISO14230-4, no This service is used to keep the communication with the ECU alive. As required by ISO14230-4, no optional parameter shall be used by the teser and the ECU will always generate a positive response optional parameter shall be used by the teser and the ECU will always generate a positive response message.

message.

Please refer to ISO14230-3 and ISO14230-4 for details about this service. Please refer to ISO14230-3 and ISO14230-4 for details about this service.

Request Request Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Tester Tester present present request request SID SID 3E 3E TPTP Positive response

Positive response Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Tester Tester present present request request positive positive response response SID SID 7E 7E TPPRTPPR

6.8

6.8 Start

Start diagnostic

diagnostic session

session

Use this service to enable different diagnostic modes in the server. Use this service to enable different diagnostic modes in the server.

After the communication between the client and the server has been established, a default After the communication between the client and the server has been established, a default diagnostic session is automatically enabled in the server.

diagnostic session is automatically enabled in the server.

At the moment two different diagnostic session are managed by the server: At the moment two different diagnostic session are managed by the server:

•  Default  Default diagnostidiagnostic c modemode: the ECU continues its normal operation while it continues the: the ECU continues its normal operation while it continues the communication with the tester 

(26)

•  I/O control diagnost I/O control diagnostic modeic mode: the ECU enters a special state, to let the tester control the I/Os: the ECU enters a special state, to let the tester control the I/Os of the ECU. The ECU enters the petrol mode and only the communication with the tester or  of the ECU. The ECU enters the petrol mode and only the communication with the tester or  the PC is kept alive. See paragraph

the PC is kept alive. See paragraph 6.19 6.19 I/O I/O control by control by local identifier local identifier  for more informationfor more information on the diagnostic mode.

on the diagnostic mode.

The server will always answer with a positive response message. The server will always answer with a positive response message.

Request Request Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Sart Sart diagnostic diagnostic session session SID SID 10 10 SDSSDS #2

#2 Diagnostic Diagnostic mode mode XX XX DIAGMODEDIAGMODE Positive response

Positive response Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Sart Sart diagnostic diagnostic session session positive positive response response SID SID 7E 7E SDSPRSDSPR #2

#2 Diagnostic Diagnostic mode mode XX XX DIAGMODEDIAGMODE

Diagnostic

Diagnostic Modes Modes Description Description NotesNotes 00-7F

00-7F Reserved Reserved by by ISO14230-3ISO14230-3 80

80 Default Default diagnostic diagnostic mode mode Normal Normal ECU ECU operationoperation 81-A4

81-A4 Reserved Reserved for for future future expansionsexpansions A5

A5 I/O I/O control control diagnostic diagnostic modemode A6-FF

A6-FF Reserved Reserved for for future future expansionsexpansions Tab. 8: diagnostic modes Tab. 8: diagnostic modes

6.9

6.9 Stop

Stop diagnostic

diagnostic session

session

Use this service to stop the current diagnostic mode of the server and return to the default diagnostic Use this service to stop the current diagnostic mode of the server and return to the default diagnostic mode. If the diagnostic mode of the ECU is the

mode. If the diagnostic mode of the ECU is the default diagnostic modedefault diagnostic mode, the command has no, the command has no effect.

effect.

If the diagnostic mode of the ECU is

If the diagnostic mode of the ECU is I/O  I/O control control modemode, the ECU exit this diagnostic mode and, the ECU exit this diagnostic mode and returns to the

returns to the default diagnostic modedefault diagnostic mode..

Request Request Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

(27)

Positive response Positive response Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Stop Stop diagnostic diagnostic session session positive positive response response SID SID 60 60 SPDSPRSPDSPR

6.10

6.10 Security

Security access

access

This service is used to unlock the server and allow access to specific diagnostic services to the This service is used to unlock the server and allow access to specific diagnostic services to the client.

client.

The service is completed in two steps: The service is completed in two steps:

1.

1. the client the client send the send the security access request security access request and the and the servers respond with servers respond with a seed a seed number number  2.

2. the client compute the client compute the key the key number based on number based on the seed number the seed number and sends it and sends it to the to the server server  The parameter 

The parameter  AccessMo AccessModedecan assume values based on the following tablecan assume values based on the following table

Access

Access Mode Mode DescriptionDescription

0x00 Invalid

0x00 Invalid

0x01

0x01 Default Default seed seed requestrequest 0x02

0x02 Default Default key key transmissiontransmission 2n-1

2n-1 n = 0x02..0x40 n = 0x02..0x40

Seed request for different security Seed request for different security

levels levels 2n 2n n = 0x02..0x40 n = 0x02..0x40

Key transmission for different Key transmission for different

security levels security levels 0x81..0xFF

0x81..0xFF Manufacturer Manufacturer specificspecific Tab. 9: access mode parameter values Tab. 9: access mode parameter values

The ECU supports only the default seed request and default key transmission. The ECU supports only the default seed request and default key transmission.

The seed is a 16 bit number the key is the 1-complement of the seed. For instance seed = 0xC75A, The seed is a 16 bit number the key is the 1-complement of the seed. For instance seed = 0xC75A, key = 0x38A5.

key = 0x38A5.

If two unsuccessful access attempts are performed , no more access attempts are allowed for 10 If two unsuccessful access attempts are performed , no more access attempts are allowed for 10 seconds. The same timeout is set at the power-up or reset.

seconds. The same timeout is set at the power-up or reset.

The following table summarizes the negative responses of this service The following table summarizes the negative responses of this service

(28)

Negative

Negative response response code code DescriptionDescription REQUIRED

REQUIRED TIME DELAY TIME DELAY NOT EXPIRED NOT EXPIRED The 10 The 10 seconds seconds timeout at timeout at power-up or power-up or after after  two access attempts has not expired. Retry two access attempts has not expired. Retry later 

later  REQUEST

REQUEST OUT OUT OF OF RANGE RANGE The The AccessMode AccessMode parameter parameter is is out out of of  allowed range.

allowed range. CONDITION

CONDITION NOT NOT CORRECT CORRECT The The value value for for the the AccessMode AccessMode parameter parameter inin a SendKey security access is not the one a SendKey security access is not the one used in the RequestSeed increased by 1. used in the RequestSeed increased by 1. EXCEED

EXCEED NUMBER NUMBER OF OF ATTEMPTS ATTEMPTS Two access Two access attempts were attempts were unsuccessfull.unsuccessfull. Restart the security access procedure.

Restart the security access procedure.

After a successfull security access the server enter the

After a successfull security access the server enter the UNLOCKEDUNLOCKEDstatus.status.

Request #1 Request #1 Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Security Security access access SID SID 27 27 SASA #2

#2 Access Access mode mode : : request request seed seed 01 01 ACCMODEACCMODE Positive

Positive response response #1#1 Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Security Security access access positive positive response response SID SID 67 67 SASA #2

#2 Access Access mode mode : : request request seed seed 01 01 ACCMODEACCMODE #3

#3 Seed Seed LSB LSB XX XX SEEDSEED

#4

#4 Seed Seed MSB MSB XXXX

#5

#5 Security Security access access status status 34 34 SACCSTATSACCSTAT Negative

Negative response response #1#1 Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Negative Negative response response #1 #1 SID SID 7F 7F NACKNACK #2

#2 Security Security access access SID SID 27 27 SASA #3

(29)

Request #2 Request #2 Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Security Security access access SID SID 27 27 SASA #2

#2 Access Access mode mode : : send send key key 02 02 ACCMODEACCMODE #3

#3 Key Key LSB LSB XX XX KEYKEY

#4

#4 Key Key MSB MSB XXXX

Positive

Positive response response #2#2 Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Security Security access access positive positive response response SID SID 67 67 SASA #2

#2 Access Access mode mode : : send send key key 02 02 ACCMODEACCMODE #3

#3 Security Security access access status status 34 34 SACCSTATSACCSTAT Negative

Negative response response #2#2 Data

Data Byte Byte Description Description Byte Byte Value Value (Hex) (Hex) MnemonicMnemonic #1

#1 Negative Negative response response #2 #2 SID SID 7F 7F NACKNACK #2

#2 Security Security access access SID SID 27 27 SASA #3

#3 Response Response code code XX XX RCRC

6.11

6.11 ECU

ECU reset

reset

Use this service to reset the ECU. The client must be prepared to re-establish the communication Use this service to reset the ECU. The client must be prepared to re-establish the communication with the server. The ECU will perform a real hardware reset.

with the server. The ECU will perform a real hardware reset. Only the

Only the PowerOn PowerOnvalue is allowed for thevalue is allowed for the ResetMode ResetModeparameter.parameter. The

The PowerOnWhi PowerOnWhileMaintaileMaintainingCommunicningCommunicationation value is not allowed and a negative response willvalue is not allowed and a negative response will  be receive

 be received by the clid by the client.ent. If 

If  ResetMode ResetMode == PowerOn PowerOn the hardware and software watch dogs are stopped and the ECU haltsthe hardware and software watch dogs are stopped and the ECU halts wating for the reset signal. After the rest signal has arrived the ECU starts its operations like after a wating for the reset signal. After the rest signal has arrived the ECU starts its operations like after a  power-up.

 power-up. The The client client will will receive receive no no response response and and shall shall prepare prepare itself itself to to re-establre-establish ish thethe communication with the server.

communication with the server.

6.12

6.12 Read

Read ECU

ECU identification

identification

The Read ECU identification request message requests identification data from the server. The type The Read ECU identification request message requests identification data from the server. The type of identification data requested by the client shall be identified by the

of identification data requested by the client shall be identified by the  Identifica IdentificationOptiontionOption

 paramete

 parameter. r. The The server sends server sends an an identificidentification data ation data record included record included in in the the Read Read ECU ECU identificaidentificationtion  positive re

 positive response mesponse message.ssage.

Identification options in the range 0x00÷0xFF are reserved by ISO14230-3. Identification options in the range 0x00÷0xFF are reserved by ISO14230-3.

References

Related documents