Post by dawidr on Best practices for querying multiple MODBUS devices
CODESYS Forge
talk
(Post)
Hi! What are the best practices for querying multiple Modbus devices? Single PRG or maybe multiple PRG (so basically multiple thread) per each Modbus device. In my current implementation I'm using single PRG and I'm utilizing FbMbMasterMultiQuerySerial and WagoAppPlcModbus.FbDigitalTwinMbSlaveDevice in eCockpit with PFC200. I've the timer with 2 seconds delay there and it was working fine for single device. But now I have three Modbus devices and for two of them I need to run 2/3 queries to get data from all registers. I noticed that the delays for getting the data from the Modbus devices is much bigger right now.
Last updated: 2024-07-31
Post by mazino on How to download dependencies packages for CODESYS Control for Raspberry Pi SL ?
CODESYS Forge
talk
(Post)
Hi starmaxou, I’m facing the same issue you mentioned with the dependencies for the CODESYS Control for Linux SL installation. I was able to find the manual downloads for the CODESYS Edge Gateway and CodeMeter, but I’m still stuck on the other two dependencies: CODESYS Control SL Extension v4.0.0.0 CODESYS Control SL Deploy Tool v4.10.0.0 Since you’ve encountered the same problem, I’d really appreciate any help or insights you can share on how you were able to resolve it. Any tips or suggestions would be greatly appreciated! Thanks in advance!
Last updated: 2025-03-07
Post by aleksahin6824 on SysEthernet error
CODESYS Forge
talk
(Post)
Good afternoon Please help with localizing the error. Periodically, but on the same time grid, the error SysEthernet: packet could not be sent occurs. PLC and motors from XINJE. PLC — XSA-330L, rev. 1.2, drivers — DC5C2 (rev.5) In the task configurator, all tasks are set to simple numbers (11, 13, 41 ms) for convenience. The jitter for EtherCat and SoftMotion tasks is less than the task cycle (2 ms jitter for a 6 ms task). The power supply is sufficient for both the PLC and the motors. The cables are in good condition. Please suggest where to look for the problem. P.S. The PLC uses proprietary Linux and there is no SSH access.
Last updated: 2026-08-30
Post by aleksahin6824 on SysEthernet error
CODESYS Forge
talk
(Post)
Good afternoon Please help with localizing the error. Periodically, but on the same time grid, the error SysEthernet: packet could not be sent occurs. PLC and motors from XINJE. PLC — XSA-330L, rev. 1.2, drivers — DC5C2 (rev.5) In the task configurator, all tasks are set to simple numbers (11, 13, 41 ms) for convenience. The jitter for EtherCat and SoftMotion tasks is less than the task cycle (2 ms jitter for a 6 ms task). The power supply is sufficient for both the PLC and the motors. The cables are in good condition. Please suggest where to look for the problem. P.S. The PLC uses proprietary Linux and there is no SSH access.
Last updated: 2026-08-30
Post by pernockham on Unable to deploy "Control for Linux SL 4.18.0.0"
CODESYS Forge
talk
(Post)
And the strange thing for me is that if i connect with an older IDE version (where I only have 4.17.0.0 installed) I can see both "CODESYS Control for Linux SL" and "CODESYS Edge Gateway for linux". And that I loose (both presence and possibility to update) the first option (Control SL) if i let the updater install "Control for linux SL" vers. 4.18.0.0 or later. (Note that runtime 4.17.0.0 is installed and it is running and I can login to that system, but no apparent option available to update it to 4.19.0.0). Attached print screen where I connected the "deploy sl tool" to the same system, where the upper (IDE) one has 4.19.0.0 installed, while the lower one has 4.17.0.0 installed..
Last updated: 2026-02-17
Post by alexgooi on OPC-UA and other communication questions
CODESYS Forge
talk
(Post)
Dear forum, I currently have a big question mark above my head, and maybe this forum can shine some light on the situation. I recently updated to Codesys 3.15 SP19 Patch 6. And now I’m trying to setup the OPC-UA server, besides that I’m trying to connect to the controller with the Codesys V3 (Ethernet) protocol. OPC-UA I have installed the correct licenses on my controller (Runtime and communication). I’m able to connect to the controller with an OPC-UA client, and I’m able to browse the tags, so far so good. Therefore I’m assuming that the OPC-UA server is running on the controller. But now the strange part, in the device security settings I have set the communication Policy to BASCI256SHA256 ( I also have tried the other ones) and the communication mode is set to secure if possible (I also have tried all the other ones) (see picture). With these settings I would assume that I would only be able to login with a Basic256SHA256 policy with a client. But the opposite is true, I am able to login using the no policy mode and when I set it to Basic256SHA256 the client (UA-Expert) notes that this policy is not available on the server. I then check the certificates and I noted that there is no certificate for the OPC-UA server, I tried to generate one but it gave the error that the certificate has not been created by the device (See picture). To summarize I have no clue what is going on, and the controller does the opposite of what I would expect. Codesys Ethernet V3 driver I have a HMI connected to the same controller using the Ethernet V3 driver. But this will not connect. I tried all the Protocols (see picture), with and without the username and password enabled. But it will not connect, when I scan the available servers I can see the controller with the port number that I am expecting, so I’m assuming that the Codesys V3 ethernet driver is up on the controller. Does anyone can give me some direction, because the stuff that I tried doesn’t make sense to me. Thank you in advance
Last updated: 2024-04-02
Post by imdatatas on The default ramp type selection in SoftMotion V4.18.0.0 is Quadratic
CODESYS Forge
talk
(Post)
Dear @gseidel, Thank you for your clarification. I fully agree that the quadratic ramp type may have certain technical advantages. However, the main problem is backward compatibility and consistency across projects. In many automation projects, application developers rely on the fact that creating a new axis object will behave exactly the same way as in previous versions. With SoftMotion V4.18.0.0 and later, if an application developer adds an axis and overlooks the changed default, the motion function blocks behave differently than expected. In particular, since the Jerk value in SM3_Basic function blocks is ineffective in trapezoid ramp type, users are accustomed to leaving this parameter empty in their projects. In many existing projects, this variable has not even been assigned. When the default is changed to quadratic, the Jerk parameter suddenly becomes relevant, which can cause errors or unexpected behaviour in the field. From a user perspective, a default setting should always be the “safe” and “expected” option, while alternative options (like quadratic) can be selected manually if desired. Keeping the default as trapezoid ensures compatibility with existing projects and prevents unexpected issues, while still allowing users to benefit from quadratic ramps if they explicitly choose so. For these reasons, I kindly ask you to reconsider making trapezoid the default again. This would significantly reduce the risk of unexpected behaviour in future projects while still preserving the advantages of the quadratic ramp type for those who actively select it. Of course, the final decision is entirely at your discretion. Best Regards, imdatatas
Last updated: 2025-09-26
Post by leandroct on Creating Boot Application not working
CODESYS Forge
talk
(Post)
I have a Control Win V3.5 SP20 (64-bit) application, and until now, I open the program (with a password) and download it. However, I need to give the client the option to install the program on the Controller, without them having to open it and access the code. So, I followed these steps: 1 – In the Online => Create Boot Application menu, I saved the generated files in a directory: Application.app Application.crc PlcLogic\visu\ directory with several files 2 – In the SysTray, I ran the PLC, and it created a directory. In the root of this directory (C:\ProgramData\CODESYS\CODESYSControlWinV3x64\E84889DB), I pasted Application.app and Application.crc. Since it created a \visu directory, I pasted the PlcLogic\visu\ files generated in Create Boot Application into it. 3 - In the general Codesys directory (C:\ProgramData\CODESYS\CODESYSControlWinV3x64), I edited CodesysControl.cfg, adding: [CmpLog] Application.1=Application 4 - When running the PLC, nothing happens and the TargetVisu screen does not open. What I'm doing wrong?
Last updated: 2025-09-03
Post by kevintumibay on Struggling to connect to EK1100 to Raspberry Pi
CODESYS Forge
talk
(Post)
SUMMARIZED VERSION OF QUESTION: I'm trying to connect a Raspberry Pi running "Codesys Control for Raspberry Pi" to a Beckhoff EK1100, unfortunately, when I try to connect I get the following messages SEE FIRST PICTURE DETAILED VERSION OF QUESTION: Hi everyone, I'm a college student that is super interested in learning about PLCs. I wanted to dive into the subject and decided to follow this great Instructables article: https://www.instructables.com/Programming-Raspberry-Pi-With-CODESYS/ Thank you in advance for your help! My current setup is as follows: 1. I have Codesys Control for Raspberry Pi, version 4.14.0.0, (https://store.codesys.com/en/codesys-control-for-raspberry-pi-sl.html) installed on a Raspberry Pi 3B. 2. I am using my smartphone hotspot to create a network. 3. I have CODESYS 3.5 SP21 (64 bit) installed on my Windows 11 laptop. 4. Both the Raspberry Pi and my laptop are connected to the smartphone hotspot network (I am wirelessly connecting to the Raspberry Pi). Connecting to the Raspberry Pi from CODESYS on my laptop: 1. I launch Codesys Installer -> I install Codesys Control for Raspberry Pi (link to the software). 2. I launch Codesys 3.5 SP21 (64 bit) on my laptop. 3. I go to file --> new project --> standard project --> in the pop-up I select "Codesys Control for Raspberry Pi" and "Structured Text" 4. I click on tools -> Deploy Control SL (on older versions of Codesys you would click on "update Raspberry Pi", I got that information from this video: link) 5. Inside Deploy Control SL --> I go to the "communication" menu and I input the IP address of my Pi, the password, and click on connect. 6. Inside Deploy Control SL --> I go to the "deployment" menu and I install Codesys Control for Raspberry Pi SL and Codesys Edge Gateway for Linux 7. Now I double click on "device" in the left hand tree and put in the IP address of my Raspberry Pi and click on connect --> success! I am able to connect! SEE SECOND PICTURE Powering the EK1100 and connecting it to the Raspberry Pi: 1. I am supplying the EK1100 with 24 V across the + and - pins. 2. I have jumper wires going from the + pin to the 24V pin and from the - pin to the 0V pin. SEE THIRD PICTURE 4. I am pretty confident that the EK1100 is receiving power because the "LED Us 24 V" and "LED Up 24 V" are lighting up. 5. I then run an ethernet cable from the EK1100 to the Raspberry Pi port (the Raspberry Pi is connected to my laptop wirelessly over WiFi). I think this connection should also be good since the LINK/ACT LED lights up. Trying to connect to the EK1100: 1. Back in Codesys I right-click on "Device" in the left tree and then in the pop up I click on "add device". 2. I then click on EtherCAT Master. 3. Next in a terminal window I SSH into the raspberry Pi and run the "ifconfig" command. 4. From there I get the MAC address for eth0 --> in my case: b8:27:eb:29:a9:25 5. Then, back in Codesys I double click on "EtherCAT Master" in the left hand tree. I then paste the MAC address into the "Source Address (MAC)" field. 6. I go to the Beckhoff official website and download the XML files for EtherCAT: https://www.beckhoff.com/en-en/products/i-o/ethercat-terminals/ek1xxx-bk1xx0-ethercat-coupler/ek1100.html? 7. I unzip those files in my computer into some folder that I can remember. 8. Back in Codesys I click on "Tools" --> "Device Repository" --> "Install" --> and then on the "Beckhoff EK11xx.XML" file. 9. In theory the necessary XML file is now installed. 10. THIS IS WHERE I RUN INTO THE PROBLEM: I then click on login --> I right click on EtherCAT_Master and then scan for devices --> and nothing. 11. It just doesn't detect it. On top of this whenever I login I get those orange triangles on the left on my tree. When I check the Log I get the messages at the very first screenshot of this post. SEE FOURTH PICTURE Solutions that I have tried to resolve this problem: 1. I thought it was maybe the .XML file so I installed all the .XML files from the EtherCAT folder that I downloaded. That didn't fix it. 2. I went on the Wayback Machine and got the .XML files from 2018 as I thought maybe an older version would work. This file of EtherCAT folders had a .XML file named "Beckhoff EKxxxx.XML" I thought this would work because that's the name of the file the guy in the Instructables used (https://www.instructables.com/Programming-Raspberry-Pi-With-CODESYS/). That didn't do anything. 3. I ran the PLC on my computer instead of the Raspberry Pi and tried to connect to the EK1100, in case the issue was with the Raspberry Pi, but I still ran into the same error from the picture above: "Attention! The device was not found in the repository. Vendorcode: 0x0. Productcode: 0x0. Revision: 0x0". SEE FIFTH PICTURE 4. I reinstalled Codesys, I was originally on version 3.5 SP20 when I did this, I upgraded to 3.5 SP21 with no success. 5. I then thought the solution might be to first add the EK1100 hardware before connecting so I did the following: 6. Right click on "EtherCAT Master" on the left hand tree --> then click on "add device" --> then I added the "EK1100 EtherCAT Coupler (2A E-Bus)" MY THEORY OF WHAT IS CAUSING THE PROBLEM: I asked ChatGPT for help and it said that it might have something to do with the revision number. On the physical EK1100 it says "Rev. Nr.: 0018". I believe that this means that I need to a revision 0018 XML file but if you look in Codesys it says the version is 16 (picture above). This is confusing because I got my .XML file from the official Codesys website so it should be the most up to date version possible. I searched and I searched and I couldn't find a version 18 .XML file, I don't even now if this exists. Any help you can provide is greatly appreciated, I don't know what to do anymore and I really really want to get this working. Thank you!
Last updated: 2025-03-30
Post by erictur on CODESYS Control for Linux ARM SL (32 bit) on Moxa UC-3100 IPC
CODESYS Forge
talk
(Post)
UC3100 comes with Arm Cortex-A8 1 GHz and belongs to Moxa Industrial Linux 1 (Debian 9) for Arm-based Computers. I tried to install the CODESYS Control for Linux ARM SL (32 bit) on Moxa UC-3100 IPC. Unfortunately, the Third-party requirements: - libc >= 2.27 (required by CodeMeter Runtime) of the CODESYS Control for Linux ARM SL cannot be met on the Debian 9, which comes with glibc 2.24. I read the post by @johnlee (Getting Start with Codesys Control for Linux SL) (https://forge.codesys.com/forge/talk/Runtime/thread/0a515ced3f/). Where he discusses installation of CODESYS Control for Linux ARM SL on Debian 9. There was CODESYS Linux runtime v3.5.14 availble and it was successfully intalled on the Debian 9. However, the CODESYS Store has the oldest version V4.1.0.0 32 bit available. There is no way to find the CODESYS Linux runtime v3.5.14. So is there any work around for this? Or I cannot install the CODESYS Runtime on any of the Moxa IPCs based on the Moxa Industrial Linux 1 (Debian 9)?
Last updated: 2025-07-10
Post by russells on Codesys ControlWinV3x64 with EtherCat Slave
CODESYS Forge
talk
(Post)
Hi there I am running Codesys ControlWinV3x64 (Patch 4) on my laptop for demonstration purposes but I am unable to get connection to the EtherCAT master and slave device. This is the process that I have followed: * Installed NPCap. * Added the xml file for the SMC slave device to the Device Repository. * Activated Control Win SysTray x64 and selected Start PLC. * Scanned the network for the local device (my laptop). * Added an EtherCAT master to the project and scanned the EtherCAT master for the Network and then selected the correct network. * Selected "Scan for devices" to identify the connected I/O. * Add the SMC EtherCAT slave manually because I was unable to scan it in. * Selected "Scan for devices". I have followed the steps described above but I can't scan in the EtherCAT slave or connect to it. I thought this situation was unique to the EtherCAT slave but I have also tried the same for an EtherNet/IP slave using the Ethernet Adaptor and EtherNet/IP scanner and I am also unable to scan in the device or activate the EtherNet/IP network. Any assistance will be appreciated.
Last updated: 2026-02-04
To search for an exact phrase, put it in quotes. Example: "getting started docs"
To exclude a word or phrase, put a dash in front of it. Example: docs -help
To search on specific fields, use these field names instead of a general text search. You can group with AND or OR.