Post by dagsupport on CAA SerialCOM - hCom Reset max value 1023
CODESYS Forge
talk
(Post)
Hi everybody We are currently working on a project with an RS232 serial COM interface and using the CAA SerialCOM library. We have it working fine reading and writing data, although we have found an issue we cannot resolve and any suggestions would be helpful. We have noticed that after a while the RS232 stops working. We have tracked this down to the HANDLE hCom keeps increasing and when this reaches 1023 the COM returns an unknown error "5003". Is there a way to reset this hCom reference? Thanks Richard
Last updated: 2024-03-22
Post by remcoborghuis on C0032 Error to type Pointer to IoConfigParameter
CODESYS Forge
talk
(Post)
Hi All, I'm using codesys on a raspberry PI. I use V3.5 SP18 Patch 2 development system and codesys for raspberry pi 4.8.0.0. Sometimes when I build the project I get error messages C0007: Expression expected instead of ',' and C0032: Cannot convert type 'Unknow type: '!!!'ERROR'!!!" to type 'POINTER TO IoConfigParameter'. I can't click on the message to bring me to the fault. After I do a "Clean all" the build finishes successful. Anyone who can help me with this problem? Thanks! Remco Borghuis
Last updated: 2024-03-25
Post by carohe on VisuNamespace != null
CODESYS Forge
talk
(Post)
Hello, this error occured frequently over the past couple of weeks. I found out, when adding a webvisu, CODESYS added Visu libraries in the library manager. One of the libraries was the "VisuElemsAlarm" library. In my case it added this one with the version 4.3.0.0. However another library that also contained the "VisuElemsAlarm", used the "VisuElemsAlarm" with the version "4.4.0.0". After changing the Version "4.4.0.0" and uninstalling this version, the error has not occured anymore. Regards, carohe
Last updated: 2024-04-02
Post by installwhat on raspistepper error after install
CODESYS Forge
talk
(Post)
I've had issues getting the raspistepper installed, all due to errors upon installation. The closest I get is the pictured error. The functions are in the sm3_shared library. I can add this library but that leaves 2 issues. I don't actually know, and I really want to understand this, why the required dependencies haven't been installed correctly. If I add the library it's only available with through the namespace. What can I do to both understand and resolve this? Thanks edit codesys 64 3.5.20.0 - same error on other versions too sm3 raspi stepper 0.0.0.5
Last updated: 2024-04-20
Post by dkugler on Alarm State Icon
CODESYS Forge
talk
(Post)
thank you for pointing me to this "bug"!! I haven't recognized, the bit is reset after the first alarm is gone. I use this only for warnings, so it's not a drama, but was not correct in the past. I solved it now simply stupid by counting up a variable every time an alarm appears and decreasing it if an alarm is gone. The "warning lamp" is activated by checking the counter is > 0 The nice side effect, i'm able to show the number of active alarms in the state line now.
Last updated: 2024-04-24
Post by yongchaow on Can't connect to Device Raspberry Pi 4 from CODESYS IDE V3.5 SP19
CODESYS Forge
talk
(Post)
Hi, eschwellinger, I have the same problem, but I can not resolve the problem following this forum. There are my situation: pi@RevPiXXXX:~ $ uname -a Linux RevPiXXXX 5.10.120-rt70-v7l #1 SMP PREEMPT_RT Thu, 28 Jul 2022 10:36:48 +0200 armv7l GNU/Linux After "top": It looks like runtime is not running. One more piece of information to refer to, when I reboot the device it is possible to scan the device. Looking forward your reply.
Last updated: 2024-04-25
Post by yannick on Raspberry PI 5 not working
CODESYS Forge
talk
(Post)
Hello I'm using Codesys V3.5 SP19 Patch 6 and a Raspberry PI 5 4GB Bookworm 32bit with the Runtime 4.11.0.0 SL. I can install the runtime and download the software completly but after a few seconds the connection disconnects with the message no connection to device. Please scan network again. And the object reference was not set to an object instance. See screenshot. Can somebody help me with that? Thanks
Last updated: 2024-04-28
Post by richard-wang on Codesys recipe manager - what does it do?
CODESYS Forge
talk
(Post)
Hi All Thanks for sharing this information. For whom may not know why always get error code 16#4000 or 16#4002 while performing Recipe commands, the root cause is There is a line need to be inserted in CODESYSControl.cfg file, which is PlaceholderFilePath.1=/var/opt/codesys/PlcLogic/ I am using Pi, therefore the above path is set to my pi unit, after adding above line to my cfg file, all the Recipe commands work fine. But I still do not know how and when this file got modified though.
Last updated: 2024-04-29
Post by tomas111 on OPC UA Client API
CODESYS Forge
talk
(Post)
I ran into a problem. Uploaded an example (https://content.helpme-codesys.com/en/CODESYS%20Examples/_ex_uacapi_example.html) After launch. on the emulator. I see that I am having problems: - UaExpert does not connect. There are many servers but no connection. - I can’t transfer the certificate from quarantine to trusted ones. There is some problem with creating the certificate. CS 19.2. If anyone has had similar problems, please give me advice. Thank you.
Last updated: 2024-05-20
Post by plunje on Sensor not set
CODESYS Forge
talk
(Post)
A got a larger project but this very small example makes it clear. I have a button, and after it's clicked a lamp should flip on and stays on, and when the mouse-button is released it should stay on. When I try that in the PLC_PRG it works, but when I change it to a function block (seet attched demo proj) it isn't. I'm fairly new to PLC programming but are very experienced C# engineer, but this goes above my head...
Last updated: 2024-05-26
Post by installwhat on C0077 on one machine but not another
CODESYS Forge
talk
(Post)
https://forge.codesys.com/forge/talk/Engineering/thread/92c913bf7c/ Solved by changing the ethercat master version after reading the thread linked above. I think I need to read up on why this happened. I understand that placeholders should point to a particular version for obvious reasons however what has occurred in this instance is different. The example project was released as a "project archive" but it seems to load differently based on what I've got installed in my repositories. I'm going to dig into that tomorrow but any advice is welcome.
Last updated: 2024-06-11
Post by kenth1973 on MC_Phasing state explenation
CODESYS Forge
talk
(Post)
My MC_Phasing FB was stuck in iPhasingState=1 and error output HIGH on one axis. I could manually overwrite the state to 0 in the instance data. During normal run I see the state change from 0 to 10 to 100 back to 0 (maybe more states that I couldnt catch with the naked eye) But - what are the states numbers and their different explenations? This is not explained in the FB guide on codesys. (the pictures show state = 0 after I reset)
Last updated: 2025-11-22
Post by antonz on OSCAT Scale_r function not working in LD 4.60 works in LAD2 on 3.5.21sp3
CODESYS Forge
talk
(Post)
That's what I found as well Shaun. I have seen it at least in versions 3.5.21.1 and 3.5.21.3. There seems to be an issue with the FBD/LD package v4.6.0.0. The workaround proposed by Tim works but needs to be done manually on every code change/addition. For now we manually downgrade the FBD/LD package from v4.6.0.0 down to v4.5.0.0 after installation of CoDeSys. Same as you did. I hope this gets fixed on a next patch.
Last updated: 2025-11-21
Post by gseidel on Scara3 kinematic robot error
CODESYS Forge
talk
(Post)
Hi aniket-b, the maximum cycle time of the EtherCAT_Task is very high, ca. 35 ms. Could you please check if this is just the first cycle after starting the application or if it happens during motion? (You can reset the times in the task configuration by right-clicking in the "monitoring" tab.) Another thing to try: put the SoftMotion_Planning task on a different core. Best regards, Georg
Last updated: 2026-01-07
Post by winki on Error in licence activation
CODESYS Forge
talk
(Post)
Hello, Despite receiving an activation message after entering the license number, I don’t have any license installed on my gateway. I went to check in /var/opt/codesys/ and there is no License file. I searched the entire gateway for a .lic file and found no license. I’m really stuck—how can I fix this, please? When I am using the licence tools I got this picture: But nothing that have been activated. Loic,
Last updated: 2026-02-03
Post by winki on Error in licence activation
CODESYS Forge
talk
(Post)
Hello, Despite receiving an activation message after entering the license number, I don’t have any license installed on my gateway. I went to check in /var/opt/codesys/ and there is no License file. I searched the entire gateway for a .lic file and found no license. I’m really stuck—how can I fix this, please? When I am using the licence tools I got this picture: But nothing that have been activated. Loic,
Last updated: 2026-02-03
Post by alexgooi on Modbus TCP interface get stuck
CODESYS Forge
talk
(Post)
Dear Forum, I'm currently experimenting with Modbus interfaces in combination with a virtual controller. I have the following setup (Modbus_Setup.png): I have an IPC with Debian installed on it (Debian 13). On this Debian machine I have installed a docker server and on this docker server a Codesys runtime container is deployed (Codesys_image.png). The Modbus scanner makes connection with and IO coupler and this works well. But when I physically disconnect the ethernet connection between the IPC and the IO coupler the Modbus interface gets stuck in a state where it gets stuck in the busy state (Modbus_Stuck.png). When I plug the cable back in, the IO coupler isn't communicating until the xBusy variable is manually set to False, after this action is performed the communication goes back to normal. I have tried to set the container network to host and bridge (Network.png), but both version gives the same result (stuck scanner). I would expect that the Modbus interface is generating a timeout after 1 sec, because this is how it is setup (Modbus_settings.png), but this is not what happens. I have thought to write a piece of code that writes xBusy to false when it is stuck but because it is an output I'm not able to write to it. I have tried this with another PC (different CPU/motherboard) but this gives the same outcome. I tried updating to the latest version of Virtual control (4.20) but this gives the same result. I also tried to do the same thing with an ethernet IP scanner, and this gives an error after the timeout is expired (so this works well). I have tried to connect to the IO coupler using the Modbus_FB lib (Modbus_FB.png) the FB's are giving the correct errors and behaving as expected. At last I have tried to use a Scanner on a Codesys controller (no IPC) and here the scanner behaves as expected (an alarm is triggered after the timeout has been expired). The version of the Codesys components are listed in the picture Versions.png Is there anyone that can give me a push in the right direction? Kind regards Alex
Last updated: 2026-04-14
Post by ryusoup on JSONByteArrayWriter problem?
CODESYS Forge
talk
(Post)
Hello, I am trying to implement a FB to make JSON formatted WSTRING type message using JSON Utilities 1.9.0.0 included in the IIoT library. In my case, I want to set some objects or arrays and set values to them later. But when I wrote as the sample below, // init builder builder(pJsonData:=pJsonData, diRootObj=>diRootObj); // set the 1st key to root diKey1 := builder.SetKeyWithArray(wsKey:="key1", diParentIndex:=diRootObj, eError=>eError); // set a value to the 1st key wsValue:="value01"; builder.SetValue(Value:=wsValue, diParentIndex:=diKey1, eError=>eError); // set the 2nd key to root diKey2 := builder.SetKeyWithArray(wsKey:="key2", diParentIndex:=diRootObj, eError=>eError); // set a value to the 2nd key wsValue:="value02"; builder.SetValue(Value:=wsValue, diParentIndex:=diKey2, eError=>eError); // set a value to the 1st key again wsValue:="value03"; builder.SetValue(Value:=wsValue, diParentIndex:=diKey1, eError=>eError); // set a value to the 2nd key again wsValue:="value04"; builder.SetValue(Value:=wsValue, diParentIndex:=diKey2, eError=>eError); // write build result writer(xExecute:=TRUE, pwData:=ADR(wsResult), udiSize:=SIZEOF(wsResult), xAsyncMode:=FALSE, jsonData:=pJsonData^); the result was: { "key1": ["value01"], "key2": ["value02", "value03", "value04"] } while my expection was: { "key1": ["value01", "value03"], "key2": ["value02", "value04"] } Inspecting pJsonData^, JSONData itself seems to be ok, so I believe the issue is something caused by the writer FB. Does anyone know how to fix it? Thanks,
Last updated: 2023-10-04
Post by biiebs on Aufbau von Ablaufsteuerungen ermitteln
CODESYS Forge
talk
(Post)
Hallo Zusammen, gibt es in CODESYS bei Ablaufsteuerungen weitere Möglichkeiten außer den AS-Einstellungen z.B. die Aufbaustruktur der Ablaufsteuerung herauszufinden? Gesamtanzahl der verwendeten Aktionen / Schritte - Im besten Fall auch die einzelnen Verzweigungen? Ich würde den gesamten Aufbau der Schrittkette gerne als "View" in einer übergeordneten Software abbilden lassen, da sich die Ablaufsteuerungen, je nach Projekt im Aufbau unterscheiden bräuchte ich die Kenntniss über den Aufbau dieser Schrittketten. Oder müsste ich mir hier einen "Workaround" programmieren, der z.B. bei Init erstmal den Aufbau der Ablaufsteuerung durchläuft und mir die nötigen Informationen liefert? Natürlich wäre auch ein Weg den Aufbau des AS-Bausteins über die PLCopen XML zu exportieren, jedoch müsste dies bei Änderungen jeweils nachgezogen werden - was etwas unschön wäre, falls dies vergessen würde. Mittlerweile habe ich auch das Tool "SFC Visu Generator" gefunden, dessen Funktion im Prinzip genau das darstellt, was ich benötige - jedoch leider nur als CODESYS interne Visualisierung. Ich würde den Export des Bausteins gerne in meine übergeordnete Software implementieren. Gibt es hier die Möglichkeit das Vorgehen zu Erfahren oder den vom Baustein generierten Export bei mir zu implementieren? Hat hier jemand sowas ähnliches schonmal gelöst? Vielen Dank im Voraus Mit freundlichen Grüßen Biiebs
Last updated: 2024-07-25
Post by blitz on Can't get SMC_SmoothPath to work
CODESYS Forge
talk
(Post)
This code works well: PROGRAM PLC_PRG VAR execute : BOOL; abort : BOOL; doMDI : BOOL; manualDataInput : STRING(1024) := 'N5 G01 X0.00 Y200.00 N6 G01 X200.00 Y200.00 N7 G01 X200.00 Y0.00 N8 G01 X0.00 Y0.00'; stringStreamArray: ARRAY[0..NUMBER_OF_CHAINS-1] OF SMC_StringStream2 ; i : UDINT; readNCFromStream : SMC_ReadNCFromStream; sentencesFromStringSteam : SMC_GSentenceQueue ; interpreter : SMC_NCInterpreter; interpreterGeoInfoBuffer: ARRAY[1..GEO_INFO_BUFFERS_SIZE] OF SMC_GeoInfo; roundPath : SMC_RoundPath; roundPathGeoInfoBuffer: ARRAY[1..GEO_INFO_BUFFERS_SIZE] OF SMC_GeoInfo; END_VAR VAR CONSTANT MDI_FILE_NAME : STRING := 'MDI.nc'; NUMBER_OF_CHAINS : UDINT := 15; GEO_INFO_BUFFERS_SIZE : DINT := 500; END_VAR readNCFromStream.bExecute := interpreter.bExecute := roundPath.bExecute := execute; readNCFromStream.bAbort := interpreter.bAbort := roundPath.bAbort := abort; IF doMDI THEN stringStreamArray[0].Init(MDI_FILE_NAME); stringStreamArray[0].AppendData(manualDataInput); stringStreamArray[0].SetEndOfData(); i := 0 ; WHILE i < NUMBER_OF_CHAINS DO readNCFromStream.aStream[i] := stringStreamArray[i]; i := i + 1 ; END_WHILE readNCFromStream.bExecute := TRUE; IF readNCFromStream.bBusy THEN ; END_IF END_IF readNCFromStream( fDefaultVel := 10, fDefaultAccel := 10, fDefaultDecel := 10, fDefaultVelFF := 10, fDefaultAccelFF := 10, fDefaultDecelFF := 10, sentences := sentencesFromStringSteam ); interpreter( sentences:= sentencesFromStringSteam, nSizeOutQueue:= SIZEOF(interpreterGeoInfoBuffer), pbyBufferOutQueue:= ADR(interpreterGeoInfoBuffer)); roundPath( poqDataIn := interpreter.poqDataOut, dRadius := , dAngleTol := , nSizeOutQueue := SIZEOF(roundPathGeoInfoBuffer), pbyBufferOutQueue := ADR(roundPathGeoInfoBuffer));
Last updated: 2026-01-09
Post by adamrobotic on llcallback() iec exception caught cmpid=0x00000002, eventid=0x00010008
CODESYS Forge
talk
(Post)
Hi All, Recently I have been experiencing a issue in CodeSys SP16 Patch 3, with a exception which comes up after I have made several online changes. callcallback() iec exception caught cmpid=0x00000002, eventid=0x00010008, after I experience this fault then I receive a error message for any subsequent online change "online change failed, no task gap within 10000ms". To recover either the controller needs a orgin reset, which will allow online edits thereafter until falling back into the loop. I am using a TURCK TX707 product which is controlling robot trajectory, We have hard coded the coordinate data rather than using persistence variables so hence the need to do online changes consistently. I have read on the forum other people have experienced similar issue with the online task gap, but I have no task which have same priority and also monitored the CPU usage and have not seen it go above 13%. Anyones help would be much appreciated, thankyou.
Last updated: 2023-08-18
Post by rossanoparis on After un upgrade of "CODESYS Control for Raspberry Pi MC SL" from v4.7 to v4.9 SysFileOpen function stopped working
CODESYS Forge
talk
(Post)
Hello at all. After un upgrade of "CODESYS Control for Raspberry Pi MC SL" from v4.7 to v4.9 SysFileOpen function stopped working. I'm not able to read or write files from the PLC application. Before this upgrade all worked fine. I've read this thread [ https://forge.codesys.com/forge/talk/Engineering/thread/3da9ded84e/ ] Despite I followed that indications I couldn't get my code working again. Perhaps I'm missing something or I didn't understand how to use placeholders at all. Is there a different syntax to use for "SysFileOpen" in order to use placeholders? Thanks in advance for your help. Information Compiler: CODESYS V3.5 SP19 Patch 2 Runtime: codesyscontrol 4.9.0 HW: KUNBUS RevPi Connect S Below the paths I want to access (The entire CODESYSControl_User.cfg file is attached) [SysFile] PlaceholderFilePath.1=/home/pi/hpca/bin, $hpcabin$ PlaceholderFilePath.2=/home/pi/hpca/cfg, $hpcacfg$ PlaceholderFilePath.3=/home/pi/hpca/logs, $hpcalogs$ PlaceholderFilePath.4=/home/pi/hpca/resources, $hpcares$
Last updated: 2023-08-22
Post by ofey on Codesys Soft PLC OPC UA server
CODESYS Forge
talk
(Post)
Hi! I'm sorry if this has been asked before. I have tried looking up previous topics regaring this, but even though I'm following tutorials and other posts I cant seem to get this to work consistently. I actually got the connection established on a test project after some trial and error. I only got it to work with the "Anonymous login". But after i deleted the test project and tried to get the same thing to work on another project I cant get it to work anymore. What I'm trying to do: Set up and OPC UA Server using CODESYS with the free soft PLC. I then try to connect to the OPC UA Server with the program "UaExpert". What happens: I get the error Error "'BadUserAccessDenied' was returned during ActivateSession". What I have done in CODESYS: - Added the object "Symbol configuration" and checked some test variables - Checked "Support OPC UA features - In "Communication settings -> device -> Change runtime security policy" I have checked "Allow anonymous login" What I have done in UAExpert: - Found the OPC UA server under "local". (It is showing two servers though, I do not know why. It showed the same when it worked yesterday). Se attachment - Checked "Anonymous" under "Authentication settings in the OPC UA server. I'm new to CODESYS, so it could be something elementary wrong in my settings. Maybe something in the user settings in CODESYS regarding user rights or something?
Last updated: 2023-09-14
Post by manuknecht on Persistence Manager does not save alphabetically first value
CODESYS Forge
talk
(Post)
I have several libraries which contain values that should be saved on a PLC. As apparently no Persistent Variable List is available within Libraries, I use the Persistence Manager to create a Persistence Channel in the Project which imports the library. I then specify the persistence channel in the library using the {attribute 'ac_persist':='PersistenceChannel_CT'} specifier. This generally works very well and gives me exactly the properties I require. However, it came to my attention that the (alphabetially) first value from the library is not saved in the created ASCII file. When checking the content of the Persistence Channel, it shows all the variables as defined in the library. But the created file does not contain the first value and it is not restored after restart or reset. (see attached picture) I disabled Periodic Saving and set xSaveOnChange to TRUE and so the file usually updates immediately after changing one of the values. When changing the first value, it does not update which is consistent with this value not being saved. I also created a sample project and library from scratch which shows the same issue both using a Raspberry Pi and using a Linux machine. Does someone know what the reason for this could be or did someone make similar experiences? Looking forward to hearing your suggestions. Thanks in advance and best wishes Manuel
Last updated: 2023-10-17
Post by vassilis91 on EtherCat-Rexroth Drive lost connection or no?
CODESYS Forge
talk
(Post)
Hi all, i am encounter a mystery problem with a build with rexroth drives at my work. At my company we are make a machine with two Rexroth Indradrives . The two drives are goes by ethercat protocol . To be more specific i am going from my plc to the Beckoff El1100 coupler and after to the first drive and from the first drive to the second. The second drive works with no problem but the first(motor) sometimes without any pattern start to make a mysterious noise like stop and suddenly goes on again. If i couldn't hear the noise from the motor i couldn't Imagine that this happen. After a lot of research i see that sometime i have some strange zeros from the drive to the plc? Really i am in a deadlock and I don't know how to continue. From the other side the values on the other drive(second)are stable . The problem maybe: https://youtube.com/shorts/g7PCFLUaDUI?si=eiq0F2IzhQZax2e2
Last updated: 2023-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.