Post by wiresplus on Cannot get INT_TO_TIME working
CODESYS Forge
talk
(Post)
Hello, I have a simple TON timer. It is watching prime loss for a pump. The operator can set the delay via the HMI, it is an integer (seconds) As the TON uses milliseconds, we then multiply the entry by 1000 to get seconds. Seems simple, but... VAR PrimeTimer : TON; primetime : INT; END_VAR PrimeTimer(in:=State>0 AND FlowRate<MinimumFlow,pt:=INT_TO_TIME(primetime *1000)); For an entered 15 seconds (VAR primetime:=15;) the timer reads 49d17h2m26s760ms !!!! What am I doing wrong?
Last updated: 2024-01-26
Post by hsmw-wolf on How to fix Codesys Simulation Exception ?
CODESYS Forge
talk
(Post)
Did anybody have a solution for this problem? I have the same issue and it occured as i wanted to continue work after the weekend. On Friday the simulation was working fine and on Monday thise error appears. There should be a more specific fault description to be honest. As I am writing I try to repair the installation and hope, that this will work. Still I am frustrated, because I don't know where to look for eliminating this fault. I am using CODESYS 3.5 SP19 Patch 5.
Last updated: 2024-01-29
Post by peter-skokanek on Raspberry and problem with runtime
CODESYS Forge
talk
(Post)
Hi, Similar problem, I have license for Raspberrypi Control MC SL. It didn't work with version 4.10.0.0. I have now instaled new version 4.11.0.0. Raspberrypi Control SL. The same behavior, runtime works sometime several minutes, sometime only several seconds. The second problem is with license. There isn't available any runtime MC SL on Codesys shop, not even older version 4.10.0.0. Is it only temporarily or, MC SL will be not available more for rpi?
Last updated: 2024-02-27
Post by k4zz on Continuous Build Server
CODESYS Forge
talk
(Post)
Hallo Martin, Thank you so much for the Code example. It works really fine for .porject Types. However, I encountered a challenge when attempting to apply it to .library Types. I also tried the option to "Perform static analysis automatically after compilation" # get Project values myProject = projects.primary # Creates an active application app = myProject.active_application # build Application and run static code analysis app.generate_code() Could you please offer any insights into why this might be occurring?
Last updated: 2024-03-15
Post by k4zz on Scripting static code analysis
CODESYS Forge
talk
(Post)
Currently, I am working on integrating static code analysis into our CI/CD pipeline. Specifically, I have successfully performed static code analysis for .project types, and it works flawlessly. However, I have encountered difficulties in executing the same for .library types. In this regard, I have tried two methods: system.commands["staticanalysis", "run"].execute() # get Project values myProject = projects.primary # Creates an active application app = myProject.active_application # build Application and run static code analysis app.generate_code() your help is greatly appreciated.
Last updated: 2024-03-18
Post by schnepper on Error building Extension SDK Linux code
CODESYS Forge
talk
(Post)
I'm installed the CODESYS Control for Linux SL package and am trying to use the Extension API to call a simple C function. When I get to the step to run "make all" on the Linux machine, I get the error: build interface header: out/CmpFirstTestItf.h from CmpFirstTestItf.m4 ERROR: This functionname does not contain _cext (this is mandatory, see help for details): DEF_API(void',CDECL',external_struct__fb_init',(external_struct_fb_init_struct *p)',1,0x1F77E075,0x00000001) Why does "Generate Runtime System Files" create a function that does not have cext in the name? What am I missing?
Last updated: 2024-04-01
Post by rossanoparis on RevPi CONNECT+, CODESYS, EtherCAT master "Filedbus lost synchronicity"
CODESYS Forge
talk
(Post)
Hello @rmaas I assume, you've already verified and tuned everything regarding the EtherCAT network. In my case the problem was due to a wrong core assignement. I suggest to not use the core #0 for your EtherCAT task. The OS realtime patch, which is present on RevPi OS, uses the core #0 for its porpouses and it mustn't be used by any other task which requires realtime and deterministic features. regards Rossano
Last updated: 2024-04-11
Post by eschwellinger on License problem gateway
CODESYS Forge
talk
(Post)
I just try to help. Anyway it is a big difference if a Store SL runtime or an oem plc and licence is used. These licenses need to be activated on plc side - so you have dependencies to the version (CODESYS and Runtime Version) Did you ever ask Epis out for this situation? They should know which license fit to their device. Even they should know if the device is capable for Softmotion and see the requiremnts in the CODESYS store: Runtime 4.9.0.0 - how should this work with Epis 3.5.16.x? Anyway refund is not a problem.
Last updated: 2024-04-26
Post by richard-wang on Codesys recipe manager - what does it do?
CODESYS Forge
talk
(Post)
Hi All Thanks for sharing this information. For whom may not know why always get error code 16#4000 or 16#4002 while performing Recipe commands, the root cause is There is a line need to be inserted in CODESYSControl.cfg file, which is PlaceholderFilePath.1=/var/opt/codesys/PlcLogic/ I am using Pi, therefore the above path is set to my pi unit, after adding above line to my cfg file, all the Recipe commands work fine. But I still do not know how and when this file got modified though.
Last updated: 2024-04-29
Post by schnepper on Minor UI bug: cannot create SFC POU after creating a Function POU
CODESYS Forge
talk
(Post)
After creating a Function POU, it is not possible to then create an SFC POU. Steps to recreate: * Create a new Function POU. SFC is not allowed for Functions, so SFC does not show in the Implementation language dropdown. * Click Add Object -> POU... Function is selected for Type. * Select Program * SFC is not present in the Implementation language dropdown
Last updated: 2024-05-23
Post by yofi on Raspberry Pi 4 POU not running
CODESYS Forge
talk
(Post)
I have this error where the pou doesn't run even for simple programs like contact and a coil if i remove the pou from the task and put another one it works for one run then it stops working again in the photo we can see a contact is on but the coil connected to it is still not on and the device is in run mode I had this issue again and again any help
Last updated: 2024-06-02
Post by yofi on Raspberry Pi 4 POU not running
CODESYS Forge
talk
(Post)
I have this error where the pou doesn't run even for simple programs like contact and a coil if i remove the pou from the task and put another one it works for one run then it stops working again in the photo we can see a contact is on but the coil connected to it is still not on and the device is in run mode I had this issue again and again any help
Last updated: 2024-06-02
Post by rene-h on VU.FbOpenDialog - TargetVisu - 2 x WebVisu
CODESYS Forge
talk
(Post)
Hello, i am trying to find a way how to open Dialogs on a Single Visu. The options from VU.Globals are Target and WebVisu, but Webvisu opens the Dialog on both WebVisus and it should be separated. CurrentVisu can only be used when the Dialog is called from the Visu, but its all done in the Code. One Webvisu is for the User and one is for diagnostic reasons, and they should not be interfered from each other. Maybe someone can help me with this. Thanks
Last updated: 2024-06-13
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 ducng on SMC_FB_WASNT_CALLED_DURING_MOTION when enable MC_MoveRelative
CODESYS Forge
talk
(Post)
Hello, I am using an Inovance PLC to control a servo via EtherCAT. When I enable MC_POWER, the drive switches to Run mode successfully. After that I call MC_MoveRelative, but I get the error SMC_FB_WASNT_CALLED_DURING_MOTION. The servo vibrates but the motor shaft does not move. I am new to EtherCAT/servo motion control, so I would appreciate any guidance or suggestions for troubleshooting this issue. Thank you in advance for your help.
Last updated: 2025-11-02
Post by imdatatas on SMC_ERROR.SMC_AXIS_NOT_READY_FOR_MOTION when using Drive Virtual
CODESYS Forge
talk
(Post)
@ducng, Another possible situation could be that normally there are 3 inputs for MC_Power. In your above images, I can't see the "bDriveStart" input activated. As Mr. @gseidel mentioned, you need to make sure MC_Power.Status output should be TRUE. Issuing any movement command without activating the axis would naturally result in an error. For MC_Power; You can set the Enable and bDriveStart inputs to TRUE and try turning the axis activation on and off using only the bRegulatorOn input. Regards, Imdat
Last updated: 2025-11-28
Post by mondinmr on COL.IMap2 and HashTableFactory cause frequent Access Violation
CODESYS Forge
talk
(Post)
Good morning, I’ve been using the Collection library for a long time, mostly with Stack, LinkedList, and List. From your examples I was able to manage the different factories, even for custom elements. Now I need a hashtable, but with this object I’m running into a lot of random access violations. If I append something inside FB_Init after constructing the hashtable, it crashes, even though the list was already created. If I only create the hashtable in FB_Init and append afterwards, it usually works. I don’t understand the meaning of the dispose call in this code: pSlave := ADR(slave); uSlave := TO_ULINT(pSlave); iKey := fKey.Create(uSlave); IF hash.CountKeys() = 0 THEN Service.logger.appendLog('Filling hashtable', 'HashManager', AdvLogType.AdvDebugMsg); ok := FALSE; ELSE eError := hash.ContainsKey(iKey, xResult => ok); END_IF IF NOT ok THEN pI := __NEW(UINT); iVal := fKey.Create(TO_ULINT(pI)); Service.logger.appendLog(CONCAT('New slave', TO_STRING(uSlave)), 'HashManager', AdvLogType.AdvDebugMsg); hash.AddKeyValuePair(iKey, iVal); appendNewSlave := pI; ELSE eError := hash.GetElementByKey(iKey, itfValue => iElem); xResult := __QUERYINTERFACE(iKey, itfIInstance); IF xResult THEN itfIInstance.Dispose(); END_IF IF eError <> COL.COLLECTION_ERROR.NO_ERROR THEN Service.logger.appendLog(CONCAT('ERROR ', TO_STRING(eError)), 'HashManager', AdvLogType.AdvCriticalMsg); appendNewSlave := nullptr; RETURN; END_IF __QUERYINTERFACE(iElem, iVal); {warning disable C0033} pI := TO___UXINT(iVal.UlintValue); {warning restore C0033} appendNewSlave := pI; END_IF Without the dispose call, every second cold reset crashes immediately when I try to access iVal, even if eError doesn’t report any error. With the dispose call, the cold reset issue disappears, but I get other problems: a) If I start the runtime using systemctl start codesyscontrol, it crashes at IF hash.CountKeys() = 0 THEN b) If I delete the files in PlcLogic and download again, it works and survives multiple cold resets. But as soon as I run systemctl restart codesyscontrol, everything gets corrupted again and it starts crashing at that point. FUNCTION_BLOCK SlaveMapCounter VAR hash : COL.IMap2; eError : COL.COLLECTION_ERROR; END_VAR In its FB_Init I create it: METHOD FB_Init: BOOL VAR_INPUT bInitRetains: BOOL; // TRUE: retain variables are initialized (reset warm / reset cold) bInCopyCode: BOOL; // TRUE: the instance will be copied to the copy code afterward (online change) END_VAR VAR hF : COL.HashTableFactory; END_VAR hash := hF.Create(256); In another FB I instantiate it statically: FUNCTION_BLOCK ABSTRACT AbstractServoEthercatController EXTENDS AbstractServoController VAR_STAT hashSlaves : SlaveMapCounter; END_VAR VAR field : REFERENCE TO ADVAbstractFieldUnitEthercatCia402; initCnt : REFERENCE TO UINT; END_VAR The append method is the one shown above, and I call it after the runtime has started. The accesses are performed by a single task, and in any case I’m working on an isolated single core. I’ve tried everything, moving the create, the instances, and all the rest several times, but nothing seems to work. I’d like to point out that these FBs are part of our own library, which is used in many applications.
Last updated: 2025-09-11
Post by eschwellinger on communication
CODESYS Forge
talk
(Post)
depends on if you use PFC200 SL from CODESYS store or the Wago target for the PFC. If you use the SL product you need to setup the interface by a plcshell command...
Last updated: 2023-08-19
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
Post by rohitk on CoDeSys libraries for BECKHOFF EL7332/EL7342
CODESYS Forge
talk
(Post)
Hi, step 1 : go to beckhoff website, go to required IO card, go to download option in that, go to XML donlowad and download the file Step2 : Go to codesys software, go to tools - deviceRepository - install that downloaded file.
Last updated: 2023-08-24
Post by eschwellinger on How to configure CODESYSControl_User.cfg in order to use a specific network card for OPCUA Server
CODESYS Forge
talk
(Post)
check this faq section here: https://faq.codesys.com/plugins/servlet/mobile?contentId=102137886#content/view/102137886
Last updated: 2023-08-25
Post by totorovic on CSVReaderInit returns error : INVALID_HANDLE
CODESYS Forge
talk
(Post)
Thank you for the return. The path targets to a CFast card. User has R/W access to it. We will try to change it.
Last updated: 2023-08-31
Post by eschwellinger on Ethercat scan for devices not picking up EL7041 as a softmotion axis
CODESYS Forge
talk
(Post)
Add existing version (with SM drive) - without scan - disable under expert settings in the slave the revision check.
Last updated: 2023-09-03
Post by wehling-h on Troubles with using CAN API
CODESYS Forge
talk
(Post)
Hi together, I'm using a 11bit driver system which seems to work well so far. May someone here knows if i have to configure a singleID for each message i like to receive and evaluate?
Last updated: 2023-09-11
Post by aguado on Setting up the "Visual Studio Code" debugging environment (using .NET debugging) for use with the ScriptEngine API in Python.
CODESYS Forge
talk
(Post)
Hi, did you ever get this to run? Best Till
Last updated: 2023-09-12
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.