Post by fahrettin on CODESYS 3.5.17.30 Setup Error
CODESYS Forge
talk
(Post)
While trying to install CODESYS 3.5.17.30 (64-bit) on my Windows 11 computer, I'm getting the errors below. The first error occurs near the end of the installation. Once you bypass it, the installation returns the second error. Do you have any suggestions for a solution? By the way, I've tried this on several PCs, but I haven't found a solution.
Last updated: 2025-10-30
Post by jonasz on Deploy LicenseServer for Linux SL
CODESYS Forge
talk
(Post)
Hello, Basically, everything is clear to me. There's still the issue of a TimeProvider for an external device. This may be a stupid question, but I can't find this package. And of course, the question is, can the RPi machine be an external provider? Has anyone tested such a solution?
Last updated: 2025-11-18
Post by gseidel on Can't get SMC_SmoothPath to work
CODESYS Forge
talk
(Post)
Hi bertus, thanks for the additional information. Setting bAbort on a restart is not needed. Calling all FBs starting from the decoder up to checkvelocities with bExecute = FALSE and then giving a new rising edge on bExecute is what should be done. Do you also restart the Interpolator? (I don't think that has anything to do with the issue, but still...) Best regards, Georg
Last updated: 2025-12-23
Post by blitz on SMC_ERROR SMC_CGR_INVALID_POSPERIOD
CODESYS Forge
talk
(Post)
Codesys - SMC_ERROR SMC_CGR_INVALID_POSPERIOD - Invalid modulo period less than or equal to zero or greater than half the bus bandwidth. Has anyone seen this error and actually understands what it means and how to get rid of it? I tried to work around it by reducing the number of increments on the drive but then the drive itself starts throwing errors.
Last updated: 2025-12-15
Post by mascara on CloseTargetVisu
CODESYS Forge
talk
(Post)
I need to add a button to the Visualization to close it. And create a shortcut on the Windows desktop to reopen the Visualization. This is necessary to configure, for example, a local IP address. Is this possible? What command closes the Visualization? Which program opens Visualization? System: Win10 Codesys: Control RTE V3 x64 Program: Codesys V3.5 SP20 Using only a touchscreen monitor, without keyboard and mouse.
Last updated: 2026-03-11
Post by bdschnapp on OPC-UA ApplicationUri / ProductUri
CODESYS Forge
talk
(Post)
From Codesys support: The format of the URN is always the same. It's always urn:<vendor>:<product>:OPCUA:Server. What I think you can influence the vendor and product (DeviceName) through settings in the runtime cfg file:</product></vendor> [SysTarget] VendorNameUnicode="T\00E\00S\00T\00" DeviceNameUnicode="t\00e\00s\00t\00" Note that these are 16-bit strings, thus the ASCII padded with nulls
Last updated: 2026-03-17
Post by petra on Gateway not configured properly when read_online_value
CODESYS Forge
talk
(Post)
Here is what I use to read online the parameter value. proj = projects.primary app = proj.active_application plc = proj.find("Device", True)[0] onlineapp = online.create_online_application(app) onlineapp.login(OnlineChangeOption.Try, True) dev1 = proj.find("DEV1", True)[0] for conn in dev1.connectors: > parms = conn.host_parameters > if len(parms) > 0: > p = parms.by_id(1074855985) > p.read_online_value(2000) ---> error: Gateway not configured properly
Last updated: 2026-06-12
Post by petra on Gateway not configured properly when read_online_value
CODESYS Forge
talk
(Post)
Here is what I use to read online the parameter value. proj = projects.primary app = proj.active_application plc = proj.find("Device", True)[0] onlineapp = online.create_online_application(app) onlineapp.login(OnlineChangeOption.Try, True) dev1 = proj.find("DEV1", True)[0] for conn in dev1.connectors: > parms = conn.host_parameters > if len(parms) > 0: > p = parms.by_id(1074855985) > p.read_online_value(2000) ---> error: Gateway not configured properly Does anyone know about this?
Last updated: 2026-06-12
Post by erik-gerrits on Dynamic Images
CODESYS Forge
talk
(Post)
I ran into this issue as well. Here is the fix: Good example: CASE iBitmap OF 0 : sName := 'ImagePool.image0'; 1 : sName := 'ImagePool.image1'; END_CASE Bad example (this will only work on the target device, WebVisu will show a blank rectangle): CASE iBitmap OF 0 : sName := '/home/cds-apps/PlcLogic/visu/image0.png'; 1 : sName := '/home/cds-apps/PlcLogic/visu/image1.png'; END_CASE
Last updated: 2026-07-10
Post by wold on CodeMeter Network Server: Keep runtime dongle local-only and export only a second CmStick
CODESYS Forge
talk
(Post)
Hello, I am running a CODESYS Control Runtime on a Raspberry Pi. Two CmSticks are connected to the same system: CmStick A - Runtime license - MultiCore license - KNX license CmStick B - Engineering / Developer licenses My goal is: The runtime on the Raspberry Pi shall use CmStick A locally. Licenses from CmStick A shall NOT be provided by the CodeMeter Network Server. Only licenses from CmStick B shall be available to remote network clients. During troubleshooting I observed that the CodeMeter Network Server collects licenses from both CmSticks. The KNX license appears to be local-only, but the runtime and multicore licenses of the same dongle are still visible through the server. I would like to know if a supported configuration exists for the following scenario: One CmStick remains strictly local to the runtime. A second CmStick on the same machine is exported through the CodeMeter Network Server. Questions: Is it possible to exclude a specific CmStick from being exported by the CodeMeter Network Server? Can this be configured via License Access Permissions (ACL), WebAdmin, or another mechanism? Can export rules be applied per CmStick, per Firm Code, or per Product Code? If supported, could you provide a configuration example or a reference to the relevant documentation? The reason for asking is that after removing a separately installed CodeMeter server component and returning to a local-only setup, the runtime licensing behaviour became stable again. Therefore I am looking for the officially supported way to keep the runtime dongle local while still providing engineering licenses from a second dongle over the network. Thank you.
Last updated: 2026-08-02
Post by kambel on IO Drive on C manual
CODESYS Forge
talk
(Post)
Hello, pls help!!! Is there a more detailed manual (for dummies) for writing your own IO drive device in C? Another question: how can I add diagnostics to the IEC IO Drive device so that a red triangle lights up in the project tree in the event of a malfunction?
Last updated: 2026-01-29
Post by gatto on EXCEPTION [watchdog] how to find position cause
CODESYS Forge
talk
(Post)
hi. My plc is weidmuller UC20-WL200-AC, IDE CODESYS 3.5.20.40, see picture for task settings. sometime i've got the plc stop. Reading the log, I find: EXCEPTIONPOSITION : IP=0x(nil) (no IECcontext could be retrieved) component CmpIecTask EXCEPTION [Watchdog] occurred: App=[Application], Task=[TASK_O_MAIN] component CmpIecTask How to find the position of problem?
Last updated: 2026-02-06
Post by reinier-geers on Compare applications in one project
CODESYS Forge
talk
(Post)
HI,ive got one project with 6 applications. one master and 5 slaves. All 5 slaves should be the same. Can i compare applications in one project ? sind version 20.5 ive got problems. One slave freeze compleetly after a while. Ive got an other project freezes after a while , after a online change
Last updated: 2026-03-19
Post by reinier-geers on Compare applications in one project
CODESYS Forge
talk
(Post)
Ive copied slave 3 to slave 1. Runs without a problem. Then i copied 1 to 3. It hangs/freeze immediatly. not even a screen. Only thing that is diverend is the network variable. What is the problem with version 20.5 / 21.0 ? Not even my dealer knows whats the problem
Last updated: 2026-03-19
Post by reinier-geers on Virtual Api to vieuw what im sending
CODESYS Forge
talk
(Post)
Hi. Is there a website to test my webclient ? When i do a web api test on internet it works. But with codesys ill get an error. So is there a website to tests what im sending ? or a way to look in to the Codeys FB Webclient ?
Last updated: 2026-04-05
Post by reinier-geers on Virtual Api to vieuw what im sending
CODESYS Forge
talk
(Post)
Hi. Is there a website to test my webclient ? When i do a web api test on internet it works. But with codesys ill get an error. So is there a website to tests what im sending ? or a way to look in to the Codeys FB Webclient ?
Last updated: 2026-04-05
Post by malie on Issue with library updates
CODESYS Forge
talk
(Post)
I just tried with version 3.5.22.1 and librarys updates often aren't recognized, usually not. Same behavior like 3.5.21. To describe my workflow: one IDE is used to test librarys as project and two or more IDEs to edit librarys. With only two open IDEs there is no problem, the problem began with more than two open IDEs.
Last updated: 2026-05-04
Post by ttvs on See if application is running
CODESYS Forge
talk
(Post)
Hello, Is it possible to check if PLC application is running or stopped from linux shell? I am using codesys control for linux arm64sl. Tried accessing the plc shell, but get auth errors. Also, when starting/stopping the program via plc shell from codesys IDE it doesnt report that information to log
Last updated: 2026-07-10
Post by timvh on Detect "Cancel" Press in FileOpenSave Dialog
CODESYS Forge
talk
(Post)
Maybe there is a better way, but a long time ago I created a test application that worked like this: With a button I opened the dialog and I added a "Input configuration - OnDialogClosed" "Execute ST-Code" action to this same button which called the following Function when the dialog was closed: F_OnFileDialogClosed(pClientData); Below this Function which handled the result: // This function is called from the visualization when the dialog is closed. FUNCTION F_OnFileDialogClosed : BOOL VAR_INPUT pClientData : POINTER TO VisuElems.VisuStructClientData; END_VAR VAR dialogMan : VisuElems.IDialogManager; FileOpenCloseDialog : VisuElems.IVisualisationDialog; result : VisuElems.Visu_DialogResult; _sFileName : STRING(255); END_VAR // the DialogManager is provided via the implicitly available VisuManager dialogMan := VisuElems.g_VisuManager.GetDialogManager(); IF dialogMan <> 0 AND pClientData <> 0 THEN FileOpenCloseDialog := dialogMan.GetDialog('VisuDialogs.FileOpenSave'); // gets the FileOpenSave dialog IF FileOpenCloseDialog <> 0 THEN result := FileOpenCloseDialog.GetResult(); // gets the result (OK, Cancel) of the dialog IF result = VisuElems.Visu_DialogResult.OK THEN // Original code gvlFile.FileListProvider(); _sFileName := CONCAT(gvlFile.FileListProvider._stDirectory, gvlFile.FileListProvider.stFile); // do something with this file name... END_IF END_IF END_IF
Last updated: 2023-09-19
Post by rcaponi on Codesys Control RTE V3. Remote Control
CODESYS Forge
talk
(Post)
Hello, I would like to have, if possible, some clarification on this function. That is, I would like to understand if it is useful for managing, fom my development PC, the RTE runtime executed on a remote control. This is what the help says: Remote PLC: Opens the Remote Configuration dialog. By enabling or disabling the Control remote PC, not local option, you determine whether a PLC is used that is on a remote or local PC. Accordingly, the menu commands Start PLC, Stop PLC, and PLC Configuration refer to the local PC or a PC reached on the network. For the remote PC, specify the Target PC address, Port number, and a Timeout value (in ms) for the connection (Remote Timeout [ms]). But does this mean that I also need to install the RTE runtime on my development PC? Is it possible to have some more information? Best regards Roberto Caponi
Last updated: 2023-09-22
Post by sturmghost on Visualization using methods and cyclic ST-calls
CODESYS Forge
talk
(Post)
Im looking for a way to implement ST-code into the visualization element without creating a helper POU or method in my device/application tree. Like visualization properties are evaluated at each VISU_TASK cycle I want to be able to create own ST code which interacts with the visualization interface variables. To be more specific I want to have a property which executes user defined ST-code at each VISU_TASK cycle exactly like its already possible for Input Configuration on various mouse and dialog events. Also a property for initialization (so only executed once) and a timed property would be nice. With the situation right now I'll have to create a POU function which handles the ST-code and misuse a property, like the text variable, to execute this POU function at each VISU_TASK cycle. Or does it exist and I don't know it?
Last updated: 2023-10-02
Post by oi18ct on ARM SL Development Board Recommendation
CODESYS Forge
talk
(Post)
Hello codesys forum, My company is looking at developing a solution with Codesys ARM SL. The requirements will not tax the capabilities of Codesys. I would like to buy an AMR 7 or 8 Dev Board for experimenting. I am looking for a recommendation as I have minimal experience with Linux. Any input from the forum would be most appreciated as the hardware requirements as provided by Codesys for ARM SL seem pretty minimal (basically a arm7 or 8 with Debian is all). Our needs are small in scale- something like 8 digital inputs, 6 digital outputs, 2 analog inputs and 1 analog output. A small gui will be published via web visualization for external display (no local display). Communications with ModbusTCP and uart/RS485. It may be necessary to access i2c and make c or python calls to some existing code that is pretty small. Something like the EMCraft STM32MP1 SOM Starter Kit or Octavo Systems OSD32MP1-RED development board? Ideally something that has a path to a SoM for production. Kontron appears to have some interesting options too. Just having a hard time deciding where to start. Thanks in advance... LC
Last updated: 2023-11-11
Post by user3000 on Can't find an Extended Pulse Timer (TP and LTP)
CODESYS Forge
talk
(Post)
Hello, For my program I need an extended pulse timer, which can be referred to as a retriggerable pulse timer. Where every rising edge of the input resets the elapsed time zero, extending the lenght of the output pulse. The Codesys pulse timer (TP) is a one-shot timer and only resets the elapsed time with the falling edge of the input. There is also a pulse timer (LTP) in codesys, but in my simulation it was also functioning as a one-shot even though the description sounds like LTP should be retriggerable. I have uploaded some timing plots from another PLC program for reference. I am looking for a timer equivalent to the "TEP" diagram. Is there an Extended Pulse Timer in Codesys? Maybe there is a way to manipulate the input so it resets the elapsed time outside the function block?
Last updated: 2023-12-06
Post by psychoengineer on Cannot Save CSV File on Windows Computer Using CODESYS and Control Win
CODESYS Forge
talk
(Post)
I am currently working on a project using CODESYS and Control Win on a Windows computer. I've encountered an issue where I am unable to save a CSV file. I have followed the standard procedures and used the appropriate file handling functions, but the file is not being created or saved as expected. IF xStartTest THEN sFileName := '\logs.txt'; sFileName := CONCAT(gvl.g_sMainDirectory, sFileName); sFileNameCopy := '\CAAFileCopy.txt'; sFileNameCopy := CONCAT(gvl.g_sMainDirectory, sFileNameCopy); //eWriteState := FILE_OPEN_TRIGGER; xTestDone := FALSE; xError := FALSE; xStartTest := FALSE; END_IF VAR_GLOBAL g_sMainDirectory : STRING := 'C:\LogFiles'; // file path for CSV file END_VAR Despite this, the file does not appear in the specified directory, and no error messages are being generated. I've checked the directory permissions and ensured that the path is correct. Has anyone else experienced a similar issue or have any suggestions on how to resolve this? Any help would be greatly appreciated. Thank you!
Last updated: 2024-07-04
Post by marek71 on Ambiguous use of name - CO136
CODESYS Forge
talk
(Post)
My PLC is WAGO PFC200 Firmware Revision 26. target After updating WAGO_Devices_and_Libraries with newer Firmware 27, CODESYS wants to update all libraries to new versions. I will only add that I did not update the Firmware in the PLC. After compiling the program, I received the following errors: ------ Build started: Application: Device.Application ------- Typify code... [ERROR] wagosyscom_internal_pfc, 1.0.2.5 (wago): FbSerialInterface_internal: C0136: Ambiguous use of name 'RTS_IEC_HANDLE' [ERROR] wagosyscom_internal_pfc, 1.0.2.5 (wago): FbSerialInterface_internal: C0136: Ambiguous use of name 'RTS_IEC_RESULT' [ERROR] wagosyscom_internal_pfc, 1.0.2.5 (wago): Initialize [FbSerialInterface_internal]: C0032: Cannot convert type 'Unknown type: 'RTS_INVALID_HANDLE'' to type 'POINTER TO BYTE' [ERROR] wagosyscom_internal_pfc, 1.0.2.5 (wago): Initialize [FbSerialInterface_internal]: C0136: Ambiguous use of name 'RTS_INVALID_HANDLE' [ERROR] wagosyscom_internal_pfc, 1.0.2.5 (wago): Initialize [FbSerialInterface_internal]: C0046: Identifier 'RTS_INVALID_HANDLE' not defined [ERROR] wagosyscom_internal_pfc, 1.0.2.5 (wago): comextra_is_tx_empty: C0136: Ambiguous use of name 'RTS_IEC_HANDLE' [ERROR] wagosyscom_internal_pfc, 1.0.2.5 (wago): comextra_get_line_state: C0136: Ambiguous use of name 'RTS_IEC_HANDLE' [ERROR] wagosyscom_internal_pfc, 1.0.2.5 (wago): comextra_is_line_available: C0136: Ambiguous use of name 'RTS_IEC_HANDLE' [ERROR] wagosyscom_internal_pfc, 1.0.2.5 (wago): COMSW_SET_MODE: C0136: Ambiguous use of name 'RTS_IEC_HANDLE' [ERROR] wagosyscom_internal_pfc, 1.0.2.5 (wago): comextra_set_line_state: C0136: Ambiguous use of name 'RTS_IEC_HANDLE' Compile complete -- 10 errors, 0 warnings Build complete -- 10 errors, 0 warnings : No download possible The problem was caused by the WagoSysPlainMem(WAGO) library in the original version 1.5.3.0 after updating to 1.5.3.1. After returning to version 1.5.3.0, the problems disappeared. Probably the version number of this library is responsible for supporting the appropriate Firmware Revision. Can anyone confirm or deny my suspicions?
Last updated: 2024-07-06
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.