<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to RS232 Serial communication problems</title><link href="https://forge.codesys.com/forge/talk/CODESYS-V2/thread/f7567f8597/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/CODESYS-V2/thread/f7567f8597/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/CODESYS-V2/thread/f7567f8597/</id><updated>2020-02-27T23:19:29.059000Z</updated><subtitle>Recent posts to RS232 Serial communication problems</subtitle><entry><title>RS232 Serial communication problems</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/f7567f8597/?limit=25#28a7" rel="alternate"/><published>2020-02-27T23:19:29.059000Z</published><updated>2020-02-27T23:19:29.059000Z</updated><author><name>runar@samey.is</name><uri>https://forge.codesys.com/u/runar-samey-is/</uri></author><id>https://forge.codesys.com294e67e66e243bc41106f147c07deac20e740716</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Think you for your replay.&lt;/p&gt;
&lt;p&gt;I have tried it with and without handshake. I have also tried it without closing the port between sending messages. Here is the code I am using.&lt;/p&gt;
&lt;p&gt;IF xStartTest THEN&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="nv"&gt;The&lt;/span&gt; &lt;span class="nv"&gt;parameters&lt;/span&gt; &lt;span class="nv"&gt;are&lt;/span&gt; &lt;span class="nv"&gt;set&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt; &lt;span class="nv"&gt;Port&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;1&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;CAA_Parameter_Constants&lt;/span&gt;.&lt;span class="nv"&gt;udiPort&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;1&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="c1"&gt;; // the correct Port should be adapted&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;2&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;CAA_Parameter_Constants&lt;/span&gt;.&lt;span class="nv"&gt;udiBaudrate&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;2&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;115200&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;3&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;CAA_Parameter_Constants&lt;/span&gt;.&lt;span class="nv"&gt;udiParity&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;3&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;PARITY&lt;/span&gt;.&lt;span class="nv"&gt;NONE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;4&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;CAA_Parameter_Constants&lt;/span&gt;.&lt;span class="nv"&gt;udiStopBits&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;4&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;STOPBIT&lt;/span&gt;.&lt;span class="nv"&gt;ONESTOPBIT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;5&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;CAA_Parameter_Constants&lt;/span&gt;.&lt;span class="nv"&gt;udiTimeout&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;5&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&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;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;6&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;CAA_Parameter_Constants&lt;/span&gt;.&lt;span class="nv"&gt;udiByteSize&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;6&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;7&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;CAA_Parameter_Constants&lt;/span&gt;.&lt;span class="nv"&gt;udiBinary&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;7&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&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="o"&gt;//&lt;/span&gt; &lt;span class="nv"&gt;Handshake&lt;/span&gt; &lt;span class="nv"&gt;Paramet&lt;/span&gt;

        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;8&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;udiDtrControl&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;8&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="sc"&gt;#02&lt;/span&gt;&lt;span class="c1"&gt;; // handshake&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;9&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;udiOutxDsrFlow&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;9&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="c1"&gt;; // true&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;10&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;udiRtsControl&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;10&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="sc"&gt;#02&lt;/span&gt;&lt;span class="c1"&gt;; // handshake&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;11&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;udiOutxCtsFlow&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;11&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="c1"&gt;; // true&lt;/span&gt;

        &lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="nv"&gt;Handshake&lt;/span&gt; &lt;span class="nv"&gt;Parameter&lt;/span&gt;

        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;8&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;udiInX&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;8&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="c1"&gt;; // true&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;9&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;udiXonChar&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;9&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;17&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;10&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;udiXonLim&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;10&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;2048&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;11&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;udiOutX&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;11&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="c1"&gt;; // true&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;12&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;udiXoffChar&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;12&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;19&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;13&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;udiXoffLim&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;13&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;512&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;14&lt;/span&gt;].&lt;span class="nv"&gt;udiParameterId&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;COM&lt;/span&gt;.&lt;span class="nv"&gt;udiTXContinueOnXoff&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
        &lt;span class="nv"&gt;aCom1Params&lt;/span&gt;[&lt;span class="mi"&gt;14&lt;/span&gt;].&lt;span class="nv"&gt;udiValue&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;; // false&lt;/span&gt;




    &lt;span class="nv"&gt;END_IF&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;IF xPortOpen THEN&lt;br/&gt;
            //The first Port is opened with the given parameters&lt;br/&gt;
            como1(xExecute := TRUE, usiListLength:=SIZEOF(aCom1Params)/SIZEOF(COM.PARAMETER),pParameterList:= ADR(aCom1Params));&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;        &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;como1&lt;/span&gt;.&lt;span class="nv"&gt;xError&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
            &lt;span class="nv"&gt;xCom1OpenError&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;iState&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;&lt;span class="c1"&gt;;&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;como1&lt;/span&gt;.&lt;span class="nv"&gt;xDone&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
            &lt;span class="nv"&gt;iState&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;10&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;/pre&gt;&lt;/div&gt;


