Need a unproblematic, practical intro to OBD2?

In this guide we introduce the On Board Diagnostic (OBD2) protocol incl. the OBD2 connector, OBD2 parameter IDs (PID) and the link to CAN bus.

Note: This is a practical intro and so you will too larn how to request and decode OBD2 data, fundamental logging employ cases and practical tips.

Run into below why this has become the #1 OBD2 tutorial.

You tin also check out our OBD2 intro video above (150K+ views on YouTube)

What is OBD2?

In short, OBD2 is your vehicle's built-in self-diagnostic organisation.

Y'all've probably encountered OBD2 already:

Ever noticed the malfunction indicator light on your dashboard?

That is your car telling you there is an issue. If y'all visit a mechanic, he will use an OBD2 scanner to diagnose the issue.

To do then, he will connect the OBD2 reader to the OBD2 16 pin connector almost the steering wheel.

This lets him read OBD2 codes aka Diagnostic Trouble Codes (DTCs) to review and troubleshoot the effect.

What is OBD2 On Board Diagnostics Malfunction Indicator Light MIL

OBD Connector Pinout Socket Female Type A DLC

The OBD2 connector

The OBD2 connector lets y'all access information from your car easily. The standard SAE J1962 specifies ii female OBD2 16-pin connector types (A & B).

In the analogy is an example of a Type A OBD2 pin connector (also sometimes referred to equally the Information Link Connector, DLC).

A few things to note:

  • The OBD2 connector is near your steering wheel, but may exist hidden behind covers/panels
  • Pin sixteen supplies bombardment power (ofttimes while the ignition is off)
  • The OBD2 pinout depends on the communication protocol
  • The nearly common protocol is CAN (via ISO 15765), meaning that pins 6 (CAN-H) and fourteen (Can-L) will typically exist connected

OBD2 connector - type A vs. B

In exercise, you may run across both the type A and type B OBD2 connector. Typically, type A will be found in cars, while type B is common in medium and heavy duty vehicles.

As evident from the analogy, the two types share similar OBD2 pinouts, just provide two different power supply outputs (12V for type A and 24V for type B). Frequently the baud rate will differ as well, with cars typically using 500K, while most heavy duty vehicles use 250K (more recently with support for 500K).

To assistance physically distinguish between the ii types of OBD2 sockets, note that the type B OBD2 connector has an interrupted groove in the middle. Equally a outcome, a type B OBD2 adapter cable will be compatible with both types A and B, while a type A will not fit into a type B socket.

OBD2 Connector Type A vs B SAE J1962 Car Van Truck

Does my car have OBD2?

In short: Probably!

Almost all newer cars support OBD2 and virtually run on CAN (ISO 15765). For older cars, be aware that even if a 16 pin OBD2 connector is present, it may still not support OBD2. Ane manner to determine compliance is to place where & when it was bought new:

Does My Car Have OBD2?


Link between OBD2 and CAN autobus

On lath diagnostics, OBD2, is a 'higher layer protocol' (like a linguistic communication). Can is a method for communication (like a phone).

In particular, the OBD2 standard specifies the OBD2 connector, incl. a set of five protocols that it tin run on (see below). Farther, since 2008, CAN autobus (ISO 15765) has been the mandatory protocol for OBD2 in all cars sold in the U.s..

OBD2 vs CAN bus ISO15765

OBD2 vs CAN Bus ISO 11765 ISO 11898 OSI Layer

What is the ISO 15765 standard?

ISO 15765 refers to a set up of restrictions applied to the CAN standard (which is itself defined in ISO 11898). One might say that ISO 15765 is like "Can for cars".

In particular, ISO 15765-iv describes the physical, information link layer and network layers, seeking to standardize the CAN double-decker interface for external test equipment. ISO 15765-2 in turn describes the transport layer (ISO TP) for sending CAN frames with payloads that exceed 8 bytes. This sub standard is also sometimes referred to as Diagnostic Communication over Tin (or DoCAN). Encounter besides the 7 layer OSI model illustration.

OBD2 can as well be compared to other higher layer protocols (e.g. J1939, CANopen).

The 5 OBD2 protocols

Equally explained above, CAN bus today serves as the basis for OBD2 communication in the vast majority of cars through ISO 15765.

