The KWP2000 Protocol in Automotive Diagnostic Purposes

The KWP2000 protocol has turn into a de facto conventional in automotive diagnostic purposes. It is standardized as ISO 14230-3. KWP2000 describes the implementation of different diagnostic services you can accethrough the protocol. You can operate KWP2000 on a number of transport levels these as K-line (serial) or CAN.

Transport Protocol
As KWP2000 works by using messages of variable byte lengths, a transportation protocol is required on layers with only a perfectly outlined (limited) message length, these kinds of as CAN. The transport protocol splits a very long KWP2000 concept into pieces that can be transferred more than the community and reassembles those parts to recuperate the primary message.

KWP2000 runs on CAN on various transport protocols these types of as ISO TP (ISO 15765-2), TP 1.6, TP 2. (Volkswagen), and SAE J1939-21. For KWP2000, the Automotive Diagnostic Command Set supports only the ISO TP (standardized in ISO 15765-2) and manufacturer-unique VW TP 2. transportation protocols.

Diagnostic Providers
The diagnostic solutions out there in KWP2000 are grouped in functional units and determined by a a person-byte code (ServiceId). The common does not outline all codes for some codes, the normal refers to other SAE or ISO specifications, and some are reserved for manufacturer-specific extensions. The Automotive Diagnostic Command Set supports the subsequent companies:

• Diagnostic Administration
• Facts Transmission
• Stored Details Transmission (Diagnostic Difficulties Codes)
• Input/Output Regulate
• Distant Activation of Regimen

Add/Download and Extended expert services are not element of the Automotive Diagnostic Command Set.

Diagnostic Company Structure
Diagnostic products and services have a prevalent concept format. Every single company defines a Ask for Information, Optimistic Response Concept, and Destructive Response Concept. The Ask for Concept has the ServiceId as 1st byte, plus supplemental services-outlined parameters. The Favourable Reaction Information has an echo of the ServiceId with little bit 6 set as 1st byte, plus the provider-described reaction parameters.

The Adverse Reaction Concept is generally a 3-byte message: it has the Destructive Reaction ServiceId as very first byte, an echo of the initial ServiceId as second byte, and a ResponseCode as 3rd byte. The only exception to this format is the detrimental reaction to an EscapeCode service right here, the third byte is an echo of the person-outlined services code, and the fourth byte is the ResponseCode. The KWP2000 standard partly defines the ResponseCodes, but there is area still left for manufacturer-precise extensions. For some of the ResponseCodes, KWP2000 defines an error managing technique. Simply because both equally optimistic and detrimental responses have an echo of the asked for support, you can usually assign the responses to their corresponding request.

KWP2000 expects a diagnostic session to be started with StartDiagnosticSession and terminated with StopDiagnosticSession. On the other hand, StartDiagnosticSession has a DiagnosticMode parameter that determines the diagnostic session sort. Based on this style, the Eu could or may possibly not aid other diagnostic solutions, or work in a restricted manner the place not all Ecu capabilities are obtainable. The DiagnosticMode parameter values are maker precise and not outlined in the standard. For a diagnostic session to stay lively, it will have to execute the TesterPresent provider periodically if no other services is executed. If the TesterPresent support is lacking for a sure time period of time, the diagnostic session is terminated, and the Ecu returns to standard operation method.

A GetSeed/Unlock system may perhaps protect some diagnostic providers. Even so, the applicable companies are still left to the manufacturer and not described by the conventional.You can execute the GetSeed/Unlock mechanism by means of the SecurityAccess service. This defines many stages of stability, but the maker assigns these stages to specified services.

Examine/Publish Memory
Use the Go through/WriteMemoryByAddress providers to add/down load data to specified memory addresses on an European. The handle is a three-byte amount in KWP2000 and a 5-byte amount (four-byte handle and one-byte extension) in the calibration protocols. The Add/Download functional unit companies are remarkably maker precise and not nicely outlined in the normal, so they are not a very good way to present a common upload/obtain system.

Use the ReadDataByLocal/CommonIdentifier solutions to accessibility Ecu info in a way related to a DAQ record. A Nearby/CommonIdentifier describes a listing of Eu portions that are then transferred from the European to the tester. The transfer can be possibly solitary worth or periodic, with a sluggish, medium, or quick transfer charge. The transfer costs are maker precise you can use the SetDataRates services to set them, but this setting is maker certain. The Automotive Diagnostic Command Set supports single-level measurements.

Diagnostic Difficulties Codes
A important diagnostic attribute is the readout of Diagnostic Problems Codes (DTCs). KWP2000 defines several services that obtain DTCs primarily based on their group or position.

Input/Output Command
KWP2000 defines providers to modify interior or exterior European indicators. A person illustration is redirecting European sensor inputs to stimulated alerts. The management parameters of these instructions are company unique and not outlined in the standard.
Remote Activation of a Plan

These providers are comparable to the ActionService and DiagService functions of CCP. You can invoke an European inner routine determined by a Nearby/CommonIdentifier or a memory deal with. Contrary to the CCP circumstance, execution of this program can be asynchronous that is, there are separate Commence, Quit, and RequestResult companies. The control parameters of these commands are company particular and not outlined in the common.

Exterior References
For much more information and facts about the KWP2000 Typical, refer to the ISO 14230-3 common.