# SysSockClose Raspberry PI

**URL:** <https://oscat.discourse.group/t/syssockclose-raspberry-pi/2089>\
**Category:** oscat.lib fuer CoDeSys 3\
**Created:** [1. Juni 2016 um 08:22 UTC](https://oscat.discourse.group/t/syssockclose-raspberry-pi/2089 "2016-06-01T08:22:02Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![mg1](https://yyz2.discourse-cdn.com/free1/user_avatar/oscat.discourse.group/mg1/32/134_2.png) [@mg1](https://oscat.discourse.group/u/mg1)\
**Post date:** [1. Juni 2016 um 08:22 UTC](https://oscat.discourse.group/t/syssockclose-raspberry-pi/2089/1 "2016-06-01T08:22:02Z")

</div>

Hallo,

Ich verwende derzeti Oscat Network 130 mit Codesys auf einem Raspberry pi. Ich versuche mit dem Baustein IP\_Control einen UDP server zu erstellen (Mode 3).  
Nach einem Komplettdownload funktioniert es nicht mehr. mit “netstat -a” seh ich, dass der Ports bereit geöffnet ist. Ich vermute, dass der Baustein IP\_Control versucht einen bereits geöffneten Port mit “SysSockOpen” zu öffnen. “SysSockOpen” liefert noch einen korrekten Wert zurück. Erst bei SysSockBind kommt der Fehler 519 → Provided address already in use.

Danach Rutscht Ip\_Controler in C\_Close und versucht besagten Port zu schließen. Aber anscheinend haut auch das nicht hin.

Ich bin mir nicht Sicher ob es sich um einen Codesys/Oscat oder Anwenderproblem handelt. Leider wird der Port auch nicht geschlossen wenn ich über längere Zeit das “c\_enable” auf false setze. Erst beim Reboot oder beim kill des Codesys Tasks wird der Port geschlossen..

Weiß jemand weiter ?

Danke  
mg

---

<div class="post-metadata">

**Author:** ![peewit](https://avatars.discourse-cdn.com/v4/letter/p/ecc23a/32.png) [@peewit](https://oscat.discourse.group/u/peewit)\
**Post date:** [1. Juni 2016 um 11:34 UTC](https://oscat.discourse.group/t/syssockclose-raspberry-pi/2089/2 "2016-06-01T11:34:11Z")

</div>

die von mir herausgegebene network.lib für codesys ist nur auf einigen codesys 2.x systemen getestet  
da der ip\_control ein hardwareabhängiger baustein ist, muss dieser für die jeweilige Plattform so fern sie von “normal” abweicht  
extra angepasst bzw. getestet werden

Hier im forum kannst du auch eine codesys 3.x version finden, wobei ich dazu keine aussage machen kann inwieweit diese version auch sauber  
funktioniert.

auf der codesys homepage kannst du auch eine network.lib für codesys 3.x finden

bisherige plattformen hatten das problem das bei aktiven tcp-verbindungen am besten kein neustart bzw. online ändern gemacht werden sollte !  
immer vorher schauen das alle verbindungen abgebaut sind denn ansonsten bleiben diese port als leichen belegt

---

<div class="post-metadata">

**Author:** ![mg1](https://yyz2.discourse-cdn.com/free1/user_avatar/oscat.discourse.group/mg1/32/134_2.png) [@mg1](https://oscat.discourse.group/u/mg1)\
**Post date:** [2. Juni 2016 um 14:18 UTC](https://oscat.discourse.group/t/syssockclose-raspberry-pi/2089/3 "2016-06-02T14:18:15Z")

</div>

Hallo,

Ich habe mich an den Codesys Support gewendet und der hat mir den Tip gegeben an den Baustein eine “FB\_Exit”-Methode anzuhängen.  
Ich habe daraufhin den Inhalt von “C\_CLOSE” in diese FB\_Exit Methode kopiert und jetzt funktioniert es.

danke

---

<div class="post-metadata">

**Author:** ![peewit](https://avatars.discourse-cdn.com/v4/letter/p/ecc23a/32.png) [@peewit](https://oscat.discourse.group/u/peewit)\
**Post date:** [2. Juni 2016 um 16:50 UTC](https://oscat.discourse.group/t/syssockclose-raspberry-pi/2089/4 "2016-06-02T16:50:55Z")

</div>

schon das es jetzt klappt

kannst du das in irgendeiner form für die anderen user genauer beschreiben und dokumentieren  
(Grafik oder bausteinexport )

---

<div class="post-metadata">

**Author:** ![mg1](https://yyz2.discourse-cdn.com/free1/user_avatar/oscat.discourse.group/mg1/32/134_2.png) [@mg1](https://oscat.discourse.group/u/mg1)\
**Post date:** [3. Juni 2016 um 05:01 UTC](https://oscat.discourse.group/t/syssockclose-raspberry-pi/2089/5 "2016-06-03T05:01:02Z")

</div>

Natürlich.

Im Anhang findest du den exportierten Baustein und ein Bild wie man solche Methoden hinzufügt.  
Der Code in “FB\_EXIT” entspricht den Zeilen 222-237 des IP\_Control -Bausteins.

Codesys Hilfe zu FB\_EXIT:  
Die Methode wird für alle deklarierten Instanzen des Funktionsbausteins vor einem erneuten Download, bei einem Reset oder während eines Online Change für alle neuen oder gelöschten Instanzen aufgerufen.

[gelöscht durch Administrator]

---

<div class="post-metadata">

**Author:** ![annD](https://avatars.discourse-cdn.com/v4/letter/a/47e85d/32.png) [@annD](https://oscat.discourse.group/u/annD)\
**Post date:** [4. Dezember 2016 um 19:56 UTC](https://oscat.discourse.group/t/syssockclose-raspberry-pi/2089/6 "2016-12-04T19:56:07Z")

</div>

Hallo mg,

ich denke, ich habe beim Codesys 3.5.9.40 auf einem Wago 750 dasselbe Problem. Bei einem Online-Change läuft alles weiter - aber nach einem neuen Download bzw. einem Reset erhalte ich beim IP\_CONTROL den Error 33554432 (decimal) bzw. 16#02000000 (hexadecimal). Es hilft nur ein Kaltstart der Steuerung. Sonst habe ich beim IP\_CONTROL unter v3.5 keine Fehler festgestellt.

Muss ich zum Einfügen dieser Methode unbedingt den IP\_CONTROL in mein Projekt kopieren oder gehen solche Methoden auch über die Library?

Gruß annD

---

<div class="post-metadata">

**Author:** ![RCD](https://avatars.discourse-cdn.com/v4/letter/r/ecccb3/32.png) [@RCD](https://oscat.discourse.group/u/RCD)\
**Post date:** [22. September 2022 um 17:25 UTC](https://oscat.discourse.group/t/syssockclose-raspberry-pi/2089/7 "2022-09-22T17:25:20Z")

</div>

Hallo,  
ich habe das gleiche Problem.  
Doch leider kann ich das Bild und den Anhang von mg nicht mehr sehe.  
Dort steht [gelöscht durch Administrator]  
Wer kann helfen?

Besten Dank!

Gruß Stefan
