Post by pierre on difference between stub file and source file in scriptengine
CODESYS Forge
talk
(Post)
I included the stub files of scriptengine (codesys python api) in a directory scriptengine of a project. I tried to include librarymanager like that: from scriptengine import librarymanager visual studio code detected an error. It said librarmanager could not be found. Indeed in the stub file, this was library_manager. But if I change it in my code, the plugin doesn t work anymore. I found an easy solution to this problem. I ve just changed the copied stub files.(library_manager -> librarymanager) But I think it would be better if you update it yourself in the future.
Last updated: 2024-09-20
Post by atone on CAA File Handling: "Read only" error
CODESYS Forge
talk
(Post)
In case of error while opening the file to read you assume that the file doesn't exist and try to create one. But it could be that the SD card is not ready yet or simply not there. I would try to check first if the SD card is there and accessible. Otherwise with FILE.Create you could end up creating a new directory that is not mapped to the SD card. This would explain the errors even after a reboot, though it doesn't explain the READ_ONLY_CAA error I guess? I would use FILE.DirOpen and FILE.DirList to check if the SD card is there and ready.
Last updated: 2025-03-20
Post by eaglealex on Length of string and Array of bytes
CODESYS Forge
talk
(Post)
Hello! I have tried read a file to the string variable. But I faced a problem - there is about 2800 bytes of information in file, but string have a limit 2393 bytes. I made two variables with same address (for automatic convertion) - string[3000] and array of bytes[1..3000]. And I noticed that array of bytes contains all information from file, but string shows only first 2393 bytes. So I have lost information. Is there really such a limitation? Or I have an error in my program and Codesys 2.3 have no limit for such kind of conversation between string and array of bytes? Thank you very much!
Last updated: 2025-04-01
Post by kut69 on Retain / Persistent Variables in Codesys for Raspberry Pi
CODESYS Forge
talk
(Post)
Hi, I am interested in details about the .ret file in the filesystem. I have already a project where the file is used (write on demand, read by start) and I want to share it as 'default input' for test devices using the identical application. Opening the .ret file content in a hex editor (I only use a single string retain var) I asked myself what the meaning of the first 24 bytes is. It neither contains a handle to the application nor a reference to the variable. Is this maybe a timestamp? Or a CRC/checksum? Regards, Thomas
Last updated: 2025-05-19
Post by taywinkel on Virtual Runtime CSV Utility Error
CODESYS Forge
talk
(Post)
Hello, I am having trouble figuring out the proper location for my virtual runtime to create a .CSV file. No matter the file location I set, I get error 14 (CANNOT_OPEN_DIRECTORY). I have tried multiple different file paths ('/', '/var/opt/codesysvcontrol/PlcLogic', '/var/opt/codesys/'). I understand that there is only certain places that Codesys can read/write. I am also running this virtual runtime in a Podman container. Does anyone know what the location should be? I attached the archive I was using, a project that tests CSV capability that I borrowed from someone else. Thanks!
Last updated: 2025-09-03
Post by arjunk on How to correctly create a device descriptor (.devdesc.xml) for a custom Linux ARM64 PLC in CODESYS 3.5.21.20?
CODESYS Forge
talk
(Post)
Iβm trying to integrate a custom PLC into CODESYS so that it appears under the Device section. From what I understand, this requires a .devdesc.xml device descriptor file. I attempted to create the XML manually, but whenever I try to install it in order to generate a .package file, CODESYS crashes. CODESYS version: 3.5.21.20 Target PLC: Linux ARM64βbased My questions are: Is there an official or easier way to generate a valid .devdesc.xml file for a custom PLC? Are there tools, templates, or examples that can help ensure the XML is structured correctly and wonβt cause crashes? For Linux ARM64 targets specifically, is there a recommended starting point (e.g., modifying an existing device descriptor)? Any guidance or best practices for creating and packaging custom device descriptors would be greatly appreciated.
Last updated: 2025-10-06
Post by francescoc on Logger in ms
CODESYS Forge
talk
(Post)
Hi, I cannot find any documentation regarding the codesys configuration file. I modified this part to have log files saved to disk: [CmpLog] Logger.0.Name=LOGS/PlcLog Logger.0.Filter=0xFFFFFFFF Logger.0.Enable=1 Logger.0.MaxEntries=20000 Logger.0.MaxFileSize=5000 Logger.0.MaxFiles=10 Logger.0.Backend.0.ClassId=0x0000010B ;sends logger messages to SysOut Logger.0.Backend.1.ClassId=0x00000104 ;writes logger messages in a file Logger.0.Backend.2.ClassId=0x00000135 ;sends logger messages as UDP syslog Logger.0.Type=0x314;Set the timestamp to RTC ;Logger.1.Name=/tmp/CommLog ;Logger.1.Enable=1 I need to have milliseconds in the timestamp as well. What value should I use instead of 0x314? Is there any documentation regarding this file? Thank you
Last updated: 2024-03-16
Post by k2saki on CNC / G-Code streaming processing ( to start quickly in long G-Code File )
CODESYS Forge
talk
(Post)
Is it possible like G-Code streaming processing (like FANUC or SIEMENS DNC Function )? Or Does anyone know the tips for CODESYS Motion to start moving long Long G-Code File quickly? I have to wait long time after "Start" button to start moving, I have to wait finishing interpreting whole G-Code file, ( and I have to prepare huge buffer to store. ) Now, I'm working on my CNC Project using SMC_ReadNCFile2, and SMC_NcInterpreter to preprocess G-Code. I tried to set SMC_Interpolator.xExecute to true to Start while after SMC_NcInterpreter processed more 50-line of G-Code, but that not worked, I had to wait SMC_NcInterpreter processed all lines to start SMC_Interpolator. G-Code have about 2000 lines of XY of G01 (or more over.. ) of short segment that a CAM software has exploded from NURBS Curve.
Last updated: 2024-05-03
Post by sbrauns on Codemeter log error: API Error 200 (ENTRY NOT FOUND) occurred!
CODESYS Forge
talk
(Post)
Hi, I am using Codesyscontrol for linux 4.11 with an USB dongle with license. The log file from codemeter shows a constant error message which repeats every minute: Entry (6000437:8755) not found - Event WB0200 (ENTRY NOT FOUND), Request IP-Address local(IPV4) with UserLimit API Error 200 (ENTRY NOT FOUND) occurred! The log file from Codesyscontrol itself shows runtime licensed and I experience no other issues. But I am still concerned about the error message in the log file. Does anybody know what this is and how to fix it? thanks
Last updated: 2024-05-08
Post by eschwellinger on Same program to more than one PLC
CODESYS Forge
talk
(Post)
just open http://localhost:8080 in Chromium then it will show the webvisu ( sure you need to this in your CODESYS Application)
Last updated: 2023-08-24
Post by marekxc on Error C0521 - unknow compiler
CODESYS Forge
talk
(Post)
Select in tree "DEVICE", right-click and select "Update Device" Select "Library manager" and Change the version of the Library (down manualy). Samoetimes "Try reload Library". If you open a project version 3.5.19 in version 3.5.16, there are difficulties.
Last updated: 2023-09-02
Post by sedoerr on Check For Open Dialogs On Client
CODESYS Forge
talk
(Post)
You need to create a function around this function to check the dialogs you use in your program. That's the way i have done it.
Last updated: 2023-09-26
Post by sedoerr on Check For Open Dialogs On Client
CODESYS Forge
talk
(Post)
FUNCTION CheckDialogOpen : BOOL VAR_INPUT sDialogName : STRING; END_VAR VAR pstClientData : POINTER TO VisuElems.VisuStructClientData; itfDialogManager : VisuElems.IDialogManager; itfMyDialog : VisuElems.IVisualisationDialog; END_VAR VisuElems.g_ClientManager.BeginIteration(); WHILE (pstClientData := VisuElems.VisuElemBase.g_ClientManager.GetNextClient()) <> 0 DO itfDialogManager := VisuElems.g_VisuManager.GetDialogManager(); itfMyDialog := itfDialogManager.GetDialog(sDialogName); CheckDialogOpen := VisuDialogs.VisuDlgUtil_IsDialogOpen(itfMyDialog,pstClientData,itfDialogManager); IF CheckDialogOpen THEN EXIT; END_IF END_WHILE
Last updated: 2023-09-26
Post by gurke258 on EL2911
CODESYS Forge
talk
(Post)
Hello, sorry to open this again. I can't find the right ESI for EL1918 as Safety PLC.. I only have the one without safety PLC. I look on Beckhoff website but i didnt found it. Can anyone help me? EDIT: I found it :)
Last updated: 2023-10-12
Post by open on How to create a stopwatch?
CODESYS Forge
talk
(Post)
Hi, how to create a stopwatch when start is pressed, timer will start counting and stop is pressed, timer will stop counting in structured text?
Last updated: 2023-12-07
Post by j-page on I have errors while building the project
CODESYS Forge
talk
(Post)
I am also suffering from the same problem. The "Clear All" in the build clears the error once, but when I open the project again, the same error occurs again. Can someone please help me?
Last updated: 2024-07-11
Post by robert-o on Converting hex bytes to float
CODESYS Forge
talk
(Post)
Try OSCAT_BASIC and Function DW_TO_REAL. DWORD_OF_BYTE my although help. The Lib is open and free. It is not necessary to add this Lib, you can use/copy the source code just to get an idea.
Last updated: 2024-08-05
Post by andreiot40 on Step motor ECT60 Ethercat in codesys 3.5
CODESYS Forge
talk
(Post)
Thanks for your response. for Master in log i have : no slaves found, Interface could not be opened, could not open network adapters. Status : Not running FOR ETC60 There is nothing !!!
Last updated: 2024-08-15
Post by open on (no subject)
CODESYS Forge
talk
(Post)
Hello, I want my button to be attached image ON_Good when variable true but however when i copied the visualization object into a new visualization screen it become attached image ON_Bad. Anyone know how to make it attached image ON_Good? Warmest regards,
Last updated: 2024-09-03
Post by timvh on CoDeSys 3.5 SP20 "No Offline Help installed"
CODESYS Forge
talk
(Post)
Open the CODESYS Installer (from the menu Tools). Go to Browse. Search for: help ... Select the CODESYS Offline Help which you would like to install. (probably you have to close CODESYS to install it and reopen it after installation).
Last updated: 2024-10-01
Post by malie on Visuutils FbOpenDialog(Extended) not open Dialog from POUs
CODESYS Forge
talk
(Post)
Hello, thanks for the answer, that helped a little. How to achieve this behavior automatically when importing from a library, there can be a lot of dialogs from different librarys?
Last updated: 2024-10-08
Post by paulpotat on Can't open license manager with raspberry CM4
CODESYS Forge
talk
(Post)
Do someone have any information on this topic ? We tried several different CM4 boards without success, and we cannot install the licenses we bought anymore... Isn't CodeSys supposed to support CM4 Raspberry pi ?
Last updated: 2024-10-15
Post by banialuk on Modbus TCP Server
CODESYS Forge
talk
(Post)
I created Modbus Server TCP, but when I try started i have a error "TCP socet error" "Error on open/close/read/write TCP socket."
Last updated: 2024-10-21
Post by thomas-moba on TrueType font problem
CODESYS Forge
talk
(Post)
Thanks for your answers! Close and Open CoDeSys has no effect. I already tried the original Roboto and this is working. But I think our marketing compartment changed it.
Last updated: 2024-10-23
Post by talhaali on Control Win one instance at a time
CODESYS Forge
talk
(Post)
I want to open one instance of runtime to be opened at a time even I hit multiple times? How can I implement it?
Last updated: 2024-10-25
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.