|
View:
New views
5 Messages
—
Rating Filter:
Alert me
|
|
|
CRC error in CAN networksHello,
I'm analyzing different failures in a CAN network, and I have a problem with the CRC error. What will occur if a node (in the transmission case) has a faulty check sum generator? Is the following scenario correct? 1)The node 5 (with a faulty check sum generator) sends one message, but all other nodes will recognize a CRC error and they will send an error active frame until they will reach the error passive mode. During this phase node 5 will not increment TEC and it will continue to retransmit the message. 2)As soon as the other nodes enter in the error passive mode, no node will acknowledge the message of node 5 and it will keep retransmitting the message, by incrementing every time its TEC until the node will reach the error-passive mode. 3)The node will continue to retransmit the message, and nodes with ID>5 will not be able to transmit any message (since they will alway lose arbitration against node 5). Thank you. Regards, Luca -- Archives and useful links: http://groups.yahoo.com/group/CANbus Subscribe and unsubscribe at www.vector-informatik.com/canlist/ Report any problems to <canlist-owner@...> |
|
|
|
RE: CRC error in CAN networksA node that transmits a message which is damaged by an Error Flag
increments the error counter by 8 not 1. It will retry 32 times before it reaches bus off state. What you do with it then is application dependant. AFAIK without digging into the specification, a node which sees a CRC error will issue an Error Flag which then causes the transmitting node to resend. Your terminology can be misleading. There is no such thing as an Error Frame. An Error Flag is 6 consecutive dominant bits. Any node that did not see the original cause of the error but will see the 6 bit Error Flag and then issue it's own Error Flag of 6 dominant bits. That means an Error Flag can be anything from 6 to 12 bits long. An Error Passive node (with an TEC or REC > 127) will still acknowledge messages. It just won't send an Active Error Flag. John Dammeyer Automation Artisans Inc. http://www.autoartisans.com/ELS/ Ph. 1 250 544 4950 > -----Original Message----- > From: canlist-owner@... > [mailto:canlist-owner@...] On > Behalf Of luca.bolognino > Sent: Thursday, October 01, 2009 8:01 AM > To: canlist@... > Subject: [CANLIST] CRC error in CAN networks > > > Hello, > > I'm analyzing different failures in a CAN network, and I have > a problem with the CRC error. > > What will occur if a node (in the transmission case) has a > faulty check sum generator? > > Is the following scenario correct? > > 1)The node 5 (with a faulty check sum generator) sends one > message, but all other nodes will recognize a CRC error and > they will send an error active frame until they will reach > the error passive mode. During this phase node 5 will not > increment TEC and it will continue to retransmit the message. > 2)As soon as the other nodes enter in the error passive mode, > no node will acknowledge the message of node 5 and it will > keep retransmitting the message, by incrementing every time > its TEC until the node will reach the error-passive mode. > 3)The node will continue to retransmit the message, and nodes > with ID>5 will not be able to transmit any message (since > they will alway lose arbitration against node 5). > > Thank you. > Regards, > > Luca > > -- > Archives and useful links: http://groups.yahoo.com/group/CANbus > Subscribe and unsubscribe at www.vector-informatik.com/canlist/ > Report any problems to <canlist-owner@...> > > -- Archives and useful links: http://groups.yahoo.com/group/CANbus Subscribe and unsubscribe at www.vector-informatik.com/canlist/ Report any problems to <canlist-owner@...> |
|
|
|
RE: CRC error in CAN networks
|
|
|
|
RE: CRC error in CAN networksA node
transmitting in error will go error passive and then bus off sooner than
the receivers. A node transmitting onto a bus where there is never an ACK
will transmit forever. It's up to your firmware to determine that a node
which was supposed to send a message hasn't done so in a reasonable amount of
time.
For
example, one system I designed may or may not have had a CAN bus attached.
To prevent RFI (aircraft application), if there was no response to a
broadcast message after 30 seconds I shut down the sending of CAN messages from
that node. It would then have to receive one before it was allowed to
transmit. The long period was to allow other equipment to be turned on out
of sequence by users.
If the
node is defective and all other nodes go error passive then indeed it could
transmit forever. If your firmware determines that the node is still
trying to send after 100mS for example, it should shut up and listen until told
to talk again.
John
Dammeyer
Automation Artisans Inc.
|
|
|
|
RE: CRC error in CAN networksLuca,
> Could this scenario (although is very unlikely) block the network? A ERROR FRAME consists of error flag + error delimiter. The error delimiter is set to 8 bits (this means that it has wait a little bit longer than the normal case). Please read about the definition of a ERROR FRAME on page 16 (1.3.1) in the BOSCH CAN spefifiction (free), can be downloaded here: http://www.canopen.nu/pdf/can2spec.pdf In the CAN (datalink layer) spec by ISO (ISO 11898-1) see section 10.4.4. -- Best Regards, Ulrik Hagström http://www.canopen.nu > A node transmitting in error will go error passive and then bus off sooner > than the receivers. A node transmitting onto a bus where there is never > an ACK will transmit forever. It's up to your firmware to determine that > a node which was supposed to send a message hasn't done so in a reasonable > amount of time. > > For example, one system I designed may or may not have had a CAN bus > attached. To prevent RFI (aircraft application), if there was no > response to a broadcast message after 30 seconds I shut down the sending > of CAN messages from that node. It would then have to receive one before > it was allowed to transmit. The long period was to allow other equipment > to be turned on out of sequence by users. > > If the node is defective and all other nodes go error passive then indeed > it could transmit forever. If your firmware determines that the node is > still trying to send after 100mS for example, it should shut up and listen > until told to talk again. > > John Dammeyer > > > Automation Artisans Inc. > http://www.autoartisans.com/ELS/ > Ph. 1 250 544 4950 > > > -----Original Message----- > From: canlist-owner@... > [mailto:canlist-owner@...] On Behalf Of Luca > Bolognino > Sent: Friday, October 02, 2009 9:10 AM > To: canlist@... > Subject: RE: [CANLIST] CRC error in CAN networks > > > > Thank you, John, for your explanation. > Just one thing: you wrote that an Error passive state node will still > acknowledge messages. But if all nodes of the network are in error passive > state and the node 5 (with a faulty check sum generator) will start to > transmit, will the other nodes acknowledge the message? > If not, will the node continue to retransmit the message, so nodes with > ID>5 will not be able to transmit any message? > Could this scenario (although is very unlikely) block the network? > Thank you. > > Luca > > > --- On Thu, 10/1/09, John Dammeyer <johnd@...> wrote: > > > > From: John Dammeyer <johnd@...> > Subject: RE: [CANLIST] CRC error in CAN networks > To: canlist@... > Date: Thursday, October 1, 2009, 4:15 PM > > > A node that transmits a message which is damaged by an Error Flag > increments the error counter by 8 not 1. It will retry 32 times before it > reaches bus off state. What you do with it then is application dependant. > > AFAIK without digging into the specification, a node which sees a CRC > error will issue an Error Flag which then causes the transmitting node to > resend. > > Your terminology can be misleading. There is no such thing as an Error > Frame. An Error Flag is 6 consecutive dominant bits. Any node that did > not see the original cause of the error but will see the 6 bit Error Flag > and then issue it's own Error Flag of 6 dominant bits. That means an > Error Flag can be anything from 6 to 12 bits long. > > An Error Passive node (with an TEC or REC > 127) will still acknowledge > messages. It just won't send an Active Error Flag. > > John Dammeyer > > Automation Artisans Inc. > http://www.autoartisans.com/ELS/ > Ph. 1 250 544 4950 > > >> -----Original Message----- >> From: canlist-owner@... > <http://us.mc448.mail.yahoo.com/mc/compose?to=canlist-owner@... > r-informatik.de> >> [mailto:canlist-owner@... > <http://us.mc448.mail.yahoo.com/mc/compose?to=canlist-owner@... > r-informatik.de> ] On >> Behalf Of luca.bolognino >> Sent: Thursday, October 01, 2009 8:01 AM >> To: canlist@... > <http://us.mc448.mail.yahoo.com/mc/compose?to=canlist@... >> >> Subject: [CANLIST] CRC error in CAN networks >> >> >> Hello, >> >> I'm analyzing different failures in a CAN network, and I have >> a problem with the CRC error. >> >> What will occur if a node (in the transmission case) has a >> faulty check sum generator? >> >> Is the following scenario correct? >> >> 1)The node 5 (with a faulty check sum generator) sends one >> message, but all other nodes will recognize a CRC error and >> they will send an error active frame until they will reach >> the error passive mode. During this phase node 5 will not >> increment TEC and it will continue to retransmit the message. >> 2)As soon as the other nodes enter in the error passive mode, >> no node will acknowledge the message of node 5 and it will >> keep retransmitting the message, by incrementing every time >> its TEC until the node will reach the error-passive mode. >> 3)The node will continue to retransmit the message, and nodes >> with ID>5 will not be able to transmit any message (since >> they will alway lose arbitration against node 5). >> >> Thank you. >> Regards, >> >> Luca >> >> -- >> Archives and useful links: http://groups.yahoo.com/group/CANbus >> Subscribe and unsubscribe at www.vector-informatik.com/canlist/ >> Report any problems to <canlist-owner@... > <http://us.mc448.mail.yahoo.com/mc/compose?to=canlist-owner@vector-informa > tik.de> > >> >> > > -- > Archives and useful links: http://groups.yahoo.com/group/CANbus > Subscribe and unsubscribe at www.vector-informatik.com/canlist/ > Report any problems to <canlist-owner@... > <http://us.mc448.mail.yahoo.com/mc/compose?to=canlist-owner@vector-informa > tik.de> > > > > > -- Archives and useful links: http://groups.yahoo.com/group/CANbus Subscribe and unsubscribe at www.vector-informatik.com/canlist/ Report any problems to <canlist-owner@...> |
| Free embeddable forum powered by Nabble | Forum Help |