However, if you're inspecting an older motorcar (pre 2008), information technology is useful to know the other iv protocols that have been used as basis for OBD2. Note besides the pinouts, which can exist used to determine which protocol may be used in your auto.

  • ISO 15765 (CAN bus): Mandatory in US cars since 2008 and is today used in the vast majority of cars
  • ISO14230-iv (KWP2000): The Keyword Protocol 2000 was a common protocol for 2003+ cars in e.thou. Asia
  • ISO9141-2: Used in European union, Chrysler & Asian cars in 2000-04
  • SAE J1850 (VPW): Used mostly in older GM cars
  • SAE J1850 (PWM): Used mostly in older Ford cars

OBD2 Standards KWP2000 SAE J1850 ISO9141 ISO 15765


Below we listing some of the most relevant SAE/ISO standards related to OBD2:

SAE J1962: This standard defindes the concrete connector used for the OBD2 interfacing, i.eastward. the OBD2 connector. The standard describes both the vehicle OBD2 connector and the connector used by the external test equipment (e.m. an OBD2 scanner or OBD2 information logger). In item, the standard dictates the location and access to the OBD2 connector.

SAE J1979: The SAE J1979 standard describes the methods for requesting diagnostic information via the OBD2 protocol. It also includes a list of standardized public OBD2 parameter IDs (OBD2 PIDs) that automotive OEMs may implement in cars (though they are not required to practise so). Vehicle OEMs may also decide to implement boosted proprietary OBD2 PIDs beyond those outlined by the SAE J1979 standard.

SAE J1939: The J1939 standard describes the data protocol used for heavy-duty vehicle communication. While OBD2 PID information is but available on-asking by OBD2 test equipment, the J1939 protocol is used in most heavy-duty vehicles as the basic means for communicating Tin traffic - meaning data is circulate continuously.

ISO 11898: This standard describes the Tin double-decker information link layer and physical layer, serving as the ground for OBD2 advice in most cars today

ISO 15765-2: The ISO-TP standard describes the 'Transport Layer', i.e. how to transport data packets exceeding 8 bytes via CAN bus. This standard is important every bit it forms the basis for Unified Diagnostic Services (UDS) advice, which relies on sending multiframe CAN data packets.

ISO 14229: This describes UDS communication in detail



OBD2 history

OBD2 originates from California where the California Air Resources Lath (CARB) required OBD in all new cars from 1991+ for emission control purposes.

The OBD2 standard was recommended past the Society of Automotive Engineers (SAE) and standardized DTCs and the OBD connector across manufacturers (SAE J1962).

From there, the OBD2 standard was rolled out step-by-stride:

  • 1996: OBD2 made mandatory in The states for cars/light trucks
  • 2001: Required in EU for gasoline cars
  • 2003: Required in European union too for diesel cars (EOBD)
  • 2005: OBD2 was required in U.s. for medium duty vehicles
  • 2008: United states of america cars must use ISO 15765-4 (CAN) as OBD2 ground
  • 2010: Finally, OBD2 was required in US heavy duty vehicles

OBD2 History Emission Control Exhaust EOBD2 EOBDII

OBD2 History Timeline Overview

OBD2 Future OBD3 remote diagnostics emissions testing cloud IoT

OBD2 time to come

OBD2 is hither to stay - but in what form?

Two potential routes may radically change OBD2:


In today's earth of connected cars, OBD2 tests can seem cumbersome: Manually doing emission command checks is fourth dimension-consuming and expensive.

The solution? OBD3 - adding telematics to all cars.

Basically, OBD3 adds a small radio transponder (as in eastward.yard. bridge tolls) to all cars. Using this, the auto vehicle identification number (VIN) and DTCs can exist sent via WiFi to a central server for checks.

Many devices today already facilitate transfer of CAN or OBD2 data via WiFi/cellular - e.chiliad. the CANedge2 WiFi Tin can logger.

This saves cost and is convenient, but it is besides politically a claiming due to surveillance concerns.

The OBD2 protocol was originally designed for stationary emission controls.

Yet, today OBD2 is used extensively for generating real-fourth dimension data by third parties - via OBD2 dongles, CAN loggers etc. Withal, the German car industry is looking to modify this:

OBD has been designed to service cars in repair shops. In no fashion has it been intended to allow 3rd parties to build a form of data-driven economic system on the access through this interface"

- Christoph Grote, SVP Electronics, BMW (2017)

The proposal is to "turn off" the OBD2 functionality while driving - and instead collect the data in a central server. This would effectively put the manufacturers in command of the automotive 'big data'.

The argumentation is based in security (e.m. removing the risk of car hacking), though many see information technology as a commercial move. Whether this becomes a real tendency is to exist seen - but it may truly disrupt the market for OBD2 3rd party services.

