Post by esave on Softmotion Axis Controll
CODESYS Forge
talk
(Post)
Hello everybody I have two of these EtherCat CiA402 stepper driver from Leadshine: https://www.leadshine.com/product-detail/EM3E-556E.html I want to controll them. I already have implemented them in Codesys with Softmotion. I see the position, the velocity and the status word so I can read everything. See picture 1. But when I want to write something like MC_Power or MC_MoveAbsolut with the SM3_Basic library it wont work and with the MC_Reset POU it shows: "SMC_R_DRIVE_DOESNT_ANSWER". See picture 2. Can somebody help me? Thanks a lot esave
Last updated: 2024-05-24
Post by ndzied2 on Rounding error in simple addition
CODESYS Forge
talk
(Post)
This is a consequence of how computers store floating point numbers. 0.1 cannot be exactly represented in a computer. This is not a CoDeSys thing. Here is a link to a converter to show you the exact value that is represented when you use a REAL data type (which is a 32 bit float). https://baseconvert.com/ieee-754-floating-point If you really need to keep track of 0.1 increments. use INT OR DINT and then add 1 each time and assume that there is one decimal place.
Last updated: 2024-05-24
Post by wiresplus on Display minutes as hours & minutes
CODESYS Forge
talk
(Post)
Hello, I have a counter that increments an INT value once per minute I want to display this value in Minutes until 60, then Hours/Minutes thereafter on the HMI Codesys V3.5 SP16 I can divide the minutes by 60 to get hours, but then the minutes is still more than 60. Example: a process has run for 350 Minutes. I need to display "5 Hours 50 Minutes" But if it's only been 45 Minutes, I don't want "0 Hours 45 Minutes" , just "45 Minutes"
Last updated: 2024-05-25
Post by yofi on Raspberry PI change tag only responds after stopping PLC
CODESYS Forge
talk
(Post)
Using V19 Patch 7 and 4.11.0.0 for Pi 4 Model B, My problem is whenever I change a tag e.g bool from true to false it will change in software but the pin will only go high to low after pressing stop PLC in codesys and same if i want to bring it back to high, have to login start plc change it and stop plc in order to change. any insight ? thanks
Last updated: 2024-05-25
Post by svdpoint on Raspberry Pi Zero 2W with external Ethernet adapter
CODESYS Forge
talk
(Post)
Hello all, Somebody try to run the CodeSys at RPi Zero 2W with external ETHx device? I need to more information how youi do it, what need to it, ...etc. It is interesting to use it together with EtherCat-interface. For example I had try to connect W5500 over SPI. The eth0 is present, but does not found any EtherCat IO-device. BR
Last updated: 2024-05-25
Post by yofi on Configuring an Encoder
CODESYS Forge
talk
(Post)
I have a raspberry pi trying to add encoder to it using that free encoder node. I simply dont understand where the encoder channel A/B suppoded to be mapped when i got to I/O mapping on encoder I get nothing to where to set the channels for the encoder or is there any blocks from a library or how is it that you use an encoder with Codesys it doesn't seem clear at all
Last updated: 2024-05-25
Post by paro on "You are using inconsistent overlay settings, please check your compiler defines for the current application" error
CODESYS Forge
talk
(Post)
Disable the setting "Support client animations and overlay of native elements" in the Visu Manager. Activating this setting should also set a compiler define (GENERATE_OVERLAY_VISU). Maybe the compiler define is set and the feature is not activated in the visu manager or or the other way round.. rightclick the Application -> Properties -> Build https://content.helpme-codesys.com/en/CODESYS%20Development%20System/_cds_dlg_properties_build.html
Last updated: 2024-05-29
Post by bartg on Open a POU in the editor via scripting
CODESYS Forge
talk
(Post)
Hi, I would like to automate opening some specific pous and visualisations in the codesys environment I found out that I can open it by using : system.commands["42f6acb9-bd6e-42e7-94bb-6e2a03973b83"].execute() But the POU has to be selected in the Devices or POUs navigator. Does anyone know how I can select a specific POU in the navigator? Or how I can open a specific POU? I can retreive the guid of the POU. Thx
Last updated: 2024-05-30
Post by greenwood on CODESYS Control Raspberry Pi mit Servotreiber T6 von StepperOnline
CODESYS Forge
talk
(Post)
Hallo, und vielen Dank für die Antwort. Ich habe 'Modbus_Slave_COM_Port' in eine Watchliste genommen. Leider reichen meine Kenntnisse nicht aus, um aus dem Ergebnis irgendwelche Schlüsse zu ziehen. xBusy und xError wechseln zwischen true und false (im Gegentakt), der angezeigte Fehler ist 'Response Timeout'. iChannelIndex wechselt zwischen 0 und -1. Wenn ich das richtig verstehe bedeutet das wohl, das der Servotreiber auf Anfragen einfach nicht reagiert. Ich hänge einen screenshot vom Watchfenster an, vielleicht kann jemand mehr herauslesen als ich. Nochmal danke fürs Lesen und Überlegen!
Last updated: 2024-05-31
Post by talhaali on Create an alarm list without use of Alarm config
CODESYS Forge
talk
(Post)
Hi, I am trying to access active alarms in code(As alarm count variable updates only when we go to to alarm table frame in visualization). I wrote following code but it is not working: VAR iCountActiveAlarms : INT; parritfActiveAlarms : POINTER TO ARRAY[0..0] OF IAlarm; itfAlarmManagerClientAll : IAlarmManagerClient; END_VAR AlarmManager.g_AlarmHandler.GetActiveAlarms( itfAlarmManagerClient :=itfAlarmManagerClientAll, iCountActiveAlarms => iCountActiveAlarms, parritfActiveAlarms => parritfActiveAlarms); The Value is always 0. Please help.
Last updated: 2024-06-06
Post by talhaali on Create an alarm list without use of Alarm config
CODESYS Forge
talk
(Post)
Hi, I am trying to access active alarms in code(As alarm count variable updates only when we go to to alarm table frame in visualization). I wrote following code but it is not working: VAR iCountActiveAlarms : INT; parritfActiveAlarms : POINTER TO ARRAY[0..0] OF IAlarm; itfAlarmManagerClientAll : IAlarmManagerClient; END_VAR AlarmManager.g_AlarmHandler.GetActiveAlarms( itfAlarmManagerClient :=itfAlarmManagerClientAll, iCountActiveAlarms => iCountActiveAlarms, parritfActiveAlarms => parritfActiveAlarms); The Value is always 0. Please help.
Last updated: 2024-06-06
Post by mozed on Signature verification faited fro the following package
CODESYS Forge
talk
(Post)
Good morning, I'm trying to open a project but codesys tells me that there are certain packages that I don't have and that I need to download them. Once the installation of the packages begins, it shows me a error that the signature of certain packages does not correspond to that coming from the accepted installation context. Do you have a solution to my problem please, it is very urgent in my work. Sincerely
Last updated: 2024-06-11
Post by dario99 on Error when creating a new HTML5 visualisation
CODESYS Forge
talk
(Post)
Hello, I'm quite new here. I would like to create a new HTML5 visualisation. I have already imported some templates via the visualisation elements repository, this worked fine. However, when I want to open the html5control.html in the editor or create a new project myself, I always get this error: default filesystem storage could not be found. Did you add storages.plugin to the profile? I can't find this plugin. The Package Designer (V4.1.0.0) and Codesys Visualisation (V4.5.0.0) plugins are installed Can anyone help me? Thank you very much!
Last updated: 2024-06-14
Post by dekelec on Request for IFM ecoPlus21 installation package
CODESYS Forge
talk
(Post)
Hello, I’m looking for the ecoPlus21 development environment used with early IFM controllers (e.g., CR0020_Q firmware). We have an old project created in ecoPlus21 that cannot be opened in CoDeSys 2.3, and IFM no longer provides this software. If anyone still has the ecoPlus21 installer or knows where it can be downloaded, please let me know. It’s needed only for recovery and migration of an existing project. Thanks in advance,
Last updated: 2025-10-17
Post by shaun on GAMP 5 and 21 CFR Part 11
CODESYS Forge
talk
(Post)
Good day I have been asked to do a project. It is for a pharmaceutical application and data needs to be logged. The spec calls for the control system to comply with GAMP 5 and 21 CFR Part 11. From what I can find online it's got to do with electronic records and validation. Has anyone developed any software using this or are there codesys librarys that can make my life easier in writing this code
Last updated: 2025-10-22
Post by alimans on High Cycle Times for SoftMotion_PlanningTask when using AxisGroup
CODESYS Forge
talk
(Post)
Hi Manuknecht, Did you manage to solve the problem? I’m facing the same issue with Windows RTE SoftMotion — it works fine as long as nothing else is open in Windows, but as soon as I start another application, the EtherCAT DC time and max jitter values spike, and then all axes stop. I’ve already sent a support request to CODESYS, but haven’t received a response yet.
Last updated: 2025-10-23
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 sunfloweeerrry on Edgelogix-rpi-1000-cm4102032 SPI port connection to PiFace I/O Driver in CodeSys.
CODESYS Forge
talk
(Post)
Hello, I hv a problem. Couldn't solve this for 2 days now. So I'm quite new at CodeSys and I have to use the spi port x30 on the edgelogix rpi 1000. So what I have to do is just 'add device' at the SPI where I hv to pick the 'SPI master' after that I hv to change the parameters according to the edgelogix I did found in the spidev.h but nothing got updated so I 'add device' again where I pick the PiFace I/O Driver and I put my variables at the I/O Mapping, which i put the input startbit at the in part and led at the out part. I want to make the led blink according to my structured text code but somehow the hardware didn't connected with the CodeSys spi port. Nothing happens. Any idea what I have to do?
Last updated: 2023-08-18
Post by jegerjon on Find index based on values
CODESYS Forge
talk
(Post)
Hi, I need to figure out witch indexes of an Array containing the highest and lowest values. Typically search for the 5 lowest values and result the indexnumbers containing the 5 lovest values. is there a library for this, or codeexample?
Last updated: 2023-08-20
Post by jegerjon on Find index based on values
CODESYS Forge
talk
(Post)
Hi, I need to figure out witch indexes of an Array containing the highest and lowest values. Typically search for the 5 lowest values and result the indexnumbers containing the 5 lovest values. is there a library for this, or codeexample?
Last updated: 2023-08-20
Post by sven01 on Documentation / Usage Help For Scripting Engine Libraries
CODESYS Forge
talk
(Post)
Hi, I am still not able to figure out how to use the the classes and their functions. 😔 Let's say I would like to use the function "importfile()" from the class "ScriptTextListObject.ScriptTextListMarker". I would be grateful for an additional example. Thanks! 😊
Last updated: 2023-08-21
Post by kunz on Profinet Device keeps abort connection with AR alarm.ind(err)
CODESYS Forge
talk
(Post)
Can somebody explain what the error Connection aborted: AR alarm.ind(err) exactly mean? I have the same Problem and dont know how to solve the issue
Last updated: 2023-08-21
Post by rossanoparis on After un upgrade of "CODESYS Control for Raspberry Pi MC SL" from v4.7 to v4.9 SysFileOpen function stopped working
CODESYS Forge
talk
(Post)
Hello at all. After un upgrade of "CODESYS Control for Raspberry Pi MC SL" from v4.7 to v4.9 SysFileOpen function stopped working. I'm not able to read or write files from the PLC application. Before this upgrade all worked fine. I've read this thread [ https://forge.codesys.com/forge/talk/Engineering/thread/3da9ded84e/ ] Despite I followed that indications I couldn't get my code working again. Perhaps I'm missing something or I didn't understand how to use placeholders at all. Is there a different syntax to use for "SysFileOpen" in order to use placeholders? Thanks in advance for your help. Information Compiler: CODESYS V3.5 SP19 Patch 2 Runtime: codesyscontrol 4.9.0 HW: KUNBUS RevPi Connect S Below the paths I want to access (The entire CODESYSControl_User.cfg file is attached) [SysFile] PlaceholderFilePath.1=/home/pi/hpca/bin, $hpcabin$ PlaceholderFilePath.2=/home/pi/hpca/cfg, $hpcacfg$ PlaceholderFilePath.3=/home/pi/hpca/logs, $hpcalogs$ PlaceholderFilePath.4=/home/pi/hpca/resources, $hpcares$
Last updated: 2023-08-22
Post by janderson on OPC UA Server limitations, large array crashes runtime
CODESYS Forge
talk
(Post)
when using an array of structs, the runtime crashes. but when using an array of LREALS, it'll do 100k at least
Last updated: 2023-08-23
Post by eschwellinger on Connection to device closed
CODESYS Forge
talk
(Post)
is there a way to check the plclog on Opus A3 by using cmd line under Linux? This log is what you need to check for the disconnection problem
Last updated: 2023-08-24
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.