ISO-TP Transport Protocol (ISO 15765-2)

ISO-TP (ISO 15765-2) is an international standard that defines a transport protocol for sending messages over a CAN bus that exceed the payload limits of a single CAN frame. It enables segmentation and reassembly of long messages by splitting them into multiple frames and adding control information for proper interpretation by the receiver.

ISO-TP operates across the OSI network and transport layers and supports payloads up to 4 GB in modern revisions. It is most commonly used for automotive diagnostics, such as and KWP2000 over OBD-II, but is also widely applied in any CAN-based system requiring data transfers larger than the native CAN frame size.

ISO-TP frames

ISO-TP specifies 3 types of CAN frames to transmit datas. The type of frame is specified by the 4 most significant bits of the first byte of message data.

Frame type
Description
Single frame (SF)
For data payloads up to 7 bytes (only frame required in this case)
First frame (FF)
In case of payload with more than 7 bytes: first frame of the multi-frame packet
Consecutive frame (CF)
In case of payload with more than 7 bytes: repetitive frame containing the payload datas
Flow control frame (FC)
In case of payload with more than 7 bytes: Response frame to acknowledge the start of CF frames sending after a FF

ISO-TP Frame Converter

Enter a raw hex payload below to see how it is split into ISO-TP CAN frames. You can also edit the CAN bytes directly to decode them back into the original payload.

Raw Data
Enter hex bytes to encode into ISO-TP frames

0 bytes

PCI bytes
Padding (0xCC)
CAN Frames (ISO-TP)
Enter data on the left to generate frames

No frames to display. Enter hex data on the left.