CAN bus basics: frames, identifiers, bit timing, termination
How Classical CAN works: data frames with 11- or 29-bit identifiers, arbitration, bit rate and sample point, termination and error handling — and what CAN FD changes.
The frame
A Classical CAN data frame contains:
| Field | Size | Meaning |
|---|---|---|
| Identifier | 11 bit (base) or 29 bit (extended) | Message ID and priority — lower value wins |
| RTR / IDE | 1 bit each | Remote request / extended format flags |
| DLC | 4 bit | Data length code, 0…8 bytes |
| Data | 0…8 bytes | Payload |
| CRC | 15 bit + delimiter | Error detection |
| ACK | 2 bit | Any receiver acknowledges |
Messages have no destination address: every node receives every frame and filters by identifier.
Arbitration
All nodes may start at the same time. Bits are dominant (0) or recessive (1); a node that sends recessive but reads dominant loses arbitration and stops. The frame with the lowest identifier continues without delay — priorities are built into the IDs.
Bit rate and bit timing
Common rates: 125, 250, 500 kbit/s and 1 Mbit/s. Each bit is divided into time quanta (tq): sync segment (1 tq), propagation + phase segment 1, phase segment 2. The sample point is where the bit is read, typically around 87.5 % of the bit time (CiA recommendation for CANopen). All nodes need the same bit rate and compatible sample points.
bit rate = f_clock / (prescaler × (1 + TSEG1 + TSEG2)). Use the CAN bit timing calculator.
Higher rates allow shorter buses because a bit must propagate to the farthest node and back within the sample point; 1 Mbit/s is practical only for a few tens of metres.
Physical layer and termination
Two wires CAN_H / CAN_L, twisted, 120 Ω terminating resistors at both ends. With power off you should measure about 60 Ω between CAN_H and CAN_L. 120 Ω means one terminator is missing; about 40 Ω means three terminators.
Errors
Each node counts transmit and receive errors. After repeated errors it becomes error passive and finally bus off — it stops transmitting until it is reset. A node going bus-off is a typical symptom of wrong bit rate, missing termination or a wiring fault.
CAN FD
CAN FD keeps the arbitration phase but can switch to a higher bit rate for the data phase and carries up to 64 bytes. Classical CAN nodes do not understand FD frames and will flag errors on a mixed bus.
Decode frames with the CAN frame tool.
Connections
Open in Knowledge Graph →Loading the map…
Sources
- CAN knowledge (CAN, CAN FD, CANopen) — CAN in Automation (CiA)
Updated 2026-10-02