<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to CANopen errors on slave Codesys 3.5, CAA </title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/77a5895be1/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Engineering/thread/77a5895be1/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Engineering/thread/77a5895be1/</id><updated>2022-07-21T12:56:13.012000Z</updated><subtitle>Recent posts to CANopen errors on slave Codesys 3.5, CAA </subtitle><entry><title>CANopen errors on slave Codesys 3.5, CAA </title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/77a5895be1/?limit=25#979d" rel="alternate"/><published>2022-07-21T12:56:13.012000Z</published><updated>2022-07-21T12:56:13.012000Z</updated><author><name>zack</name><uri>https://forge.codesys.com/u/zack/</uri></author><id>https://forge.codesys.com47c7a0758898e102f631f7fa4dd844386d71cc4d</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Got the nodes to show up by ticking off "Enabling diagnosis for devices", restarting the application and rebuilding.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>CANopen errors on slave Codesys 3.5, CAA </title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/77a5895be1/?limit=25#696c" rel="alternate"/><published>2022-07-21T12:56:09.030000Z</published><updated>2022-07-21T12:56:09.030000Z</updated><author><name>zack</name><uri>https://forge.codesys.com/u/zack/</uri></author><id>https://forge.codesys.com06854ecebaf83dae965af8e59afe539b5bb1a486</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Got the nodes to show up by ticking off "Enabling diagnosis for devices", restarting the application and rebuilding.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>CANopen errors on slave Codesys 3.5, CAA </title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/77a5895be1/?limit=25#1fcb" rel="alternate"/><published>2022-07-12T13:37:20.698000Z</published><updated>2022-07-12T13:37:20.698000Z</updated><author><name>zack</name><uri>https://forge.codesys.com/u/zack/</uri></author><id>https://forge.codesys.combe91a9be69b225647e080266248093db90dedcf3</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;I'm trying to make use of the CAA library to detect specific can errors locally on a CANopen slave. On paper this should work:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="k"&gt;Set&lt;/span&gt; &lt;span class="n"&gt;temp&lt;/span&gt; &lt;span class="n"&gt;node&lt;/span&gt;
&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="n"&gt;_itfNode&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
    &lt;span class="n"&gt;_itfNode&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;DED&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;GetRoot&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="n"&gt;END_IF&lt;/span&gt;

&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="k"&gt;Iterate&lt;/span&gt; &lt;span class="n"&gt;till&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="k"&gt;only&lt;/span&gt; &lt;span class="n"&gt;CANbus&lt;/span&gt; &lt;span class="n"&gt;node&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="k"&gt;found&lt;/span&gt;
&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="k"&gt;NOT&lt;/span&gt; &lt;span class="n"&gt;CANbusNodeFound&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
    &lt;span class="n"&gt;_itfBus&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;DED&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;INode_TO_IBus&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;_itfNode&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="k"&gt;Check&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;CANbus&lt;/span&gt; &lt;span class="n"&gt;has&lt;/span&gt; &lt;span class="n"&gt;been&lt;/span&gt; &lt;span class="n"&gt;able&lt;/span&gt; &lt;span class="k"&gt;to&lt;/span&gt; &lt;span class="k"&gt;cast&lt;/span&gt;
    &lt;span class="k"&gt;IF&lt;/span&gt;  &lt;span class="n"&gt;_itfBus&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
        &lt;span class="n"&gt;CANbusNodeFound&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;TRUE&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="k"&gt;ELSE&lt;/span&gt;
        &lt;span class="n"&gt;_itfNode&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;DED&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;GetNextNode&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;_itfNode&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
    &lt;span class="n"&gt;END_IF&lt;/span&gt;
&lt;span class="k"&gt;ELSE&lt;/span&gt;
    &lt;span class="n"&gt;GetCANopenBusError&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;itfNode&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;_itfRootNode&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;einBusError&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;CANopenBusError&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="n"&gt;END_IF&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;But the itfRootNode is null and checking if itfRootNode is root returns FALSE. Confused, I tried to quickly list nodes with&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;nodes&lt;/span&gt; &lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;ARRAY&lt;/span&gt; &lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="o"&gt;..&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt; &lt;span class="n"&gt;OF&lt;/span&gt; &lt;span class="n"&gt;DED&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;INODE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;But they're all null. Which is weird since changing the number of nodes before compiling requires an array size change. Has anyone had a similar problem? Using a safety PLC (CR710s) with the standard application selected.&lt;/p&gt;
&lt;p&gt;I'd be very thankful for any kind of pointers =).&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>