# item.guide
Side-by-Side Comparison Diagnostics & Protocols

CAN FD vs. DoCAN

Comparing 2 standards across 12 specifications. 12 key differences identified.

Comparing:
CAN FD
DoCAN

CAN FD (Controller Area Network with Flexible Data-Rate, developed by Bosch in 2012 and standardized under ISO 11898-1:2015) extends classical CAN bus to overcome bandwidth bottlenecks in modern vehicles. Increasing payload size from 8 bytes to 64 bytes and accelerating data transmission during the data phase from 500 kbps up to 2, 5, or 8 Mbps.

View full CAN FD spec sheet →

Diagnostics on CAN (DoCAN, standardized under ISO 15765-2 and ISO 15765-4) is the network and transport layer protocol that enables diagnostic protocols (such as UDS ISO 14229 and OBD-II ISO 15031) to transmit multi-byte messages (up to 4095 bytes) over 8-byte CAN bus frames. Managing packet segmentation, Flow Control handshakes, and block sizes.

View full DoCAN spec sheet →

Specification Comparison Table

12 Parameters
Parameter / Spec
Standardization
ISO 11898-1:2015 (Standardized CAN FD) ISO 15765-2 (ISO-TP Network Layer) / ISO 15765-4 (Emissions CAN)
Data Payload Capacity
Expanded from 8 bytes (Classic CAN) up to 64 bytes per frame (eightfold increase)
Dual Bit-Rate Architecture
Arbitration Phase: 500 kbps (preserves long wire distance and arbitration) | Data Phase: Switched to 2 Mbps, 5 Mbps, or 8 Mbps
Bit Rate Switch (BRS) Bit
Single control bit in header switches transceiver clock into high-speed mode and back after CRC
CRC Integrity Protection
17-bit CRC for payloads up to 16 bytes; 21-bit CRC for payloads up to 64 bytes (with 4-bit stuff-count field)
Modern Vehicle Deployments
Mandatory in modern ADAS radar/camera fusion, encrypted gateway security, and EV battery management systems (BMS)
Maximum Message Length
Up to 4,095 bytes (segmented across multiple sequential 8-byte CAN frames)
Single Frame (SF–PCI 0x0_)
Used when total payload fits in a single frame (up to 7 bytes in Classic CAN; byte 0 indicates data length)
First Frame (FF–PCI 0x1_)
First frame of a segmented message; bytes 0-1 encode the total 12-bit message length (e.g. 0x10 0x80 = 128 bytes)
Flow Control Frame (FC–PCI 0x3_)
Receiver sends Flow Status (Clear to Send), Block Size (BS), and Separation Time (STmin) pacing inter-frame delays
Consecutive Frame (CF–PCI 0x2_)
Transmits remaining data with a 4-bit rolling Sequence Number (0 to 15) to detect dropped packets
Emissions OBD Request IDs
Standard 11-bit functional broadcast ID: 0x7DF | Standard response IDs: 0x7E8 (Engine ECM), 0x7E9 (TCM)