Error Frame Format
Error Frame Format
AGENDA
Shyam Bhat
VicharaVandana
Error Frame
Error Frame is one of the 4 frame types given in the CAN protocol
Error Frame Signals to other nodes on the network that current Data frame is
erroneous.
Any of the 5 CAN error upon detection by a node will result in destroying
current data frame by overlap of Error frame
To understand Error frame format we have to understand below three aspects:
1. Error Flag (Active and Passive)
2. Basic Error Frame
3. Complete Error Frame
Error Flag
When a node detects any CAN error, it knows that the current Data frame is not valid. So the
node has to signal other nodes on the network.
The Node signals the error to remaining nodes by a flag. This is called Error flag.
Error Flag has to be noticed by all other Nodes and not be mistaken to be normal frame bits.
So the format of a Error flag is chose in a way that such format cannot exist anywhere in a
normal data frame. Violation of Bit stuffing rule.
So Error Flag is 6 consecutive bits of same polarity. Depending on Polarity of bits, there are
two kinds of Error Flag
1) Active Error Flag : 6 consecutive dominant bits (000000)
2) Passive Error Flag : 6 consecutive recessive bits (111111)
Basic Error Frame
Error Frame on CAN bus is combination of multiple basic Error frames by various
nodes. Superposition of all Basic error frames forms complete error frame on bus.
After Error flag, 1st bit of Delimiter is sent by node. If it monitors a Dominant bit then it
waits till a recessive bit is monitored on the bus and then send remaining 7 delimiter
bits. Else if it monitors Recessive bit then sends remaining 7 Delimiter bits directly
Error Detected
Rx Detect – Active Flags Error Flag
Delimiter
Bit Error Intermission
Waiting
0 0 1
Tx Mode ED 0 0 0 0 0 0 1 W W W 1 1 1 1 1 1 1 1 1 1
Some Rx Error
Rx Mode ED 0 0 0 0 0 0 1 W W W W W W 1 1 1 1 1 1 1 1 1 1
Stuff Error
Rx Mode ED 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1
Rx Node 1 ED 1 1 1 1 1 1 1 W W W 1 1 1 1 1 1 1 1 1 1
Rx Node 2 0 1 1 0 1 1 0 0 0 0 1 1 1 0 1 1 0 0 0 1
CAN Bus 0 1 1 0 1 1 0 0 0 0 1 1 1 0 1 1 0 0 0 1
Tx Detect – Passive Flag
0 1 1 0 1 1 1 1 1 1 1 WWW 1 1 1 1 1 1 1 1 1 1
Tx Node
Normal ED Passive Flag D(1) Wait Delimiter (2:8) IFS
0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1
Rx Node 1
Normal ED Active Flag Delimiter (1:8) IFS
0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1
Rx Node 2
Normal ED Active Flag Delimiter (1:8) IFS
CAN Bus 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1
Points to Remember
Error frame signals the nodes that Data frame is invalid and hence not to process it.
Error frame always is sent in between a data frame destroying it on the bus.
Passive error flag from a node can destroy only the data frames the node transmits
Active error flag from a node can destroy the data frame the node transmits and receives.
Base error frames from various nodes together forms full error frame on the CAN bus
Once the error frame is finished the data frame shall be retransmitted again.