&lt;p&gt;IF xWrite THEN&lt;br/&gt;
             // the write process is started for the first port&lt;br/&gt;
            comw1(xExecute := TRUE,hCom:= como1.hCom,pBuffer:= ADR(sWrite),szSize:= SIZEOF(sWrite));&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;        &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;comw1&lt;/span&gt;.&lt;span class="nv"&gt;xError&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
            &lt;span class="nv"&gt;xCom1WriteError&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="o"&gt;//&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;writing&lt;/span&gt; &lt;span class="nv"&gt;process&lt;/span&gt; &lt;span class="nv"&gt;is&lt;/span&gt; &lt;span class="nv"&gt;completed&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;reading&lt;/span&gt; &lt;span class="nv"&gt;process&lt;/span&gt; &lt;span class="nv"&gt;can&lt;/span&gt; &lt;span class="nv"&gt;be&lt;/span&gt; &lt;span class="nv"&gt;started&lt;/span&gt;
        &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;comw1&lt;/span&gt;.&lt;span class="nv"&gt;xDone&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
            &lt;span class="nv"&gt;iState&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;15&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;/pre&gt;&lt;/div&gt;


&lt;p&gt;IF xPortClose THEN&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="nv"&gt;The&lt;/span&gt; &lt;span class="nv"&gt;first&lt;/span&gt; &lt;span class="nv"&gt;port&lt;/span&gt; &lt;span class="nv"&gt;is&lt;/span&gt; &lt;span class="nv"&gt;closed&lt;/span&gt; &lt;span class="nv"&gt;and&lt;/span&gt; &lt;span class="nv"&gt;the&lt;/span&gt; &lt;span class="nv"&gt;used&lt;/span&gt; &lt;span class="nv"&gt;handle&lt;/span&gt; &lt;span class="nv"&gt;released&lt;/span&gt;
        &lt;span class="nv"&gt;comc1&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;xExecute&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;hCom&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;como1&lt;/span&gt;.&lt;span class="nv"&gt;hCom&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;comc1&lt;/span&gt;.&lt;span class="nv"&gt;xError&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
            &lt;span class="nv"&gt;xCom1CloseError&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="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;comc1&lt;/span&gt;.&lt;span class="nv"&gt;xDone&lt;/span&gt; &lt;span class="nv"&gt;OR&lt;/span&gt; &lt;span class="nv"&gt;comc1&lt;/span&gt;.&lt;span class="nv"&gt;xError&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;             
            &lt;span class="nv"&gt;iState&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1000&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;/pre&gt;&lt;/div&gt;

&lt;/div&gt;</summary></entry><entry><title>RS232 Serial communication problems</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/f7567f8597/?limit=25#9bf7" rel="alternate"/><published>2020-02-27T23:19:27.402000Z</published><updated>2020-02-27T23:19:27.402000Z</updated><author><name>shooter</name><uri>https://forge.codesys.com/u/shooter/</uri></author><id>https://forge.codesys.com9aaa2db039f24628ae275e06a9cdb1896ea198de</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;check the handshake and do you close the communication after sending.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>RS232 Serial communication problems</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/f7567f8597/?limit=25#7c15" rel="alternate"/><published>2020-02-27T23:19:22.811000Z</published><updated>2020-02-27T23:19:22.811000Z</updated><author><name>runar@samey.is</name><uri>https://forge.codesys.com/u/runar-samey-is/</uri></author><id>https://forge.codesys.comfd19bbb25101608ea7cd7d67507dac7d32696b28</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;I am new to this forum and I am just beginning to us codesys. &lt;/p&gt;
&lt;p&gt;I am trying to get communication between berghof EC1000 and roboteq 2130. I am using 232 serial port. I am using a program I got from the codesys store ( &lt;a class="" href="http://store.codesys.com/serial-com.html" rel="nofollow"&gt;http://store.codesys.com/serial-com.html&lt;/a&gt; ).  I am using Codesys v3.5 SP1 Patch 4.&lt;/p&gt;
&lt;p&gt;My problem is that I can send one message through the serial port whit out any problems, but when I try to do it again nothing happens. Then I have to logout from the project and download it again to be able to send the messages again. &lt;/p&gt;
&lt;p&gt;Can anybody please help me with this problem?&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>