OBD2 Future Electric Vehicles Block Access to data



OBD2 parameter IDs (PID)

Why should you care virtually OBD2 information?

Mechanics obviously care most OBD2 DTCs (maybe you lot do too), while regulatory entities need OBD2 to command emission.

Only the OBD2 protocol also supports a broad range of standard parameter IDs (PIDs) that can be logged beyond near cars.

This means that you tin easily get human-readable OBD2 data from your car on speed, RPM, throttle position and more.

In other words, OBD2 lets yous clarify data from yous motorcar easily - in contrast to the OEM specific proprietary raw Tin can information.

In principle it is simple to log the raw Tin can frames from your machine. If you east.1000. connect a CAN logger to the OBD2 connector, you lot'll start logging broadcasted Tin bus data out-the-box. All the same, the raw CAN messages need to be decoded via a database of conversion rules (DBC) and a suitable CAN software that supports DBC decoding (like e.g. asammdf). The claiming is that these Tin DBC files are typically proprietary, making the raw Tin can information unreadable unless you're the automotive OEM.

Machine hackers may effort to reverse engineer the rules, though this can be difficult. CAN is, all the same, yet the only method to become "full access" to your car data - while OBD2 simply provides access to a express subset of data.


OBD2 protocol request respond frames

OBD2 PID data logger request 7df 7e8

How to log OBD2 data?

OBD2 data logging works as follows:

  • You connect an OBD2 logger to the OBD2 connector
  • Using the tool, you send 'asking frames' via CAN
  • The relevant ECUs send 'response frames' via CAN
  • Decode the raw OBD2 responses via e.g. an OBD2 DBC

In other words, a Tin logger that is able to transmit custom Tin frames tin can besides be used as an OBD2 logger.

Annotation that cars differ by model/year in what OBD2 PIDs they back up. For details, see our OBD2 data logger guide.

CANedge OBD2 data logger

The CANedge lets you easily log OBD2 information to an viii-32 GB SD bill of fare. Just specify what OBD2 PIDs y'all wish to request, then connect information technology to your automobile via an OBD2 adapter to start logging. Process the information via complimentary software/APIs and our OBD2 DBC.

learn more

Raw OBD2 frame details

To go started recording OBD2 data, it is helpful to understand the basics of the raw OBD2 message construction. In simplified terms, an OBD2 message is comprised of an identifier and information. Further, the information is separate in Fashion, PID and data bytes (A, B, C, D) as below.

OBD2 PIDs OBD-ii Message Structure Breakdown Explained

Identifier: For OBD2 messages, the identifier is standard xi-bit and used to distinguish between "request messages" (ID 7DF) and "response messages" (ID 7E8 to 7EF). Note that 7E8 will typically be where the main engine or ECU responds at.

Length: This merely reflects the length in number of bytes of the remaining information (03 to 06). For the Vehicle Speed example, it is 02 for the request (since only 01 and 0D follow), while for the response it is 03 as both 41, 0D and 32 follow.

Style: For requests, this will be between 01-0A. For responses the 0 is replaced by 4 (i.e. 41, 42, … , 4A). At that place are x modes as described in the SAE J1979 OBD2 standard. Mode one shows Current Information and is eastward.1000. used for looking at real-fourth dimension vehicle speed, RPM etc. Other modes are used to e.g. show or clear stored diagnostic trouble codes and show freeze frame data.

PID: For each mode, a list of standard OBD2 PIDs be - e.chiliad. in Way 01, PID 0D is Vehicle Speed. For the full list, bank check out our OBD2 PID overview. Each PID has a clarification and some have a specified min/max and conversion formula.

The formula for speed is east.grand. but A, significant that the A data byte (which is in HEX) is converted to decimal to go the km/h converted value (i.e. 32 becomes 50 km/h above). For e.thou. RPM (PID 0C), the formula is (256*A + B) / 4.

A, B, C, D: These are the data bytes in HEX, which need to be converted to decimal grade before they are used in the PID formula calculations. Note that the last information byte (after Dh) is not used.

OBD2 request/response example

An example of a request/response Tin message for the PID 'Vehicle Speed' with a value of 50 km/h can be seen in the illustration.

Note in particular how the formula for the OBD2 PID 0D (Vehicle Speed) simply involves taking the 4th byte (0x32) and converting it to decimal form (fifty).


In some vehicles (eastward.yard. vans and light/medium/heavy duty vehicles), you may observe that the raw CAN data uses extended 29-scrap CAN identifiers instead of 11-bit CAN identifiers.

