<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to SysLibCom and RS485 on WAGO PFC200</title><link href="https://forge.codesys.com/forge/talk/CODESYS-V2/thread/677fb2e0cb/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/CODESYS-V2/thread/677fb2e0cb/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/CODESYS-V2/thread/677fb2e0cb/</id><updated>2020-02-27T19:48:11.050000Z</updated><subtitle>Recent posts to SysLibCom and RS485 on WAGO PFC200</subtitle><entry><title>SysLibCom and RS485 on WAGO PFC200</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/677fb2e0cb/?limit=25#8380" rel="alternate"/><published>2020-02-27T19:48:11.050000Z</published><updated>2020-02-27T19:48:11.050000Z</updated><author><name>mikkelaunsbjerg</name><uri>https://forge.codesys.com/u/mikkelaunsbjerg/</uri></author><id>https://forge.codesys.com7b5766d0875cc1860b6e130eefe836e937022f3b</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Thanks for the inputs. With the help of WAGO support, I found the solution which I'm posting here for future reference.&lt;/p&gt;
&lt;p&gt;When using the RS232/RS485 port on the PFC200 module, make sure to:&lt;/p&gt;
&lt;p&gt;What tripped me, was using the "wrong" library, not that it was documented anywhere that I could find.&lt;/p&gt;
&lt;p&gt;/Mikkel&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>SysLibCom and RS485 on WAGO PFC200</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/677fb2e0cb/?limit=25#216a" rel="alternate"/><published>2020-02-27T19:48:09.747000Z</published><updated>2020-02-27T19:48:09.747000Z</updated><author><name>Anonymous</name><uri>https://forge.codesys.com/u/*anonymous/</uri></author><id>https://forge.codesys.com8b807caac9392992811fad33bc972c45f61df46f</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;em&gt;Originally created by:&lt;/em&gt; scott_cunningham&lt;/p&gt;
&lt;p&gt;It is typically a hardware setup, not on the coding side.  On some controllers, it is a BIOS setting.  Perhaps it is a configuration selection however you setup the hardware (WAGO specific).&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>SysLibCom and RS485 on WAGO PFC200</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/677fb2e0cb/?limit=25#7c48" rel="alternate"/><published>2020-02-27T19:48:06.108000Z</published><updated>2020-02-27T19:48:06.108000Z</updated><author><name>maniek765</name><uri>https://forge.codesys.com/u/maniek765/</uri></author><id>https://forge.codesys.comba54715602b3a372a42146bcff88985e3ffb8e92</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Are you sure that it's COM0 not COM1?&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>SysLibCom and RS485 on WAGO PFC200</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/677fb2e0cb/?limit=25#3321" rel="alternate"/><published>2020-02-27T19:48:04.781000Z</published><updated>2020-02-27T19:48:04.781000Z</updated><author><name>mikkelaunsbjerg</name><uri>https://forge.codesys.com/u/mikkelaunsbjerg/</uri></author><id>https://forge.codesys.com1b96ce6a7f372238461d601c546ba10cabfd5189</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Greetings.&lt;/p&gt;
&lt;p&gt;I have an PFC200 PLC from WAGO (750-8208), which has a RS232 / RS485 port on the front.&lt;/p&gt;
&lt;p&gt;I would like to use that port to communicate with an external device using a custom RS485 protocol (i.e. not modbus rtu). I have implemented using the SysLibCom library and tested the protocol code using the simulator. I cannot get the communication to work when connecting the PLC to the device, or even to my laptop via a FTDI RS485 dongle. I suspect that something is not right in the com port setup on the PLC.&lt;/p&gt;
&lt;p&gt;Maybe I'm missing something obvious, but I can't see a way to tell SysLibCom that COM0 should be treated as an RS485 port and not a RS232. Can anyone tell me how to do this? Is it even necessary?&lt;/p&gt;
&lt;p&gt;My code looks like this:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nv"&gt;PROGRAM&lt;/span&gt; &lt;span class="nv"&gt;PT100_PRG&lt;/span&gt;
&lt;span class="nv"&gt;VAR&lt;/span&gt;
   &lt;span class="nv"&gt;sComSettings&lt;/span&gt;: &lt;span class="nv"&gt;COMSETTINGS&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;ePort&lt;/span&gt; : &lt;span class="nv"&gt;PORTS&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM0&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;bIsConfigured&lt;/span&gt;: &lt;span class="nv"&gt;BOOL&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;FALSE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;bIsOpen&lt;/span&gt;: &lt;span class="nv"&gt;BOOL&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;FALSE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;dwHandle&lt;/span&gt;: &lt;span class="nv"&gt;DWORD&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;dwErrorCount&lt;/span&gt; : &lt;span class="nv"&gt;DWORD&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;END_VAR&lt;/span&gt;
&lt;span class="nv"&gt;VAR&lt;/span&gt; &lt;span class="nv"&gt;CONSTANT&lt;/span&gt;
   &lt;span class="nv"&gt;bAddress&lt;/span&gt; : &lt;span class="nv"&gt;BYTE&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;dwErrorHandle&lt;/span&gt; : &lt;span class="nv"&gt;DWORD&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;#&lt;span class="nv"&gt;FFFFFFFF&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;END_VAR&lt;/span&gt;
&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nv"&gt;implementation&lt;/span&gt; &lt;span class="nv"&gt;starts&lt;/span&gt; &lt;span class="nv"&gt;here&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;bIsOpen&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;FALSE&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
   &lt;span class="nv"&gt;bIsConfigured&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;FALSE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;dwHandle&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;SysComOpen&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;ePort&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;dwHandle&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt; &lt;span class="nv"&gt;dwErrorHandle&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
      &lt;span class="nv"&gt;bIsOpen&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;END_IF&lt;/span&gt;
&lt;span class="nv"&gt;END_IF&lt;/span&gt;
&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;bIsOpen&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt; &lt;span class="nv"&gt;AND&lt;/span&gt; &lt;span class="nv"&gt;bIsConfigured&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;FALSE&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
   &lt;span class="nv"&gt;sComSettings&lt;/span&gt;.&lt;span class="nv"&gt;byParity&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;sComSettings&lt;/span&gt;.&lt;span class="nv"&gt;byStopBits&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;sComSettings&lt;/span&gt;.&lt;span class="nv"&gt;dwBaudRate&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;38400&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;sComSettings&lt;/span&gt;.&lt;span class="nv"&gt;dwTimeout&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;sComSettings&lt;/span&gt;.&lt;span class="nv"&gt;dwBufferSize&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;sComSettings&lt;/span&gt;.&lt;span class="nv"&gt;dwScan&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;SysComSetSettings&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;dwHandle&lt;/span&gt;, &lt;span class="nv"&gt;ADR&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;sComSettings&lt;/span&gt;&lt;span class="ss"&gt;))&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
      &lt;span class="nv"&gt;bIsConfigured&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;END_IF&lt;/span&gt;
&lt;span class="nv"&gt;END_IF&lt;/span&gt;
&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; ... &lt;span class="nv"&gt;and&lt;/span&gt; &lt;span class="nv"&gt;some&lt;/span&gt; &lt;span class="nv"&gt;write&lt;/span&gt; &lt;span class="nv"&gt;logic&lt;/span&gt; &lt;span class="nv"&gt;here&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Thanks in advance.&lt;/p&gt;
&lt;p&gt;/Mikkel&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>