The KWP2000 Protocol in Automotive Diagnostic Applications

The KWP2000 protocol has become a de facto adequate in automotive methodical applications. It is standardized as ISO 14230-3. KWP2000 describes the implementation of various questioning facilities you can accethrough the protocol. You can control KWP2000 in the region of several transport layers such as K-lineage (serial) or CAN.

Transport Protocol
As KWP2000 uses messages of amendable byte lengths, a transport protocol is indispensable on the subject of the order of layers bearing in mind single-handedly a proficiently defined (unexpected) message length, such as CAN. The transport protocol splits a long KWP2000 notice into pieces that can be transferred more than the network and reassembles those pieces to recover the indigenous declaration.

KWP2000 runs considering hint to CAN upon various transport protocols such as ISO TP (ISO 15765-2), TP 1.6, TP 2. 0 (Volkswagen), and SAE J1939-21. For KWP2000, the Automotive Diagnostic Command Set supports by yourself the ISO TP (standardized in ISO 15765-2) and manufacturer-specific VW TP 2.0 transport protocols.

Diagnostic Services
The methodical facilities let not guilty in KWP2000 are grouped in vibrant units and identified by a one-byte code (ServiceId). The customary does not elaborate all codes; for some codes, the passable refers to toting happening SAE or ISO standards, and some are reserved for manufacturer-specific extensions. The Automotive Diagnostic Command Set supports the bearing in mind facilities:

Diagnostic Management
Data Transmission
Stored Data Transmission (Diagnostic Trouble Codes)
Input/Output Control
Remote Activation of Routine

Upload/Download and Extended facilities are not allocation of the Automotive Diagnostic Command Set. Do you know about Autel Maxisys Elite?

Diagnostic Service Format
Diagnostic facilities have a common notice format. Each bolster defines a Request Message, Positive Response Message, and Negative Response Message. The Request Message has the ServiceId as first byte, benefit additional encouragement-defined parameters. The Positive Response Message has an echo of the ServiceId when bit 6 set as first byte, lead the facilitate-defined be of the same mind parameters.

The Negative Response Message is usually a three-byte notice: it has the Negative Response ServiceId as first byte, an echo of the native ServiceId as second byte, and a ResponseCode as third byte. The unaided exception to this format is the negative recognition to an EscapeCode encouragement; here, the third byte is an echo of the fanatic-defined bolster code, and the fourth byte is the ResponseCode. The KWP2000 usual partly defines the ResponseCodes, but there is room left for manufacturer-specific extensions. For some of the ResponseCodes, KWP2000 defines an mishap handling procedure. Because both sure and negative responses have an echo of the requested facilitate, you can always assign the responses to their corresponding demand.

Connect/Disconnect
KWP2000 expects a logical session to be started taking into account StartDiagnosticSession and terminated once StopDiagnosticSession. However, StartDiagnosticSession has a DiagnosticMode parameter that determines the questioning session type. Depending upon this type, the ECU may or may not name evolve systematic services, or perform in a restricted mode where not all ECU functions are user-easily reached. The DiagnosticMode parameter values are manufacturer specific and not defined in the taking place to era-fortunate. For a logical session to remain sprightly, it must kill the TesterPresent minister to periodically if no subsidiary support is executed. If the TesterPresent assist is missing for a certain period of epoch, the diagnostic session is terminated, and the ECU returns to divulge operation mode.