In this case, you will typically need to alter the OBD2 PID requests to use the Can ID 18DB33F1 instead of 7DF. The data payload construction is kept identical to the examples for 11-flake Tin IDs.

If the vehicle responds to the requests, you'll typically see responses with Can IDs 18DAF100 to 18DAF1FF (in practise, typically 18DAF110 and 18DAF11E). The response identifier is besides sometimes shown in the 'J1939 PGN' form, specifically the PGN 0xDA00 (55808), which in the J1939-71 standard is marked as 'Reserved for ISO 15765-ii'.

We provide an OBD2 DBC file for both the 11-bit and 29-bit responses, enabling simple decoding of the data in most CAN software tools.

OBD2 request 7DF response 7e8 OBD2 PID example Vehicle Speed 0D

OBD2 services modes current data freeze frame clear dtc

The x OBD2 services (aka modes)

There are x OBD2 diagnostic services (or modes) as described in the SAE J1979 OBD2 standard. Mode i shows Current Information and is used for looking at real-time parameters similar vehicle speed, RPM, throttle position etc. Other modes are eastward.thousand. used to show/clear diagnostic trouble codes (DTCs) and show freeze frame information.

Manufacturers do non have to support all diagnostic services - and they may support modes outside these 10 services (i.eastward. manufacturer specific OBD2 services).




OBD2 data logging - use case examples

OBD2 data from cars and light trucks can be used in various utilise cases:

OBD2 data logger on board diagnostics

Logging data from cars

OBD2 information from cars can e.g. be used to reduce fuel costs, improve driving, test image parts and insurance

Acquire more than

OBD2 real-time streaming diagnostics

Real-time car diagnostics

OBD2 interfaces tin be used to stream human-readable OBD2 data in real-fourth dimension, e.g. for diagnosing vehicle issues

Larn more

OBD2 data logger preventive maintenance

Predictive maintenance

Cars and calorie-free trucks can be monitored via IoT OBD2 loggers in the cloud to predict and avoid breakdowns

Learn more

Black box CAN logger insurance warranty

Vehicle blackbox logger

An OBD2 logger can serve as a 'blackbox' for vehicles or equipment, providing data for e.g. disputes or diagnostics

Learn more

Exercise you take an OBD2 information logging apply example? Reach out for free sparring!

Contact us


Below nosotros outline the nearly mutual OBD2 analyzer categories:

OBD2 scanners: Used as automobile diagnostic tools in static reading/immigration of DTCs by e.k. mechanics. An OBD2 scan tool is typically used in diagnosing vehicle issues e.g. indicated by an activated MIL. Diverse types exist and some private persons use depression price variants as simple car code readers for self-diagnosing their car health.

Bluetooth OBD2 dongles: Many OBD2 bluetooth dongles exist, which let yous view car data direct on your smartphone via an app. Typically OBDII bluetooth dongles are low cost and like shooting fish in a barrel-to-use, though also limited in terms of their usability outside the bluetooth-to-app visualization purpose. The purpose of an OBD2 bluetooth dongle is typically to monitor personal driving beliefs and vehicle wellness.

OBD2 interfaces: Provide real-time OBD2 data to a PC via USB streaming. OBD2 interfaces are typically used in advanced car diagnostics and OEM vehicle development. Further, Tin can interfaces that support OBD2 requests can be useful every bit part of opposite applied science proprietary CAN coach parameters.

OBD2 loggers: Used to log OBD2 data from a car to an SD carte - platonic for east.g. blackbox employ cases or prototype field tests by automotive OEMs. As an example, the CANedge1 lets you log CAN bus data, as well every bit request OBD2 information by sending custom frame requests to the Can bus.

WiFi OBD2 logger: WiFi OBD2 loggers and WiFi OBD2 dongles enable the automated transfer of OBD2 information via WiFi (incl. 3G/4G) to a server/cloud. WiFi OBD2 loggers are typically used for OBD2 telematics utilize cases, where car fleet data needs to exist nerveless automatically and visualized via OBD2 data dashboards. For example, the CANedge2 lets you log Tin/OBD2 information and machine-push it via a WiFi accces point to your own server. The data can be processed in free software tools and e.g. visualized in Grafana dashboards.

CANedge2 Telematics OBD2 Logger

The CANedge2 makes information technology easy to log OBD2 data to an SD card - and upload information technology via WiFi to your own server.

Need to log/stream OBD2 information?

Get your OBD2 data logger today!



Recommended for y'all