Post by hemuv on Dialog Open
CODESYS Forge
talk
(Post)
I'm programming an HMI for a machine. I want to log all the parameter's changes (used text field for displaying and changing) for particular User levels. Created a Numpad and want to log oldvalue and Newvalue on 'ok' Button press. To retrieve the oldvalue, i check if the dialogue opened is my Numpad, Then I retrieve the dialogue interface via GetDialogInterface(ADR(myNumpad)) --> numpadData.stVariableValue which contain my oldvalue and save it locally. Problem is sometimes i retrieve the data and sometimes not. Also observed when Numpad Dialogue is Opened, VisuDlgUtil_IsDialogOpen returns False in some cycles.Attached you will find my Project. please let me know what went wrong or if there is a better approach to collect old and New Value of a textfield. Thank you.
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 timvh on How to manage soft container licenses for (remote) multi units?
CODESYS Forge
talk
(Post)
You need to activate an individual license (ticket number) for each device. THe hardware of each device is unique, so you cannot copy a soft container from one device to another. This license can be installed in a local (wibu - codemeter) soft container, or you could optionally activate it on a hardware (USB) key. The benefit of the key is that you can easily move it to another device, nor does it get lost when you replace parts of the hardware of the device or completely overwrite the image. See: https://store.codesys.com/en/codesys-key.html
Last updated: 2025-04-08
Post by otbeka on CAA File Handling: "Read only" error
CODESYS Forge
talk
(Post)
Hi, sorry for the late reply. After some investigation, the read-only error was being triggered by a FAT-fs filesystem panic on the kernel end, probably caused by unfinished write/reads causing corruption. I found this thread https://forge.codesys.com/forge/talk/Engineering/thread/e637d252b7/ which seems to give a solution of using SysProcess to send the 'sync' command to the console immediately following a write to prevent issues if power is lost or, in my case, if the unit is harshly power cycled. Indeed this seems to resolve the issue bar the worst possible edge cases.
Last updated: 2025-05-02
Post by berebri on TLS Verschlüsselung mit MQTT - Validate CA
CODESYS Forge
talk
(Post)
Sorry - I should have posted this in the German-Froum... Hallo zusammen, ich bin dabei mit MQTT_Client_SL eine verschlüsselte Verbindung zu einem MQTT-Broker (mosquitto) aufzubauen. Das funktioniert auch. Jetzt möchte ich das Zertifikat vom Broker verifizieren, ähnlich wie das auch bei dem Programm "MQTT Explorer" möglich ist (dort funktioniert es). D.h. ich möchte das über das Zertifikat der CA verifizieren, dass ich mit dem Client verbunden bin. Kann mir da jemand Hilfe geben was ich dazu machen muss? Ich vermute mal, dass ich dazu NBS.TLSContext verwenden muss und habe dazu auch einiges gelesen, konnte es aber bei mir nicht ans Laufen bringen. Wie bringe ich dem Client bei, über NBS.TLSContext das richtige CA-Zertifikat für die Verifikation zu verwenden? Kann mir da jemand bitte helfen? Dankeschön :-)
Last updated: 2025-06-16
Post by dkugler on CoDeSys V3.5.19.7 Code erzeugen dauert extrem lange
CODESYS Forge
talk
(Post)
Ich hatte einige Jahre Codesys in einer VM laufen. Das habe ich vor allem wegen den sehr langen Compilierungs- und "Projekt speichern"-Zeiten wieder aufgegeben. Mein Hauptprojekt hat eine Größe von 14MB, erzeugter Code ist bei 20MB und enthält über 50 Visualisierungsseiten. Bei mir dauert das Code erzeugen mit SP20 P4 ca. 1 Minute. Mein Laptop ist ein i7 3.1GHz 16BG RAM und 5-6 Jahre alt, also wahrlich keine Rennmaschine. Ich denke dass die Übersetzungszeit extrem vom Projekt, den notwendigen Bibliotheken, Virenscanner(temporär abschalten, besser? schlechter? gleich?), gleichzeitig laufende Windows-Programme etc. abhängt. Ich schließe generell während dem Programmieren alle anderen nicht absolut notwendigen Anwendungen, um Codesys den Zugriff auf möglichst viel RAM und CPU-Leistung zu ermöglichen. Viel Erfolg bei der Suche nach dem Flaschenhals!
Last updated: 2025-06-17
Post by fkoenig on Codesys Control Win 64 3.5.21.0 KNX unaufgelöste Referenzen
CODESYS Forge
talk
(Post)
Hallo Zusammen, bei meinem Projekt habe ich die CODESYS Control Win 64 3.5.21.0 auf einen Windows 11 Pro PC installiert. Auf meinem Laptop befindet sich die CODESYS Version 3.5.21.10 In meinem Codesys Projekt wurde unter dem Ethernet-Adapter der KNX Stack hinzugefügt. Das Projekt ist beim übersetzen fehlerfrei. Wenn ich das Projekt anschließend auf die CODESYS Control Win 64 aufspiele, kommt bei 98% des downloads die Fehlermeldung 17 unaufgelöste Referenzen... (siehe beigefügter screenshot "Fehlermeldung_unaufgelöste_Referenzen") Im screenshot "Auflistung_unaufgelöste_Referenzen" ist zu sehen, welche KNX Element nicht aufgelöst werden können. Wie kann ich diese Fehlermeldung beheben bzw. was muss ich machen, dass ich das Projekt aufspielen kann?! Für eure antworten bedanke ich mich im Voraus! MFG koeni
Last updated: 2025-06-30
Post by jeroenaero on Targetvisualisation full screen with CmpTargetVisu settings
CODESYS Forge
talk
(Post)
Hi, How can i display targetvisualization in full screen on the target device? I installed Targetvisu For Linux SL 4.16.0.0 on target device which contains Raspberry PI 64bit PIXEL desktop. When i connect my PLC program to the remote targetvisu, the targetvisu displays for 60% horizontally. We contacted CODESYS and they said it is a bug. they had a workaround, and with the settings below added to the file /etc/codesysvisualization/CODESYSVisualizationTV.cfg, the targetvisualization display for 100%, but with the taskbar at the top. VisuClient.BestFit=1 ;VisuClient.ScaleTypeIsotropic=0 VisuClient.FillWholeBackground=1 [CmpTargetVisu] WindowPositionX=0 WindowPositionY=0 WindowSizeWidth=1280 WindowSizeHeight=800 WindowType=2 How can we let it display fullscreen without taskbar?
Last updated: 2025-07-24
Post by timvh on control loop library IIR filter
CODESYS Forge
talk
(Post)
In the Control Loop Library package are multiple example projects, including one for the filters. Program containing: GVL.filterIIR( xEnable:= GVL.xEnableFilter, lrValue:= GVL.lrYOriginal, lrFilteredValue=> GVL.lrOutputIIR); GVL.filterFIR( xEnable:= GVL.xEnableFilter, lrValue:= GVL.lrYOriginal, lrFilteredValue=> GVL.lrOutputFIR); GVL.filterSOS( xEnable:= GVL.xEnableFilter, lrValue:= GVL.lrYOriginal, lrFilteredValue=> GVL.lrOutputSOS); GVL containing aCoefficientsA_IIR : ARRAY[0.. 4] OF LREAL := [1,-2.3695130071820376,2.31398841441588,-1.0546654058785676,0.18737949236818494]; aCoefficientsB_IIR : ARRAY[0.. 4] OF LREAL := [0.0048243433577162282,0.019297373430864913,0.028946060146297369,0.019297373430864913,0.0048243433577162282]; filterIIR : Ctrl.Filter_IIR := (palrCoefficientsA:= ADR(GVL.aCoefficientsA_IIR), udiSizeCoefficientsA:= SIZEOF(GVL.aCoefficientsA_IIR), palrCoefficientsB:= ADR(GVL.aCoefficientsB_IIR), udiSizeCoefficientsB:= SIZEOF(GVL.aCoefficientsB_IIR)); aCoefficientsB_FIR : ARRAY[0.. 5] OF LREAL := [0.01982722552692669,0.1325131219866022,0.34765965248647102,0.34765965248647107,0.13251312198660226,0.019827225526926694]; filterFIR : Ctrl.Filter_FIR := (palrCoefficientsB:= ADR(GVL.aCoefficientsB_FIR), udiSizeCoefficientsB:= SIZEOF(GVL.aCoefficientsB_FIR)); aCoefficientMatrix_SOS : ARRAY[0.. 1] OF Ctrl.FilterCoefficients_SOS := [(b0:= 1, b1:= 2, b2:= 1, a0:= 1, a1:= -1.048599576362609, a2:= 0.2961403575616683), (b0:= 1, b1:= 2, b2:= 1, a0:= 1, a1:= -1.320913430819428, a2:= 0.6327387928852787)]; lrG : LREAL := 0.004824343357716228; filterSOS : Ctrl.Filter_SOS := (paCoefficientMatrix:= ADR(GVL.aCoefficientMatrix_SOS), udiSizeCoefficientMatrix:= SIZEOF(GVL.aCoefficientMatrix_SOS), lrGain:= GVL.lrG); lrX : LREAL; lrYOriginal : LREAL; lrOutputFIR : LREAL; lrOutputIIR : LREAL; lrOutputSOS : LREAL; xEnableFilter : BOOL := TRUE;
Last updated: 2025-08-01
Post by micik on Changed Device of Rapberry Pi to MC SL instead of standard SL and cannot connect anymore
CODESYS Forge
talk
(Post)
I have a test application and use Codesys Control for Rasp Pi SL. I made a mistake and updated device from MSL to MC SL, and now if I try to go online with archived version of the project I gett error message that IDs are different between project device and target device. Of course, I can go online if I changed device in the project from SL to MC SL, but I'm not sure that is correct. So I have two questions: 1. What is the actual difference between MC SL device and standard SL device when it comes to raspberry pi 4? 2. What change I need to do on raspberry pi4 side to change device back from MC SL to SL? Thank you!
Last updated: 2025-08-05
Post by jzhvymetal77 on IecVarAccessLibrary.IBaseTreeNode methon
CODESYS Forge
talk
(Post)
I got this code working again. 3S/CoDeSys, your level of obfuscation and lack of documentation turns a simple task into a monumental complex challenge. The issue was that at some point the IecVarAccessLibrary changed and no longer allowed using IBaseTreeNode to retrieve a child or the number of children. The attached code has been updated to use IIecVarAccess6.VarAccBrowseGetChildByIndex instead. The code was also cleaned up but is still a work in progress. The current example only works one layer deep. This means native data types, arrays, and single-layer structures are supported. However, structure arrays and nested structures are not yet supported.
Last updated: 2025-08-25
Post by alexgooi on Codesys virtual control redundancy
CODESYS Forge
talk
(Post)
Dear Forum, I’m currently investigating the possibilities of Codesys virtual control (Linux). The research rig consists of a PC (Debian with real time kernel) with a docker server installed on it. The PC is communicating with a Remote I/O and I have to say the performance is great. The process in the container is running (soft) real time. Currently I’m checking if it is possible to replace physical controllers by remote I/O’s and run the Codesys applications on a docker server. If I’m going into this route the reliability of the server is very important (server down, complete installation down), is it possible to make the server redundant without needing 2 separate containers (including licenses), and maintaining the real time behavior? I’m not only expecting direct answers, if you have any idea or thought they are very welcome. Kind regards Alex
Last updated: 2025-09-03
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 dkugler on Project loses 'Download time' information
CODESYS Forge
talk
(Post)
and if you copy or transfer a project to another place, copy not only the .project, copy .compileinfo .bootinfo and .bootinfo_guids then we figured out it is more often possible to go online without full download. If you build an archiv and extract it, some of this files are missing and login isn't possible without download. I work with V3.5 SP16 Patch 4. I don't know if this problem of the archiv is solved in newer Versions/SP's and I don't know what the problem of Codesys is to help out a lot of programers of this very annoying problem or at least help with a workaround
Last updated: 2025-09-18
Post by reinholdgaylord on CAA File Handling: "Read only" error
CODESYS Forge
talk
(Post)
Hi, sorry for the late reply. After some investigation, the read-only error was being triggered by a FAT-fs filesystem panic on the kernel end, probably caused by unfinished write/reads causing corruption. I found this thread https://forge.codesys.com/forge/talk/Engineering/thread/e637d252b7/geometry dash lite which seems to give a solution of using SysProcess to send the 'sync' command to the console immediately following a write to prevent issues if power is lost or, in my case, if the unit is harshly power cycled. Indeed this seems to resolve the issue bar the worst possible edge cases. Thank you so much!
Last updated: 2025-09-25
Post by monteta on Automation without UI
CODESYS Forge
talk
(Post)
Hello all, there is my problem. i have a project on a PC A who work properly, I aim to take this project and place it on a Pc B with a blank Codesys installed. All seemd to work, the project is created on the PC B, i create my with with online.create_online_application(project.project.active_application) recover my onlineDevice and try onlinedevice.connect() so that i can use create_live_user_management() but then a problem occure on my connect() saying gateway not configured properly. I have setted my set_credentials_for_initial_user(). when i use the Ui, there is absolutely no problem. an other question, is it possible to use the Start and Stop PLC of codesys Control Systray directly in my python script? So that if it detect that it's stopped, then he automatically start it?
Last updated: 2025-09-25
Post by alexgooi on Licensing info not available.
CODESYS Forge
talk
(Post)
Thank you for your quick response, I have updated to the 4.17.0 (Virtual control and the license server). Now I am able to see the softcontainer from the Codesys IDE. But when I want to activate the license I get the following message: Licensing info not available. The device does not support this service (See picture). I then tried to active it via the WBM service like you suggested. But when I try this is get an error (see picture for error). I also tried to put RTS- in front of the serial number, but when I try this I get an error that the serial number is not correct. I think I'm getting closer, but I'm not there yet.
Last updated: 2025-10-01
Post by alexgooi on Licensing info not available.
CODESYS Forge
talk
(Post)
Thank you for the response, The empty softcontainer does not become visible unfortunately, but I think I can get that back to working. I think I'm misunderstanding something. You are pointing to the Softcontainer number and the ticket code, I thought that I needed to fill in the virtual control containers serial code is this a misunderstanding? And if this is indeed the case, how is the link between the server (softcontainer) and the Codesys control docker container made? If I have multiple Codesys docker containers running on the same docker server, how is the correct license distributed to the correct Codesys runtime container?
Last updated: 2025-10-02
Post by ton on How to create a stopwatch?
CODESYS Forge
talk
(Post)
One i wrote this to measure elepse time When xMeasure is true is starts en when false it stops and time is messured. FUNCTION_BLOCK FB_ElapseTime VAR_INPUT xMeasure: BOOL; END_VAR VAR_OUTPUT xRisingEdge: BOOL; xFallingEdge: BOOL; tElapsed: TIME; ltElapsed: LTIME; ltPrev_Elapsed: LTIME; ltElapsedMax: LTIME; END_VAR VAR xLastValue: BOOL; LTIMEStart: LTIME; LTIMEEnd: LTIME; tonReset: TON:= (IN:= TRUE, PT:= TIME#30S0MS); END_VAR ------------------------------------------- xRisingEdge:= (xLastValue XOR xMeasure) AND xMeasure; xFallingEdge:= (xLastValue XOR xMeasure) AND NOT xMeasure; IF xRisingEdge THEN ltPrev_Elapsed:= ltElapsed; LTIMEStart:= LTIME(); END_IF IF xMeasure OR xFallingEdge THEN LTIMEEnd:= LTIME(); END_IF ltElapsed:= LTIMEEnd - LTIMEStart; ltElapsedMax:= MAX(ltElapsedMax, ltElapsed); tElapsed:= LTIME_TO_TIME(ltElapsed); xLastValue:= xMeasure; tonReset(); IF tonReset.Q THEN tonReset.IN:= FALSE; ltElapsedMax:= LTIME#0NS; END_IF Meaby this will help.
Last updated: 2023-12-09
Post by preimesbergert on Raspberry Pi 4 B HW 1.5 Codesys control 4.10.0 stopps after a few seconds
CODESYS Forge
talk
(Post)
Wanted to play a bit with a raspberry Pi 4 Model B HW 1.5 and Codesys. Regardless of the image (tried 32bit / 64bit version from Raspberry Pi Imager) and with all tested Codesys Control versions (4.2.0, 4.8.0, 4.10.0) and regardless if single core / multicore / 64 bit variant, always is the runtime stopped after about 30sec with the nice message: ooops... this runtime was built for RASPBERRYPI. Hardware version or firmware version not supported! (-7, 0x00000BB8, 0xFFFFFFFB) Whats wrong with it?!?!? I read a lot about the issue in topics from 2020-2021 but it always was stated with new Codesys control version issue will be fixed (4.4 for example) but still it is there.
Last updated: 2023-12-21
Post by preimesbergert on Raspberry Pi 4 B HW 1.5 Codesys control 4.10.0 stopps after a few seconds
CODESYS Forge
talk
(Post)
Wanted to play a bit with a raspberry Pi 4 Model B HW 1.5 and Codesys. Regardless of the image (tried 32bit / 64bit version from Raspberry Pi Imager) and with all tested Codesys Control versions (4.2.0, 4.8.0, 4.10.0) and regardless if single core / multicore / 64 bit variant, always is the runtime stopped after about 30sec with the nice message: ooops... this runtime was built for RASPBERRYPI. Hardware version or firmware version not supported! (-7, 0x00000BB8, 0xFFFFFFFB) Whats wrong with it?!?!? I read a lot about the issue in topics from 2020-2021 but it always was stated with new Codesys control version issue will be fixed (4.4 for example) but still it is there.
Last updated: 2023-12-21
Post by sean-barton on Function block method default arguments
CODESYS Forge
talk
(Post)
I have default arguments specified for function block methods but when calling a method, an error is produced requiring me to supply all the arguments despite there being default values. According to the online documentation, under section "Calling a Method" and subsection "argument passing" of the following link: https://content.helpme-codesys.com/en/CODESYS%20Development%20System/_cds_obj_method.html "Passing an argument for an input ... can be omitted ... for which a default or initial value was specified in the declaration..." I have found this to be the case for all Codesys IDEs I've used, 3.5.11, 3.5.16, 3.5.17, 3.5.19. Am I missing something?
Last updated: 2023-12-21
Post by sebastian-hk on Codesys auf einen Cortex M4 lauffähig machen
CODESYS Forge
talk
(Post)
Hallo, wir spielen mit dem Gedanken, Codesys auf einen AT SAM E54 Xplained Pro lauffähig zu machen. dieser besitzt einen Atmel ATSAME54P20A mit einem Cortex M4. Meine Fragen hierbei: Was muss portiert werden, wenn die Zielhardware momentan noch nicht unterstützt wird? Gibt es ggf. Anleitungen, um die Laufzeit auf solch einen Controller zu bringen? Muss hierbei ein eigener Interpreter entwickelt werden, der den compilierten Code "übersetzt"? Wie lauffähig ist der rübergespielte Code, gibt es irgendwelche Einschränkungen bei der Programmierung in Codesys? (Verwendung von bestimmten Datentypen nicht möglich?) Was für Lizenzen werden für den Controller benötigt? Vielen Dank im Voraus Sebastian
Last updated: 2024-01-03
Post by toby on Ethercat Servo Setup
CODESYS Forge
talk
(Post)
Hi everyone, so a little update to this, I've come back to this project in the new year, and got it working. Yeah!, However, now with the new licensing setup, I need a new SoftMotion license, but it doesn't seem to be compatible with the previous Raspberry Pi SL license. Has anyone had any luck with Raspberry Pi and SoftMotion_Lite? Specifically the licensing of such? My customers new installation needs to be rebooted every 30min which is causing headaches! Another option is to not use the SoftMotion function blocks, and control the EtherCat amplifier directly, but I'm not sure how to do so. Does anyone have a specific example project of how to control a servo without the use of the SoftMotion function blocks? Thanks everyone for any assistance rendered. It's very much appreciated! Toby
Last updated: 2024-01-10
Post by riccardo on Error while processing the visualization: Client id not present or no longer valid
CODESYS Forge
talk
(Post)
Hallo goodmorning, I am using codesys 3.5 sp19 with Weidmueller PLC. I created a page with several checkbox to manage an array of bool. When I build the project the system doesn't signal any error, when I go in simulation mode everything works until I click on checkbox to toggle the variables. Other visu elements works proprerly (e.g. bottons, lights, ect, ect) but the check boxes cause a crash giving the following error: Error while processing the visualization: Client id not present or no longer valid I serched to figure the problem out and to search a solution on the web but nothing. Can someone help? Thanks and Regards, Scanu
Last updated: 2024-01-23
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.