Getting Started with OBD-II
OBD-II Protocols
There are five different communication protocols available under the OBD-II spec. Like so many things, manufacturers tend to have their preferences and think their protocol is best, hence the variation. Here's a quick overview of each and a description of the pins used on the DLC for each.
SAE J1850 PWM
This signal is Pulse Width Modulation, which runs at 41.6 kbps. This protocol is generally used on Ford vehicles.
Feature | Description |
---|---|
BUS + | Pin 2 |
BUS - | Pin 10 |
12V | Pin 16 |
GND | Pins 4, 5 |
Bus State: | Active when BUS + is pulled HIGH, BUS - is pulled LOW |
Maximum Signal Voltage: | 5V |
Minimum Signal Voltage: | 0V |
Number of bytes: | 12 |
Bit Timing: | '1' bit - 8uS, '0' bit - 16uS, Start of Frame - 48uS |
SAE J1850 VPW
This protocol is Variable Pulse Width, which runs at 10.4 kbps. GM vehicles typically use this version.
Feature | Description |
---|---|
BUS + | Pin 2 |
12V | Pin 16 |
GND | Pins 4, 5 |
Bus State: | Bus idles low |
Maximum Signal Voltage: | +7V |
Decision Signal Voltage: | +3.5V |
Minimum Signal Voltage: | 0V |
Number of bytes: | 12 |
Bit Timing: | '1' bit -HIGH 64uS, '0' bit -HIGH 128uS, Start of Frame - HIGH 200uS |
ISO 9141-2
If you have a Chrysler, European, or Asian vehicle, this is your protocol. It runs at 10.4 kbps and is asynchronous serial communication.
Feature | Description |
---|---|
K Line (bidirectional) | Pin 7 |
L Line (unidirectional, optional) | Pin 15 |
12V | Pin 16 |
GND | Pins 4, 5 |
Bus State: | K Line idles HIGH. Bus is active when driven LOW. |
Maximum Signal Voltage: | +12V |
Minimum Signal Voltage: | 0V |
Number of bytes: | Message: 260, Data: 255 |
Bit Timing: | UART: 10400bps, 8-N-1 |
ISO 14230 KWP2000
This is the Keyword Protocol 2000, another asynchronous serial communication method that also runs at up to 10.4 kbps. This also is used on Chrsyler, European, or Asian vehicles.
Feature | Description |
---|---|
K Line (bidirectional) | Pin 7 |
L Line (unidirectional, optional) | Pin 15 |
12V | Pin 16 |
GND | Pins 4, 5 |
Bus State: | Active when driven LOW. |
Maximum Signal Voltage: | +12V |
Minimum Signal Voltage: | 0V |
Number of bytes: | Data: 255 |
Bit Timing: | UART: 10400bps, 8-N-1 |
ISO 15765 CAN
This protocol has been mandated in all vehicles sold in the US from 2008 and later. However, if you have a European car from 2003 or later, the vehicle may have CAN. It's a two-wire communication method and can run at up to 1Mbps.
Feature | Description |
---|---|
CAN HIGH (CAN H) | Pin 6 |
CAN LOW (CAN L) | Pin 14 |
12V | Pin 16 |
GND | Pins 4, 5 |
Bus State: | Active when CANH pulled HIGH, CANL pulled LOW. Idle when signals are floating. |
CANH Signal Voltage: | +3.5V |
CANL Signal Voltage: | +1.5V |
Maximum Signal Voltage: | CANH = +4.5V, CANL = +2.25V |
Minimum Signal Voltage: | CANH = +2.75V, CANL = +0.5V |
Number of bytes: | L |
Bit Timing: | 250kbit/sec or 500kbit/sec |