<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Redundancy problem - primary PLC suddenly goes to simulation state</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/76f96b6e82/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Engineering/thread/76f96b6e82/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Engineering/thread/76f96b6e82/</id><updated>2025-06-18T15:41:18.494000Z</updated><subtitle>Recent posts to Redundancy problem - primary PLC suddenly goes to simulation state</subtitle><entry><title>Redundancy problem - primary PLC suddenly goes to simulation state</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/76f96b6e82/?limit=25#fa88" rel="alternate"/><published>2025-06-18T15:41:18.494000Z</published><updated>2025-06-18T15:41:18.494000Z</updated><author><name>milan-svarny</name><uri>https://forge.codesys.com/u/milan-svarny/</uri></author><id>https://forge.codesys.com476a18345e90c2fcfffe4ca3eeb3bb8eb362b144</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi Ivanmaltar, &lt;/p&gt;
&lt;p&gt;please , did you solve the problem? &lt;br/&gt;
i have the same case. &lt;br/&gt;
Second PLC is going suddenly to Sim. state &lt;/p&gt;
&lt;p&gt;Thank you&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Redundancy problem - primary PLC suddenly goes to simulation state</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/76f96b6e82/?limit=25#dcb7" rel="alternate"/><published>2025-06-18T15:41:09.827000Z</published><updated>2025-06-18T15:41:09.827000Z</updated><author><name>milan-svarny</name><uri>https://forge.codesys.com/u/milan-svarny/</uri></author><id>https://forge.codesys.com79590872e493cee6dd3072e8a252d2ab1afb865f</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi Ivanmaltar, &lt;/p&gt;
&lt;p&gt;please , did you solve the problem? &lt;br/&gt;
i have the same case. &lt;br/&gt;
Second PLC is going suddenly to Sim. state &lt;/p&gt;
&lt;p&gt;Thank you&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Redundancy problem - primary PLC suddenly goes to simulation state</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/76f96b6e82/?limit=25#3bb2" rel="alternate"/><published>2025-06-18T15:41:00.257000Z</published><updated>2025-06-18T15:41:00.257000Z</updated><author><name>milan-svarny</name><uri>https://forge.codesys.com/u/milan-svarny/</uri></author><id>https://forge.codesys.combcef6f7d014fba1c828bd891b0b416dadf647371</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi Ivanmaltar, &lt;/p&gt;
&lt;p&gt;please , did you solve the problem? &lt;br/&gt;
i have the same case. &lt;br/&gt;
Second PLC is going suddenly to Sim. state &lt;/p&gt;
&lt;p&gt;Thank you&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Redundancy problem - primary PLC suddenly goes to simulation state</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/76f96b6e82/?limit=25#dcf0" rel="alternate"/><published>2025-06-18T15:40:51.080000Z</published><updated>2025-06-18T15:40:51.080000Z</updated><author><name>milan-svarny</name><uri>https://forge.codesys.com/u/milan-svarny/</uri></author><id>https://forge.codesys.comdfde9aec032d51f92c013cdabf68a6e3fd990fc9</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi Ivanmaltar, &lt;/p&gt;
&lt;p&gt;please , did you solve the problem? &lt;br/&gt;
i have the same case. &lt;br/&gt;
Second PLC is going suddenly to Sim. state &lt;/p&gt;
&lt;p&gt;Thank you&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Redundancy problem - primary PLC suddenly goes to simulation state</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/76f96b6e82/?limit=25#faa8" rel="alternate"/><published>2025-06-18T15:40:42.020000Z</published><updated>2025-06-18T15:40:42.020000Z</updated><author><name>milan-svarny</name><uri>https://forge.codesys.com/u/milan-svarny/</uri></author><id>https://forge.codesys.com814de29cf06d754c05754ac9c34265fca6be557c</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi Ivanmaltar, &lt;/p&gt;
&lt;p&gt;please , did you solve the problem? &lt;br/&gt;
i have the same case. &lt;br/&gt;
Second PLC is going suddenly to Sim. state &lt;/p&gt;
&lt;p&gt;Thank you&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Redundancy problem - primary PLC suddenly goes to simulation state</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/76f96b6e82/?limit=25#d117" rel="alternate"/><published>2025-06-18T15:40:36.916000Z</published><updated>2025-06-18T15:40:36.916000Z</updated><author><name>milan-svarny</name><uri>https://forge.codesys.com/u/milan-svarny/</uri></author><id>https://forge.codesys.comcf5afcb7559851f70294052f418fbce11ba885a8</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi Ivanmaltar, &lt;/p&gt;
&lt;p&gt;please , did you solve the problem? &lt;br/&gt;
i have the same case. &lt;br/&gt;
Second PLC is going suddenly to Sim. state &lt;/p&gt;
&lt;p&gt;Thank you&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Redundancy problem - primary PLC suddenly goes to simulation state</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/76f96b6e82/?limit=25#abb2" rel="alternate"/><published>2025-06-18T15:40:30.008000Z</published><updated>2025-06-18T15:40:30.008000Z</updated><author><name>milan-svarny</name><uri>https://forge.codesys.com/u/milan-svarny/</uri></author><id>https://forge.codesys.coma4650de233fa6bf4dec63693a041e97a29899676</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi Ivanmaltar, &lt;/p&gt;
&lt;p&gt;please , did you solve the problem? &lt;br/&gt;
i have the same case. &lt;br/&gt;
Second PLC is going suddenly to Sim. state &lt;/p&gt;
&lt;p&gt;Thank you&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Redundancy problem - primary PLC suddenly goes to simulation state</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/76f96b6e82/?limit=25#9043" rel="alternate"/><published>2025-06-18T15:40:26.617000Z</published><updated>2025-06-18T15:40:26.617000Z</updated><author><name>milan-svarny</name><uri>https://forge.codesys.com/u/milan-svarny/</uri></author><id>https://forge.codesys.comb56852f6149451481733b95abab2e7e65a9097b9</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi Ivanmaltar, &lt;/p&gt;
&lt;p&gt;please , did you solve the problem? &lt;br/&gt;
i have the same case. &lt;br/&gt;
Second PLC is going suddenly to Sim. state &lt;/p&gt;
&lt;p&gt;Thank you&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Redundancy problem - primary PLC suddenly goes to simulation state</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/76f96b6e82/?limit=25#945c" rel="alternate"/><published>2023-03-06T12:04:24.252000Z</published><updated>2023-03-06T12:04:24.252000Z</updated><author><name>ivanmaltar</name><uri>https://forge.codesys.com/u/ivanmaltar/</uri></author><id>https://forge.codesys.comd571084f861ed7921fbe6baca7f1b59a0d670fbe</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;I am using two RevPi Connect PLCs with 'CODESYS Control for Raspberry Pi MC SL' license. The PLCs work as redundant. Redundancy license is installed on both of them, and the redundancy works fine.&lt;/p&gt;
&lt;p&gt;No and then, the problem occurs and a primary PLC switches to SIMULATION mode. On the secondary PLC an redundancy error occurs - RDCY_NOMESSAGE_ERROR and then it switches state to STANDALONE. After a few seconds, the primary PLC gets back to ACTIVE state and it resets it CODESYS runtime.&lt;/p&gt;
&lt;p&gt;In the log I can see thet there was an error on primary PLC:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 1, 0, 0, RedundancySynchronizeData called&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 4, 1, 0, **** ERROR: Synchronization terminated after 303ms because of SyncWaitTime&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 1, 0, 0, RedundancySynchronizeData called&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 1, 0, 0, RedundancySynchronizeData called&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 1, 1, 0, No sync telegram RSRV_EndCycleReply (8) received after 300ms&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 1, 1, 0, Last tick recv 0xdb2e030 send 0xdb2e160&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 4, 1, 0, **** ERROR: Timeout: No sync message RSRV_EndCycleReply (8) from standby: Standalone&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 1, 0, 0, RedundancySynchronizeData called&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 4, 1, 0, **** ERROR: RedundancySynchronizeData called state not allowed&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 1, 0, 0, RedundancySynchronizeData called&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 4, 1, 0, **** ERROR: RedundancySynchronizeData called state not allowed&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 4, 33, 0, **** ERROR: Telegram received (sync): 8&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 4, 33, 0, **** ERROR: -&amp;gt; MsgId: received RSRV_EndCycleReply&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 4, 33, 0, **** ERROR:  expected 1, 3, 11 &lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 4, 33, 0, **** ERROR: Received RSRV_EndCycleReply in standalone.&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:03:56Z, 0x00000129, 1, 0, 0, Connection still established: Go to simulation and try to synchronize&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;And after a few seconds:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="c"&gt;2023-03-03T18:04:06Z, 0x00000129, 1, 0, 0, Try to synchronize&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:06Z, 0x00000129, 1, 0, 0, RedundancySynchronize called&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:06Z, 0x00000129, 1, 0, 0, RedundancySynchronizeData called&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:06Z, 0x00000129, 4, 1, 0, **** ERROR: RedundancySynchronizeData called state not allowed&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:06Z, 0x00000129, 1, 0, 0, RedundancySynchronizeData called&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:06Z, 0x00000129, 4, 1, 0, **** ERROR: RedundancySynchronizeData called state not allowed&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:06Z, 0x00000129, 1, 0, 0, Delete redundant application ...&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:06Z, 0x00001019, 1, 16842752, 0, Reset Driver&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:06Z, 0x00001019, 1, 16973824, 0, Reset Driver&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:06Z, 0x00000129, 1, 0, 0, Update boot project files ...&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:06Z, 0x00000129, 1, 0, 0, Update boot project file '$PlcLogic$/Application/Application.app'&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:07Z, 0x00000129, 1, 0, 0, Update boot project file '$PlcLogic$/Application/Application.crc'&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:07Z, 0x00000129, 1, 0, 0, Update boot project file '$PlcLogic$/./Archive.prj'&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:09Z, 0x00000129, 1, 0, 0, Update boot project files finished&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:09Z, 0x00000129, 1, 0, 0, StartRedundantApplication&lt;/span&gt;
&lt;span class="c"&gt;2023-03-03T18:04:11Z, 0x00008000, 1, 1, 1, IoDrvUpdateConfiguration Success!&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;I can not get log from secondary PLC in the time the error occurd.&lt;/p&gt;
&lt;p&gt;In every cycle I call RedundancySynchronizeData() on the begining and the end of the cycle.&lt;/p&gt;
&lt;p&gt;Begining of the cycle:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;GetRedundancyState&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ADR&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;sReduState&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
&lt;span class="n"&gt;bConnectionState&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;GetConnectionState&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="n"&gt;sPlcIdent&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;GetPlcIdent&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="n"&gt;bAutoSync&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
    &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="n"&gt;sReduState&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;eRedundancyState&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;RDCY&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;STATE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;RS_CYCLE_STANDALONE&lt;/span&gt; &lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="n"&gt;bConnectionState&lt;/span&gt; &lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="n"&gt;xResSync&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;FALSE&lt;/span&gt; &lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="n"&gt;sPlcIdent&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;RDCY&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;PLC_IDENT&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;PLC_ID_2&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
            &lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="k"&gt;Call&lt;/span&gt; &lt;span class="k"&gt;of&lt;/span&gt; &lt;span class="n"&gt;Synchronize&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="n"&gt;redundant&lt;/span&gt; &lt;span class="n"&gt;application&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt; &lt;span class="n"&gt;Note&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;actual&lt;/span&gt; &lt;span class="n"&gt;synchronisation&lt;/span&gt; &lt;span class="k"&gt;is&lt;/span&gt; &lt;span class="n"&gt;executed&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="n"&gt;background&lt;/span&gt; &lt;span class="n"&gt;loop&lt;/span&gt; &lt;span class="k"&gt;with&lt;/span&gt; &lt;span class="k"&gt;some&lt;/span&gt; &lt;span class="n"&gt;delay&lt;/span&gt;
            &lt;span class="n"&gt;xResSync&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;RDCY&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Synchronize&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;IF&lt;/span&gt; &lt;span class="n"&gt;sPlcIdent&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;RDCY&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;PLC_IDENT&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;PLC_ID_1&lt;/span&gt; &lt;span class="k"&gt;AND&lt;/span&gt; &lt;span class="n"&gt;sReduState&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;eRedundancyState&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;RDCY&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;STATE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;RS_CYCLE_STANDBY&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
        &lt;span class="n"&gt;RDCY&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;SwitchToActive&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="n"&gt;END_IF&lt;/span&gt;
&lt;span class="n"&gt;END_IF&lt;/span&gt;

&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="n"&gt;sPlcIdent&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;RDCY&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;PLC_IDENT&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;PLC_ID_1&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
    &lt;span class="n"&gt;RedundancySynchronizeData&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;End of the cycle:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;IF sPlcIdent = RDCY.PLC_IDENT.PLC_ID_1 THEN&lt;/span&gt;
&lt;span class="err"&gt;    RedundancySynchronizeData();&lt;/span&gt;
&lt;span class="err"&gt;END_IF&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;In redundancy settings, I have configured the Timeout = 1000ms and Synchronization timeout = 3000ms&lt;/p&gt;
&lt;p&gt;I have put the log from primary PLC in the attachment, in the log there can be seen the moment the problem occurs.&lt;/p&gt;
&lt;p&gt;Is there something wrong in the configuration? How can I stop this from happening?&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>