<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.arm.com/utility/feedstylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>tms570 dcan lost arbitration retransmit failure</title><link>https://community.arm.com/developer/tools-software/tools/f/keil-forum/29637/tms570-dcan-lost-arbitration-retransmit-failure</link><description> 
Hello, 
I work with mcbtms570 and I have DCAN problem. I need to know, how
can I detect re-transmit failure after lost arbitration? Very
helpfull will be also information if does exist something like lost
arbitration interrupt? In datasheet I couldn</description><dc:language>en-US</dc:language><generator>Telligent Community 10</generator><item><title>RE: tms570 dcan lost arbitration retransmit failure</title><link>https://community.arm.com/thread/61316?ContentTypeID=1</link><pubDate>Tue, 30 Oct 2012 11:24:31 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:95d362f6-87ce-4f0c-bc14-4f67d280d085</guid><dc:creator>HansBernhard Broeker</dc:creator><description>&lt;p&gt;&lt;p&gt;
&lt;i&gt;I need to know, how can I detect re-transmit failure after lost
arbitration?&lt;/i&gt;&lt;/p&gt;

&lt;p&gt;
Strictly speaking you can&amp;#39;t, because there is no such thing as a
&amp;quot;re-transmit failure&amp;quot; in CAN, and even if there was, lost arbitration
would have little or nothing to do with that.&lt;/p&gt;

&lt;p&gt;
Lost arbitration is just a fact of life on CSMA-type networks like
CAN. It&amp;#39;ll happen to you, and CAN is designed to tolerate it. That&amp;#39;s
why it has automatic re-transmission and message prioritization built
right into the standard.&lt;/p&gt;

&lt;p&gt;
You don&amp;#39;t need to do anything to get your CAN node to re-transmit
after losing arbitration. Nor is there a fixed limit on the number of
attempts or the maximum allowed time for re-transmission attempts,
thus no such thing as a &amp;quot;re-transmit failure&amp;quot;.&lt;/p&gt;

&lt;p&gt;
If the bus really is so busy as to not allow your transmission to
make it onto the bus at all, the signal you should be looking is not
an interrupt --- it&amp;#39;s a &lt;b&gt;lack&lt;/b&gt; of Tx confirmation
interrupts.&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: tms570 dcan lost arbitration retransmit failure</title><link>https://community.arm.com/thread/61314?ContentTypeID=1</link><pubDate>Tue, 30 Oct 2012 07:46:51 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:01e43906-9c72-4938-a4d6-3002a1966f84</guid><dc:creator>John Linq</dc:creator><description>&lt;p&gt;&lt;p&gt;
20.2.8.3 Transmission of Messages in Event Driven CAN
Communication&lt;/p&gt;

&lt;p&gt;
If the DCAN has lost the arbitration or if an error occurred
during the transmission, the message will be retransmitted as soon as
the CAN bus is free again.&lt;/p&gt;

&lt;p&gt;
If Automatic Retransmission mode is &lt;b&gt;disabled&lt;/b&gt; by setting the
DAR bit in the CAN Control Register, the behavior of bits TxRqst and
NewDat in the Message Control Register of the Interface Register set
is as follows:&lt;br /&gt;
&amp;bull; When a transmission starts, the TxRqst bit of the respective
Interface Register set is reset, while bit NewDat remains set.&lt;br /&gt;
&amp;bull; When the transmission has been successfully completed, the
NewDat bit is reset.&lt;br /&gt;
When a transmission failed (lost arbitration or error) bit NewDat
remains set. To restart the transmission, the application has to set
TxRqst again.&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>