Post by milosfejgl on Codesys Licenses - How to reload them after updating the Raspberry Pi OS
CODESYS Forge
talk
(Post)
We use several control units running on Raspberry Pi, programmed using Codesys software, with multiple licenses stored as soft containers. We are planning to update the SD card image of the Raspberry Pi to a newer OS version. However, we are concerned that this process might result in the loss of our soft container licenses. Is there a way to temporarily deactivate the license so that it can be reactivated on the updated system? Alternatively, what would be the best method to preserve the licenses during the update? Thank you in advance for any responses!
Last updated: 2025-03-13
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 agentcousto on [Bug report] Issue with Importing XML Files Containing "POINTER TO" Variables in Codesys Platform Plugins Versions 2.7 and 2.8
CODESYS Forge
talk
(Post)
Hello, I have developed a Python script that I run to import XML files into my project. For this, I use the Python function import_xml(). Everything was working fine when I was using Codesys platform plugins version 2.6.1.2320, but since I upgraded to versions 2.7 and even 2.8, some files are no longer imported correctly. After some research, I identified that all the files containing variables of the type "POINTER TO" are affected. I have attached a screenshot of the error I am encountering. Do you know about this bug? Do you plan to fix it?
Last updated: 2025-03-26
Post by pernockham on How to manage soft container licenses for (remote) multi units?
CODESYS Forge
talk
(Post)
Using Codesys runtime for Linux and thinking of the process of preparing multiple such systems for my customer. I don't necessarily have physical access to these units, they can be (very) remote. The idea so far is to use an image to install the Linux OS and codesys runtime. Application updates can be done by distribution of the PlcLogic/Application/application.app and application.crc files. But whats the most practical way of managing the license for these units? Do each controller need to be physically connected to a License Manager instance or can licenses be distributed by means of a license file for each unit? I believe that the license should be stored in soft containers for each unit. Help and insights appreciated! Per
Last updated: 2025-04-04
Post by alex2 on Error Highlighting Not Working in CODESYS v3.5 SP10 on Windows 11
CODESYS Forge
talk
(Post)
Hello everyone, I'm currently using CODESYS v3.5 SP10 on Windows 11, and I've noticed that syntax errors are not automatically underlined in red as they normally should be. Is there a specific setting that needs to be enabled for this feature to work? If so, could you please let me know where to find it? I’ve already tried uninstalling and reinstalling CODESYS, but that didn’t resolve the issue. Also, i have a teammate who have exactly the same computer as me and he didnt encounter any issue. Thank you in advance for your help!
Last updated: 2025-05-13
Post by elsmart on How to create custom visualisation components (widgets)?
CODESYS Forge
talk
(Post)
Hello I'm currently working on a project where I need to implement visualisation in Codesys on Raspberry Pi via web browser. I'm uing Codesys IDE V. 3.5 and I was able to successfully run my program and visualisation using generic elements provided by Codesys on Raspberry Pi Compute Module 4. However I am dissatisifed by the limiations and looks of generic elements. I would like to create my own components for this specific task (like cyclic buffer with messege boxes or matrix of data structures). How do people develop their own visualisation components in Codesys and how to implement them in a project?
Last updated: 2025-05-27
Post by hclai on Maximum Array Index Issue
CODESYS Forge
talk
(Post)
I was trying to use a table object in visualization. I want to dynamically show the valid rows in the table. However, it does not work when there is 1 row. i put the maximum array index to 1. it does not show the 1st row. when i change to 2, it show the second row only. my project with older visualization profile version is working perfectly fine. I did some test and realized that i must use a Row Selection variable to change from 0 to 1. With this change of Row selection, then the row 1 will show up.
Last updated: 2025-06-19
Post by jdjennings1962 on Trouble accessing Math functions in OSCAT library
CODESYS Forge
talk
(Post)
Hi all, I am trying to utilize the ARRAY_SDV standard deviation function, part of the Math group in the OSCAT library downloaded from the CODESYS store. My Codesys version is 3.5.19.10. When I add the OSCAT to my Library, it shows a subset of the library (Standard) as fully installed and signed (see pic). However, the Math functions are not in this Standard group. The Math functions I need can be viewed as source code in the full OSCAT_BASIC, though this the symbol next to this library suggests it is source only and not fully installed. When I try to declare an instance of the ARRAY_SDV function in a program, it is not known. I have tried reinstalling and Building . . . Any help would be greatly appreciated. Jeff
Last updated: 2024-01-06
Post by askjong on Update variables when OPC UA Client updates. Error ID: 268468277 BadAttributeIdInvalid
CODESYS Forge
talk
(Post)
Hi, I'm connecting to a OPC UA Server using the Data Soruce Manager OPC UA Client. This works well until the OPC UA Server updates and the OPC UA list doesn't match up when i did last clicked the "Update variables" to add variables. All the variables are still the exists and none are removed from the server, but more are added during the engineering process. The error message i get in CODESYS is "Error in OPC UA call BadAttributeIdInvalid, Error ID: 268468277". The issues is fixed when i press the "Update variables" button and just press ok without adding or removing any variables in the list. Is there a way to either automatically update the browsepath if it fails or on startup, or to trigger it by code?
Last updated: 2024-01-08
Post by matt-s on HMI Pushbutton/Move Instruction
CODESYS Forge
talk
(Post)
I am having an issue where the manual start/stop push buttons on the HMI are supposed to take the pumps/blowers out of auto. The logic I have attached works for the pumps, but not the blower. From what I can tell it is the exact same logic, but it is not writing a 0 to the Auto PB variable. Attached is the logic, cross reference list to show nothing else is writing to it, and the HMI screen. Any help? Am I missing something? I am using a Groov Epic PR1, my software version is 3.5 SP19 Patch 5 32 Bit.
Last updated: 2024-01-25
Post by matthew on New Ladder Diagram conversion does not work due to missing features
CODESYS Forge
talk
(Post)
Hi It looks like in the new ladder there is no way to remove unused FB call parameters or update the function block? It's quite often where you have a function block with multiple uses and not all the parameters are required. Need the ability to leave an input/output blank without getting an compile error Expression expected instead of '' Also double clicking on the FB no longer opens the underlying FB code and view what it was doing online. Dragging and dropping a variable does not work, only using the selection works. Will these be available in the V1.0 release or just best to stick to the old ladder until it's available? Thanks
Last updated: 2024-01-28
Post by alexgooi on Update boot project default unchecked
CODESYS Forge
talk
(Post)
Dear Forum, I'm currently switching to Codesys V3.5 SP19. When I want to do an online change, I get the option to update the boot project, in other (codesys based) packages this is checked on by default. In Codesys V3.5 SP19 (and maybe older versions) this is unchecked by default. We are doing a lot of remote updates with systems that almost never power cycle. In other words when this box is forgotten the system will run fine until a blackout. Is it possible to get it checked on by default? This question was asked before, but no answers where given. https://forge.codesys.com/forge/talk/Engineering/thread/ffb4ffa298/ Thank you in advance.
Last updated: 2024-02-09
Post by wmoon on Licensing info not available.
CODESYS Forge
talk
(Post)
Hello, I bought some licenses from CODESYS store. I am trying to install licenses into my device(CODESYS Control for Linux ARM64 SL). But I have a trouble with it. I did it in the following order. Tool -> License Manager Selected Device and Next... Selected Soft container and Next... Select the device and Ok.. And then I always show a message "Licensing info not available. There is no dongle attached to the device." And I tried to click "Install Licenses" button. I saw the message "The value cannot be NULL. Parameter name : continerToLicenses" Could you let me know what I've missed or what I've got wrong?
Last updated: 2024-03-19
Post by struccc on Release SP20 - Changes in behaviour?
CODESYS Forge
talk
(Post)
Dear all, I've just started to migrate some of my ancient projects to SP20. There is one strange error (?) I have noticed so far. In a method call, depending on the circumstances I would like to return reference to an object, or an invalid reference: METHOD Add_EVT_OUT : REFERENCE TO FB_MSG VAR END_VAR IF __ISVALIDREF(refMSG_Entry) THEN Add_EVT_OUT REF= MANAGER.AddMsg_EVT_OUT( refMSG_Entry, _Get_EVT_Message(MSG_EVENT.OUT), _Get_EVT_AddCode(MSG_EVENT.OUT) )^; ELSE Add_EVT_OUT := 0; END_IF So far setting a reference variable to 0, did this. But now, the expression Add_EVT_OUT := 0; gives an error: [ERROR] DB_WTP_370: Add_EVT_ACK MSG_TRIGGER_EXT: C0032: Cannot convert type 'BIT' to type 'REFERENCE TO FB_MSG' Naturally... I can write: Add_EVT_OUT := DWORD#0; But is this the correct way? Is there any constant I could use instead, like "NULL"? Or this is totally wrong and to be avoided?
Last updated: 2024-03-24
Post by tecnocons on Trouble Writing Files to External Paths in CODESYS
CODESYS Forge
talk
(Post)
Hello everyone, I'm encountering an issue in CODESYS regarding writing files to external paths. Despite correctly configuring the placeholder in the CODESYSControl_User.cfg file to allow access to an external folder, CODESYS doesn't seem to write any files, and no errors are reported. The issue on the older versions was absent with no placeholders. I've checked the operating system permissions, and they seem to be in order, but the issue remains. Has anyone faced a similar situation or has any suggestions on how I might resolve this problem? Any help would be greatly appreciated. Thank you in advance for your support. I'm using raspberry PI as a logger. RPI3 Buster Codesys 32bit SL V4.11 Codesys Win64 3.5.20 [SysFile] PlaceholderFilePath.1=/home/pi/scan, $SCAN$
Last updated: 2024-04-09
Post by saugat10 on Cannot install Codesys control Multicore in raspberry pi 4
CODESYS Forge
talk
(Post)
I have raspberry pi 4 with Raspbian 12 (bookworm). I want to install the latest version of codesys control 4.11.0.0 multicore for 32 bit. I cannot install multicore and it only gives me the option to install Standard. Here are some outputs from the pi pi@saugat:/usr $ uname -a Linux saugat 6.6.20+rpt-rpi-v7l #1 SMP Raspbian 1:6.6.20-1+rpt1 (2024-03-07) armv7l GNU/Linux pi@saugat:~ $ cat /etc/os-release PRETTY_NAME="Raspbian GNU/Linux 12 (bookworm)" NAME="Raspbian GNU/Linux" VERSION_ID="12" VERSION="12 (bookworm)" VERSION_CODENAME=bookworm ID=raspbian ID_LIKE=debian HOME_URL="http://www.raspbian.org/" SUPPORT_URL="http://www.raspbian.org/RaspbianForums" BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs" A
Last updated: 2024-04-22
Post by fontrap on cmDongle Raspberry Pi issue
CODESYS Forge
talk
(Post)
Good morning @eschwellinger, After some research I found out that the problem is the preinstalled CodeMeter on Raspberry Pi. As I mentioned the CodeMeter was installed on the Raspberry because I use a license from other vendor that needs the CodeMeter to be installed. The problem is that when I uninstall the CodeMeter from Raspberry I am able to detect the dongle from CODESYS and everything works as it should be but now the other product can not detect its own license. When I reinstall the CodeMeter I am back to the initial problem. Is there a way to overcome this conflict through CODESYS?
Last updated: 2024-04-24
Post by amy123 on Any guides on using Codesys containers in Docker?
CODESYS Forge
talk
(Post)
I had an issue aswell, I was trying to use docker and got stuck on the specific line ' Downloading https://download.microsoft.com/download/9/5/A/95A9616B-7A37-4AF6-BC36-D6EA96C8DAAE/dotNetFx40_Full_x86_x64.exe' within install2.sh - which is actually from the https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks, winetricks_selfupdate(). Would love to know if anyone has a known solution. Only other thing I can think is to download winetricks +.net, update the winetricks to point to the downloaded .net? Granted Im not too savy with Docker so I have been struggling on figuring that part out- would love any suggestions!
Last updated: 2024-05-19
Post by lzml on Safety
CODESYS Forge
talk
(Post)
I have a problem with a project that uses EtherCAT Safety. The project is developed with CODESYS version 3.5.19.20, runtime 3.5.18.30, safety CPU EL6900 4.3.1.0, TCEL6900FBS 3.5.1.10, IODrvEL6900 4.3.1.0, IODrvEtherCAT 4.1.0.0. The safety project works correctly, but when I download the PLC project for modifications, the ESM objects are no longer aligned with the states inside the safety program. Specifically, inside the safety program, they are seen as true, while outside the safety program, the state is reported as false, but not for all ESMs, only some. I have already tried to completely redo the safety from scratch, but nothing has changed. Any solutions? Thanks
Last updated: 2024-05-24
Post by timothyzalusky on Strange Behavior on Raspberry Pi
CODESYS Forge
talk
(Post)
Hello, I am seeing some weird runtime behavior related to the EQ function on a rapsberry pi based system. I have attached a screenshot showing the strange latching I am seeing on the EQ function, and I have not seen this behavior before. I tried freshly restarting the runtime and it has this same behavior. Anyone seen this? I am on 3.5.20 with the latest runtime installed. Basically, as soon as it hits one of those EQ's in the program, it latches effectively locking the output on. Any input from the Codesys team would be appreciated as well as anyone that might know what I am seeing.
Last updated: 2024-06-18
Post by ron-rp on Errors with VisuUserManagement library
CODESYS Forge
talk
(Post)
Hi all, I've played a bit with the VisuUserManagement library, and some other security option in my project, and I started getting this error when logging in - see attached pic. something to do with a specific screen in the library - VUM_Login. Also, Codesys started to ask me to log in to the library when logging in, asking to log in as user of the groups Maintainer or Owner, which I dont know either users (attached pic). when I close the login screen and try to log in to the PLC again, everything works again until I close and open Codesys. I do use user and password to login to the PLC, and this login screen is fine I know the user and pass I setup. anyone know what did I do wrong here and how to fix it?
Last updated: 2024-06-25
Post by imdatatas on Unrecoverable SoftMotion state after switch to PreOp
CODESYS Forge
talk
(Post)
Dear @alimans, Additionally, As far as I know since starting from Softmotion V4.18.0.0 automatic restart behaviour for an axis has been changed for this issue. See below explanation from release notes. "With CODESYS SoftMotion 4.18.0.0, the behavior of SoftMotion axes after a loss of communication to the servo drive has changed. Now, an automatic reinitialization is performed as soon as the communication is established again. Before, an explicit call to SMC3_ReinitDrive had to be performed. An example for a loss of communication is that the cable to one of the drives is unplugged." Regards, imdatatas
Last updated: 2025-10-23
Post by aria13 on Has anyone fed ESP32 sensor data into CODESYS (via MQTT/Modbus)?
CODESYS Forge
talk
(Post)
Has anyone tried sending live sensor data from an ESP32 into a CODESYS runtime (for example via MQTT gateway or a Modbus bridge) to trigger PLC logic? I was reading an ESP32 → MQTT tutorial (https://www.theengineeringprojects.com/2021/11/esp32-mqtt.html) that shows how easy it is to publish sensor data from an ESP32, and I’m wondering how practical that is when tying the stream into industrial control software like CODESYS. I’ve also seen Arduino forum threads where people relay sensor streams to MQTT brokers and Raspberry Pi projects that bridge MQTT→Modbus, so I’m mainly curious about real-world issues: reliability, message latency, and simple patterns you’d recommend for safe PLC integration. Any tips, examples, or gotchas from folks who’ve done this?
Last updated: 2025-10-29
Post by mascara on JOG continues in WCS ( SMC_GroupJog2 )
CODESYS Forge
talk
(Post)
I'm using the SMC_GroupJog2 block from the SM3_Robotics library for manual movement of an AxisGroup in WCS coordinates. The observed behavior is: When pressing X+, the X-axis starts moving correctly. If I press Y+ during the movement, the block interrupts the current movement and starts a new movement in X and Y. If I release any button, all axes stop, even if another button is still pressed. Example: Pressing X+ → X moves Pressing X+ and Y+ → X stops momentarily and starts XY movement Releasing X+ while holding Y+ → all axes stop The expected behavior would be: to allow simultaneous continuous movement on multiple axes to not interrupt movement when another axis is added or removed. Is there a correct configuration of SMC_GroupJog2 to achieve this behavior, or is there another block more suitable for continuous manual jog in AxisGroup (WCS)?
Last updated: 2026-03-11
Post by thierry-b on CODESYS device discovery performance in large networks (/16)
CODESYS Forge
talk
(Post)
Hello, We are using CODESYS 3.5 SP19.70 in an educational environment with several WAGO PFC200 controllers (CODESYS Runtime). Our campus network is currently configured as a /16, which creates a very large broadcast domain. We observe slow device discovery and long scan times when opening the network view. Before restructuring our architecture, we would like to know the recommended network practices for CODESYS: Recommended broadcast domain size for device discovery Possible impact of large networks (/16) on scan performance Usual recommendations (VLANs, /24 segmentation, etc.) Known limitations or points of attention in extended networks Any guidance or official recommendations would be very helpful. Thank you.
Last updated: 2026-03-29
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.