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 abuckie on Getting raw value as full resolution for ADS1115
CODESYS Forge
talk
(Post)
I just found this and I am getting a value larger than 16 bit, around 81000 something. I am reading a 5 volt value and I am using level shifters for the i2c bus. This is how I have the channel configured: ADS1115.usiAddress := 16#48; ADS1115.ChannelConfigs[0].Active := TRUE; ADS1115.ChannelConfigs[0].PGA := FSR_6144mV; ADS1115.ChannelConfigs[0].InputMux := Single_0; RawAnalogValue := ADS1115.Channels[0].Value; It looks like every value is a multiple of 3. Any idea where to look to fix this? I think i found what I want to change in UpdateChannels Channels[FChannelNo].Value := INT_TO_REAL(WORD_TO_INT(LValue) * GetFullScaleRange(ChannelConfigs[FChannelNo].PGA)) / 2048.0; I try to edit it but I can't, sorry if this is a basic question, I am new to CODESYS.
Last updated: 2025-05-22
Post by rockallsue on Frustration-Fueled Feedback on Project File Management and Git Integration
CODESYS Forge
talk
(Post)
Some developers export ST code manually and edit it in VSCode, then copy it back. However, a more practical approach might be using automation scripts (PowerShell, Python) to extract and inject code into the CODESYS project. You could also check if CODESYS Automation Server or CODESYS API allows better ST access for external tools. https://www.codesys.com/the-system/releases-updates-lifecycle/release-plan-roadmap.html Network drive issues are particularly painful. As a mitigation, you could try using local project storage with periodic cloud sync instead of directly saving to a network drive. Using Rsync or Syncthing for automatic but safe synchronization might reduce risks of file corruption.
Last updated: 2025-06-03
Post by kareem-pt on Velocity is too low even though correct value is reported
CODESYS Forge
talk
(Post)
Hello, I'm playing around with a single axis. I've setup scaling and set the drive to move 360 degrees in the commissioning tab. The axis does move 360 degrees, but it moves much slower than the 360 degrees per second that I set for the velocity. It seems to be about 3 times slower (taking about 3 seconds instead of 1). This is despite the set and actual velocity both being displayed as 360. The acceleration, deceleration and jerk are all set to very high values. I'm just running this on my PC, using demo mode (no license purchased yet). I've attached a video showing the problem. Does anyone know what the problem could be? Thanks
Last updated: 2025-06-06
Post by viksym on How to get the motor scaling value from code
CODESYS Forge
talk
(Post)
Is there a way to see what value is set as the "Work travel distance per motor rotation" that is set in the Scaling menu of the axis ? I am working on my own homing function block for sensorless (hardstop) homing and I want to make it be universal between different axes with different motor's scaling for distance per rev so I need to know this value from the axis itself. I know I could do it by just creating an input variable for the function block but I'm leaving that option as a last resort.
Last updated: 2025-06-12
Post by pauloricardoss on Codesys Control Raspberry PI 4.10.0 - missing 'Update Raspberry PI' option
CODESYS Forge
talk
(Post)
I am having the same problem. 'Update Raspberry PI' disappeared from the 'Tools' menu. Using RaspberryPI 3B+, Codesys V3.5 Sp21 + RaspberryPI Package 4.16. I installed the package as Administrator, executed Codesys as Administrator I also tried to connect using the deploy (even with ssh and everything enabled on the RaspberryPi I received password denied). I used in the past the same equipment with Codesys V3.5 Sp18 and RaspberryPI Package 4.08, it was really easy. (I also did a brand new RaspbianOs installation to make sure that nothing affect the connection). Anyone, knows how to fix it? Thanks,
Last updated: 2025-06-13
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 buczekj on About CPU Loading
CODESYS Forge
talk
(Post)
This is a phenomenon that I have seen myself and with others. Texas instruments wrote an application note with this same issue. They noted with Codesys 3.5.19.10, that selecting CPU 1 as the EtherCAT task showed CPU spiking improvements over the performance of cores 0, 2, and 3. It appears to be linked to EtherCAT, are you configuring for use with distributed clocks? If so, I recommend choosing the 'Based on Input Reference' option. I have found it to reduce the CPU usage spike maximum slightly (see attached). See link to TI (also attached in case link breaks) https://www.ti.com/lit/an/spradh0/spradh0.pdf?ts=1723546111357
Last updated: 2025-07-01
Post by andrej on Signing of Boot Application for Raspberry Pi
CODESYS Forge
talk
(Post)
Hello all, I would like to sign my boot application for my Raspberry PI. I generated the X509 Certificate and loaded it to the raspberry. It is successfully displayed as trusted certificate. However, I cannot download and start the Application to the Rasperry, due to a signature mismatch.The error message is rather clear, but I still don’t see how I can fix the issue, since the certificates on the Controller seem to mach the certificate in the user profile. Could you tell me where the error is or which step I am missing. Many thanks and kind regards Andreas
Last updated: 2025-07-17
Post by andrej on Signing of Boot Application for Raspberry Pi
CODESYS Forge
talk
(Post)
Hello all, I would like to sign my boot application for my Raspberry PI. I generated the X509 Certificate and loaded it to the raspberry. It is successfully displayed as trusted certificate. However, I cannot download and start the Application to the Rasperry, due to a signature mismatch.The error message is rather clear, but I still don’t see how I can fix the issue, since the certificates on the Controller seem to mach the certificate in the user profile. Could you tell me where the error is or which step I am missing. Many thanks and kind regards Andreas
Last updated: 2025-07-17
Post by andrej on Signing of Boot Application for Raspberry Pi
CODESYS Forge
talk
(Post)
Hello all, I would like to sign my boot application for my Raspberry PI. I generated the X509 Certificate and loaded it to the raspberry. It is successfully displayed as trusted certificate. However, I cannot download and start the Application to the Rasperry, due to a signature mismatch.The error message is rather clear, but I still don’t see how I can fix the issue, since the certificates on the Controller seem to mach the certificate in the user profile. Could you tell me where the error is or which step I am missing. Many thanks and kind regards Andreas
Last updated: 2025-07-17
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 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 durallymax on Persistent Vars
CODESYS Forge
talk
(Post)
Looking for a better way to manage Persistent Variables. We tend to have local vars in our FBs that need persistence through downloads as the systems are updated/altered on a regular basis. Retain would suffice if we had an easy mechanism to backup and restore like we can with Persistent variables and recipes. Although not having to remember that step with Persistent variables is preferred. We're running into issues with persistent storage capacity (WAGO PFC200) using the Persistent variable list (and adding all instances). It appears there are many ways to handle this, some with recipes, some with files, others with application manager. Is there a solution that exists that is as simple as declaring as Persistent and managing elsewhere? Or do we need to move onto periodically writing CSVs?
Last updated: 2025-09-22
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 ouzago on ERROR C0138: No matching 'FB_Init' method found for instantiation of VisuClientObjectMgr
CODESYS Forge
talk
(Post)
When I created a new project in CODESYS using the "Standard Project" template and then added a Visualization, I was receiving the C0138 error during compilation. This issue persisted even with a new, completely empty project. A Quick and Effective Solution (My Method): After many attempts, I solved the problem as follows: From the File -> New Project menu, I selected the "HMI Project" template directly, instead of the "Standard Project" template. After creating the project with this template, I added my POUs, Tasks, and programs (e.g., Ladder, ST). Using this method, the project compiled successfully without any errors. So, my question is: are there any other solutions besides this method?
Last updated: 2025-10-07
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
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.