CAN bus · ISO 11898-2 · CAN FD · Physical layer · Error detection · 9 min read

CAN Bus Fundamentals: Physical Layer, Frame Structure and Error Detection

Developed by Bosch in 1986 and standardised as ISO 11898, CAN bus is the backbone fieldbus for HVAC equipment, chillers, variable-speed drives, and building automation controllers. Its differential signalling, hardware arbitration, and five-layer error detection make it far more robust than RS485 Modbus in electrically noisy plant rooms — and understanding these fundamentals is essential before deploying any CANopen device.

ISO 11898-2 physical layer and differential signalling

ISO 11898-2 defines High-Speed CAN — the variant used in almost all building automation and industrial applications. The physical layer uses a differential pair: CAN_H (CAN High) and CAN_L (CAN Low), both referenced to GND. In the recessive state (logic 1), both lines float to approximately 2.5V and the differential voltage is 0V. In the dominant state (logic 0), CAN_H is driven to approximately 3.5V and CAN_L to approximately 1.5V, giving a 2V differential that is immune to common-mode noise up to ±30V.

Use shielded twisted pair with a characteristic impedance of 120Ω — Belden 9841 (single-pair, 24AWG) or equivalent. Connect the shield at one end only (typically at the panel) to avoid ground loops. Both ends of the bus segment must be terminated with a 120Ω resistor between CAN_H and CAN_L. Split termination (two 60Ω resistors with a 4.7nF capacitor to ground at the midpoint) improves EMC performance in high-noise environments.

CAN bus wiring — 3-wire connection

CAN bus cable (Belden 9841 or equivalent, 120Ω STP):
  CAN_H  → CAN_H terminals on all nodes
  CAN_L  → CAN_L terminals on all nodes
  GND    → GND terminals on all nodes (reference, not signal ground)

Termination resistors:
  Node 1 (first node on bus): 120Ω between CAN_H and CAN_L
  Node N (last node on bus): 120Ω between CAN_H and CAN_L
  All intermediate nodes: NO termination

Measure termination (bus powered off):
  CAN_H to CAN_L resistance should read ~60Ω
  (Two 120Ω resistors in parallel = 60Ω)
  Values outside 54–66Ω indicate missing or extra termination

Star topology and tree topology are not allowed on CAN bus. All nodes must connect to a single linear trunk cable — branch stubs must be kept under 0.3m to prevent signal reflections. Long stubs cause dominant bit errors at high bit rates.

Bit rate versus cable length

CAN bus bit rate is limited by propagation delay — the time it takes a signal to travel to the farthest node and return before the bit period ends. ISO 11898-2 specifies the standard bit rate and cable length combinations. Building automation systems rarely need 1 Mbit/s; 125 kbit/s or 250 kbit/s is typical for HVAC equipment over cable runs of 100–500m between plant rooms.

Bit rateMax cable lengthMax stub lengthTypical application
1 Mbit/s40 m0.3 mMachine control, short intra-panel
500 kbit/s100 m0.3 mIndustrial drives, compact plant room
250 kbit/s250 m0.3 mHVAC multi-chiller, floor plant room
125 kbit/s500 m0.3 mBuilding backbone, cross-floor runs
50 kbit/s1000 m0.3 mLong cable runs, large sites
20 kbit/s2500 m0.3 mCampus-wide, rarely used

All nodes on a single CAN segment must run at the same bit rate. Mixing 250 kbit/s and 125 kbit/s devices on the same bus is not possible — use a CAN repeater or separate segments connected via a gateway if different rates are required.

CAN frame structure

The standard CAN data frame (ISO 11898-1) consists of seven fields. Understanding the arbitration ID field is critical for CANopen configuration — the COB-ID (Communication Object Identifier) used in CANopen is the 11-bit standard CAN ID. Extended frames use 29-bit IDs and are used in CANopen with 4-byte COB-IDs (extended addressing mode).

FieldBitsDescription
SOF1Start of Frame — dominant bit that synchronises all receivers
Arbitration ID (standard)11Message identifier — lower value = higher priority on the bus
Arbitration ID (extended)29Extended frame format — includes 11-bit base + 18-bit extension
RTR1Remote Transmission Request — 1 = request for data from another node
IDE1Identifier Extension bit — 0 = standard frame, 1 = extended frame
DLC4Data Length Code — number of data bytes: 0 to 8
Data0–64 bitsPayload: 0 to 8 bytes for classical CAN; up to 64 bytes for CAN FD
CRC15 + 115-bit cyclic redundancy check plus CRC delimiter (recessive bit)
ACK2Acknowledgement slot (dominant) + ACK delimiter (recessive)
EOF7End of Frame — 7 recessive bits

Error detection mechanisms

CAN has five independent error detection mechanisms that operate simultaneously. Each detected error causes all nodes to discard the current frame and the transmitter to re-send. A node that repeatedly causes errors transitions from error-active to error-passive to bus-off state, protecting the network from a faulty node.

Error typeDetection methodCommon cause
CRC errorReceiver recalculates CRC and compares to transmitted valueCorrupted data bits from EMI or long cable
Bit errorTransmitter monitors bus and detects its own bit level mismatchShort circuit, bus contention, wiring fault
Frame errorFixed-format fields (EOF, CRC delimiter) checked for correct levelBit stuffing failure, corrupted frame structure
ACK errorTransmitter checks that at least one receiver sends dominant ACKMissing node, wrong bit rate, no termination
Stuff errorAfter 5 consecutive same-level bits, a complementary bit must followEMI causing same-level run to exceed 5 bits

Non-destructive bitwise arbitration

When two or more nodes attempt to transmit simultaneously, CAN resolves the conflict through bitwise arbitration without destroying either message. Each node monitors the bus while transmitting — if a node transmits a recessive bit (1) but reads a dominant bit (0), it immediately stops transmitting and switches to receiver mode. The node with the lowest numerical arbitration ID always wins.

In CANopen, this means lower COB-IDs have higher priority. Emergency messages (EMCY, COB-ID 0x080 + node ID) and heartbeat messages are assigned lower COB-IDs than PDO data — ensuring alarms are never delayed behind process data traffic. Assign the lowest node IDs to the most critical devices such as fire panel gateways or chiller alarm controllers.

CAN FD — Flexible Data-rate

CAN FD (ISO 11898-1:2015) extends classical CAN with two improvements: a variable data phase bit rate up to 8 Mbit/s (versus 1 Mbit/s for classical CAN) and a payload size up to 64 bytes (versus 8 bytes). The arbitration phase still runs at the classical bit rate for compatibility — only the data phase switches to the higher bit rate after the BRS (Bit Rate Switch) bit.

ParameterClassical CANCAN FD
Max arbitration bit rate1 Mbit/s1 Mbit/s (same — backwards compatible)
Max data phase bit rate1 Mbit/s8 Mbit/s
Max payload bytes8 bytes64 bytes
CRC length15 bits17 or 21 bits (longer for larger payloads)
Building automation useWidespread — most HVAC devicesEmerging — newer VFDs, energy meters

Most building automation CAN devices (chillers, AHUs, VFDs) still use classical CAN at 125 or 250 kbit/s. CAN FD hardware (PEAK-System PCAN-USB FD, Vector CANalyzer FD) is backwards compatible and can communicate with classical CAN nodes on the same segment, provided the data phase rate is not engaged when talking to classical nodes.

Diagnostic tools

Use a CAN analyser during commissioning to verify bus traffic, monitor error frames, and confirm node IDs before integrating with a CANopen gateway. Three tools are standard in the industry.

ToolInterfaceUse case
PEAK-System PCAN-USBUSB dongle, ~€100PCAN-View free software — sniff traffic, send frames, log to CSV
PEAK-System PCAN-USB FDUSB dongle CAN FD, ~€130As above but supports CAN FD data phase up to 8 Mbit/s
Vector CANalyzerPCI/USB card, professionalFull protocol analysis, CANopen object dictionary view, scripting
Kvaser Leaf Light v2USB dongle, ~€180Kvaser CanKing free software — good for field commissioning
PCAN-View (free)Software (Windows)Used with PEAK adapters — filter by COB-ID, monitor error counters

Need a CAN bus panel with CANopen gateway integration?

We design and build low-voltage panels with CANopen-to-KNX/Modbus/BACnet gateways, proper 120Ω termination, shielded CAN wiring, and commissioning documentation for HVAC and industrial sites.

Request a quote →
Loading...
Back to top