Post by micik on Ethercat project loaded to Win V3 x64 bit SoftPLC
CODESYS Forge
talk
(Post)
Hello, I have almost exactly problem already discussed here in this old thread: https://forge.codesys.com/forge/talk/Engineering/thread/03af9426eb/ However, this is quite old and I assume not completely relevant. In my case, I use v3.5.20 on windows 11, so Winpcap is no longer supported on newer OS. Also, this hint about adding entry to the .cfg file under ProgramFiles(x86) is also not relevant anymore. I guess, I need to add entry SysEthernet to this .cfg file: C:\ProgramData\CODESYS\CODESYSControlWinV3x64...\CODESYSControl.cfg like this one: [ComponentManager] Component.1=CmpTargetVisuStub Component.2=CmpWebServer Component.3=CmpWebServerHandlerV3 Component.4=SysCpuMultiCore Component.5=SysReadWriteLock Component.6=SysCpuBreakpoints Component.7=SysPipeWindows Component.8=SysEthernet But I'm not sure about Npcap vs WinpCap. Please, if applicable, update these instructions. I hope it is still possible to
Last updated: 2024-08-22
Post by jy77812 on MC_MoveCircularAbsolute Using Help
CODESYS Forge
talk
(Post)
Dear People I’m trying to draw a circle using MC_MoveCircularAbsolute, but I keep encountering an error. The error message is SMC_CP_CIRCLE_CENTER_NOT_ON_BISECTOR. What I’m trying to do is simply draw a circle with a diameter of 20, starting from the point X=0, Y=0. I’ve set CircMode to center. It seems like a simple task, but the error keeps occurring, and it’s giving me a headache. I’d appreciate your help. I’ve also attached the program, so please provide any advice you can. I want to use the mode as the center. I've tried changing multiple coordinates and it won't run. Please help. sample stCirculAuxPoint.c.X := 20; stCirculAuxPoint.c.Y := 10; stCirculEndPoint.c.X := 20; stCirculEndPoint.c.Y := 30; fbMoveCircularAbsolute( AxisGroup := AxisGroup, Execute := xGroupCirculEx, CircMode := SMC_CIRC_MODE.CENTER, AuxPoint := stCirculAuxPoint, EndPoint := stCirculEndPoint, PathChoice := 0, Velocity := 50, Acceleration := 50, Deceleration := 50, Jerk := 50, CoordSystem := SMC_COORD_SYSTEM.MCS, BufferMode := 0, TransitionMode := 0, TransitionParameter := , OrientationMode := , VelFactor := , AccFactor := , JerkFactor := , TorqueFactor := , Name := , Done => , Busy => , Active => , CommandAborted => , CommandAccepted => , Error => , ErrorID => , MovementId => );
Last updated: 2025-06-04
Post by josul on Web Client HTTPS Communication Issue
CODESYS Forge
talk
(Post)
Web Client Library Documentation Company: 3S - Smart Software Solutions GmbH Title: Web Client Version: 1.0.1.7 Categories: Application|Utils Namespace: WEB_CLIENT Author: 3S - Smart Software Solutions GmbH Placeholder: WebClient I encountered an issue using this library above. Note it is now part of Codesys IIoT Libraries SL in the form of Web Client SL, but I am not using this version. I was sending Content-Type: application/json, HTTP POST using a HTTPS URL. No issue observed initially, successful operation. At some point operation stopped and the codesyscontrol.log file started to accumulate errors: ERROR: TlsCreateContext2: Failed to save context. An application reset failed to resume operation and I was unable observe any TCP connection forming to a destination port 443. The error appeared as a TCP_INIT error. I can find no details as to what may have happened or why a reset of the PLC application did not resume operation. Testing with a curl operation proved to be successful, so I am confident there was no fundamental networking issue preventing a TCP connection forming. The solution was to reboot the hardware itself, but this is not satisfactory in the long term. Is there any description of the TLS error I received? Is there any suggestion here that there might be an issue with certificates? Any advice or information is appreciated.
Last updated: 2025-06-05
Post by kiranbsiddaiah on CodeSys OPC UA client Unable to Connect To OPC UA sever through Username and password
CODESYS Forge
talk
(Post)
Hi, I'm using codesys v3.5 sp21 software. I have downloaded the sample opc ua client project from https://content.helpme-codesys.com/en/CODESYS%20Examples/_ex_uacapi_example.html and i tested connecting to "prosys opc ua simulation server". Through Anonymous connection it is connecting to server and can read data. Later tried to connect using username and password. First got a SECURITY_CHECKS_FAILED error, trusted the client certificate in the server and this issue resolved. Next got an INVALID_CERTIFICATE error, trusted the server certificate in the client and this issue resolved. After these two error it is not establishing the connection and not giving any error messages. UAAsyncProp: UA.AsyncProperty := (tnTaskName:='UAClientTask', usiTaskPrio:=20, udiTaskInterval:=10000); UAPolicy: UA.SecurityPolicy := (sPolicy:=UA.OpcUa_SecurityPolicy.OpcUa_SecurityPolicy_Aes128Sha256RsaOaep, eSecurity:=UA.SECURITY_MODE.SIGN_AND_ENCRYPT); //UAPolicy: UA.SecurityPolicy := (sPolicy:=UA.OpcUa_SecurityPolicy.OpcUa_SecurityPolicy_None, eSecurity:=UA.SECURITY_MODE.NONE); UAAuth: UA.UserNameAuth := (sUserName:=UAVars.sUser, sPassword:=UAVars.sPass); UAClient: UA.Client := ( itfAsyncProperty:= UAAsyncProp, //sClientName:= 'MyOPC UA client name', //default: ‘CODESYS OPC UA Client’ sURL:= UAVars.sURL, sSession:= UAVars.sSession, itfPolicy:= UAPolicy, itfAuth:=UAAuth, udiTimeout:= 100000 //,itfNamespaceArray:= UAVars.itfNamespaceArray //optional use ); ----------------------------------------------------------------------------------------------------------------------- Please let me know if any additional information required. Thank you...
Last updated: 2026-05-07
Post by valenting on Runtime not working on raspberry pi Bullseye
CODESYS Forge
talk
(Post)
Hello I have a problem with Codesys on Raspberry pi with Bullseye The device is not recognized as a Raspberry pi, as I get this error : ooops... this runtime was built for RASPBERRYPI. Hardware version or firmware version not supported! (-18, 0x00000BB8, 0xFFFFFFFB) I'm running Codesys on a compute module 4S with Raspbian GNU/Linux 11 (bullseye), my kernel version is Linux 5.10.90-v7l+ Codesys version is the latest, released last week (4.11.0.0, CODESYS Control V3.5.19.61 for ARM-32Bit - build Feb 22 2024) I know it works on the same device if I use Raspbian 10 (Buster) with Linux 5.4.81-v7l+ kernel, but for some other reasons I have to use Bullseye. What can I do ?
Last updated: 2024-03-01
Post by kronlundo on Licensing info not available (WAGO PFC200 + Codesys V3)
CODESYS Forge
talk
(Post)
Hi! We're using a WAGO PFC200 for several projects towards the energy sector, and recently upgraded to CODESYS V3. We have the "IEC 60870-5-104 Server" package in a test program, and it works well with the package in DEMO mode. However, when we acquired a license for the "IEC 60870-5-104 Server" package and tried to add the license on the PFC200 through the license manager, we get an error (see attached file). It seems like there is no CmContainer on the device, does anyone have an idea on how to fix this? We've also contacted WAGO on this issue a while back with no feedback yet.
Last updated: 2024-06-10
Post by jonasz on Device diagnosis ( EtherCAT IO card )
CODESYS Forge
talk
(Post)
Hi, I'll link to the topic not wanting to start a new one. In the application I am building, I wanted to use the diagnostics described in the CAA Device Diagnosis library. In principle, everything is ok, except for the elements related to ModbusTCP. Despite the fact that ModbusTCP is taken into account in the documentation, it is not recognised via the interfaces. FUNCTION_BLOCK NET_HW_DIAG VAR_INPUT END_VAR VAR_OUTPUT END_VAR VAR (* Referencja do struktury z danymi dla HMI ASTRAADA.*) Visu: REFERENCE TO VISU; (* Wskaźnik na mastera EtherCAT.*) pEtherCATMaster : POINTER TO IoDrvEtherCAT; (* Wskaźnik na slave EtherCAT.*) pEtherCATSlave : POINTER TO EtcSlave; (* Interfejs dla węzła w drzewie urządzeń.*) _itfNode: DED.INode; (* Ogólny interfejs magistrali. Zapewnia podstawowe informacje o magistrali polowej.*) _itfBus: DED.IBus; (* Interfejs urządzenia. Zapewnia rozszerzone informacje o urządzeniu (magistralowym).*) _itfDevice2: DED.IDevice2; (* Ogólny interfejs magistrali. Zapewnia podstawowe informacje o magistrali polowej.*) _itfStack: DED.IStack; (* Numer węzła w drzewie urządzeń.*) uiNodes: UINT; (* Operator jest rozszerzeniem normy IEC 61131-3. W czasie wykonywania operator wykonuje konwersję typu odwołania do interfejsu na inny typ. Operator zwraca wynik BOOL. Wartość TRUE oznacza, że CODESYS pomyślnie wykonał konwersję. *) xQueryResultBus: BOOL; xQueryResultDevice2: BOOL; xQueryResultStack: BOOL; (* Struktura danych dotyczących węzłów w drzewie urządzeń.*) NetHwDiag: NW_HW_STAT; ModbusTcpClientDeviceInfo: IoDrvModbusTCP.DED.DEVICE_INFO; ModbusTcpClientDeviceState: IoDrvModbusTCP.DED.DEVICE_STATE; ModbusTcpDeviceInfo: IoDrvModbusTCP.DED.DEVICE_INFO; ModbusTcpDeviceState: IoDrvModbusTCP.DED.DEVICE_STATE; END_VAR (* Pobranie wskaźników dla pierwszego mastera i pierwszego slave w sieci EtherCAT.*) pEtherCATMaster := g_pFirstMaster; pEtherCATSlave := pEtherCATMaster^.FirstSlave; (* Diagnostyka sieci EtherCAT.*) pEtherCATMaster := g_pFirstMaster; pEtherCATSlave := pEtherCATMaster^.FirstSlave; NetHwDiag.xConfigFinished := pEtherCATMaster^.xConfigFinished; NetHwDiag.xDistributedClockInSync := pEtherCATMaster^.xDistributedClockInSync; NetHwDiag.xError := pEtherCATMaster^.xError; NetHwDiag.xSyncInWindow := pEtherCATMaster^.xSyncInWindow; NetHwDiag.sLastMessage := pEtherCATMaster^.LastMessage; NetHwDiag.LastError := pEtherCATMaster^.LastError; (* Diagnostyka drzewa urządzeń.*) uiNodes := 0; _itfNode := DED.GetRoot(); REPEAT NetHwDiag.asDeviceName[uiNodes] := DED.GetDeviceNameString(itfNode := _itfNode); xQueryResultBus := __QUERYINTERFACE(_itfNode,_itfBus); IF xQueryResultBus THEN _itfBus.GetBusInfo(buiInfo := NetHwDiag.aBusInfo[uiNodes]); NetHwDiag.aBusState[uiNodes] := _itfBus.GetBusState(); END_IF xQueryResultDevice2 := __QUERYINTERFACE(_itfNode,_itfDevice2); IF xQueryResultDevice2 THEN _itfDevice2.GetDeviceInfo(deiInfo := NetHwDiag.aDeviceInfo[uiNodes]); NetHwDiag.aDeviceState[uiNodes] := _itfDevice2.GetDeviceState(); IF pEtherCATSlave <>0 THEN pEtherCATSlave^(); IF pEtherCATSlave^.SlaveAddr = NetHwDiag.aDeviceInfo[uiNodes].idSystem THEN NetHwDiag.aAlStatus[uiNodes] := pEtherCATSlave^.ALStatus; pEtherCATSlave := pEtherCATSlave^.NextInstance; END_IF END_IF ELSE xQueryResultStack := __QUERYINTERFACE(_itfNode,_itfStack); IF xQueryResultStack THEN _itfStack.GetDeviceInfo(deiInfo := NetHwDiag.aDeviceInfo[uiNodes]); NetHwDiag.aDeviceState[uiNodes] := _itfStack.GetDeviceState(); END_IF END_IF uiNodes := uiNodes + 1; _itfNode := DED.GetNextNode(_itfNode); UNTIL _itfNode = 0 END_REPEAT (* Diagnostyka Modbus.*) Modbus_TCP_Client.GetDeviceInfo(deiInfo := ModbusTcpClientDeviceInfo); ModbusTcpClientDeviceState := Modbus_TCP_Client.GetDeviceState(); PAC_3200T.GetDeviceInfo(deiInfo := ModbusTcpDeviceInfo); ModbusTcpDeviceState := PAC_3200T.GetDeviceState(); Of course, you can take the easy way out and refer directly to the devices, but I wanted a reusable component. Any constructive help is very welcome Best regards Jonasz
Last updated: 2025-07-15
Post by mozed on Connection to device closed
CODESYS Forge
talk
(Post)
Hello, Exulting the command /opt/CoDeSysControl/Files/run restart debug I get this response from the linux terminal:(ScreenShot1 to ScreenShot7) When I try to reconnect via codesys this line appears at the linux terminal level:(ScreenShot8) A few seconds later, the error window appears on Codesys.(ScreenShot9) I see that following the command /opt/CoDeSysControl/Files/run restart debug there are errors, are they the problem? Sincerely,
Last updated: 2023-08-24
Post by transmin01 on PCAN serial "No CAN driver found"
CODESYS Forge
talk
(Post)
Hi, I am using a PCAN mini CAN board which has the Windows drivers installed on the target PLC. PCAN board can be seen in device manager. However, I am getting "No CAN driver found" error. I have read the post https://forge.codesys.com/forge/talk/CODESYS-V2/thread/44aae19318/ and have uncommented the CmpPCANBasicDrv driver in the CodesysControl.cfg file in development PC and have copied it to the target PC. Current CodesysControl.cfg file attached. Is there anything else I am missing? Regards
Last updated: 2023-09-14
Post by installwhat on What is the solution for "Application stopped on recovery switch request"?
CODESYS Forge
talk
(Post)
<Entry severity="information" component="<10>" user="nobody" timestamp="2024-07-04 ?? 5:10:47" infoId="1">Axis#=121 , Error=30014 , Emergency 2 <Entry severity="information" component="<10>" user="nobody" timestamp="2024-07-04 ?? 5:10:23" infoId="1">TCP Server : WaitClient <Entry severity="information" component="<10>" user="nobody" timestamp="2024-07-04 ?? 5:10:23" infoId="1">TCP Server : Init What is "component="<10>"? Is this system a vanilla CODESYS RTE or is it a modified installation. I think more details are required.
Last updated: 2024-07-08
Post by mandeepahujaifm on Ethernet/IP 4.6.0 causing exceptions?
CODESYS Forge
talk
(Post)
I have experienced the same with one of our customers after updating EIP Scanner to 4.6.0.0 and really baffled by it. The core dump simply shows error with ENIPScanner I/O task and on analyzing it says no source code available for 4.6.0.0. Contemplating to go back to 4.5.1 but 4.6.0.0 has some really nice fixes. I guess it don't matter if it crashes anways. Please keep us posted if you find anything.
Last updated: 2024-07-11
Post by mikek10 on Error IoDrvEthernetIP: Connection Failure. (16#1) How to solve
CODESYS Forge
talk
(Post)
Make sure the number of bytes matches the values in the Ethernet/IP>Assembly Information section of the Wagos web management page (expand by clicking on the +). The EDS file will probably have defaulted to assemblies 101 and 104. If you want a different assembly there is an article that tells you how to modify but seems to be unavailable at the moment. An alternative is to modify the .eds file to change the default assemblies.
Last updated: 2024-07-22
Post by paulpotat on Can't open license manager with raspberry CM4
CODESYS Forge
talk
(Post)
Hello, I have a problem when opening the license manager for my raspberry pi (CM4 model) with runtime 4.13.0.0. I select "Device" --> "Soft Container" and click on my device in the scan window but I get this error message : Licensing info not available. There is no dongle attached to this device. I can't install licenses anymore, and I don't understand why is CodeSys looking for a dongle when I specified I wanted to use a Soft Container. Can somebody help me please ? Best regards
Last updated: 2024-10-04
Post by dagi89 on CAA File open Problems
CODESYS Forge
talk
(Post)
Dear All, i am using Runtime CODESYS Control Win V3 - X64 Version 3.5.20.40, by using CAA file library (3.5.19.0) seems not fasible to open a file n 'C:\ciao.txt' or others absolute path. The error on File Open is 5114 File Operation Danied.. here below the implemented code and the windows file's properties. I use to implement codesys in RPI and this operation is immediate... Can someone help me in it?? Thanks in advance Dagi89
Last updated: 2024-12-21
Post by gabrielarffa on Modbus TCP/IP having problems with global variables
CODESYS Forge
talk
(Post)
I'm using Modbus TCP/IP to communicate Codesys with Elipse E3 as the master for a college project. I have made a list of global variables to organize the programming in two different POUs. The problem is, when I try to do the mapping of variables, the program informs me of an error due to the identifiers having a "." on their names. Do I have to reorganize my code to make it an unified block or is there a way to declare their names without changing all the code structure?
Last updated: 2025-05-20
Post by gabrielarffa on Modbus TCP/IP having problems with global variables
CODESYS Forge
talk
(Post)
I'm using Modbus TCP/IP to communicate Codesys with Elipse E3 as the master for a college project. I have made a list of global variables to organize the programming in two different POUs. The problem is, when I try to do the mapping of variables, the program informs me of an error due to the identifiers having a "." on their names. Do I have to reorganize my code to make it an unified block or is there a way to declare their names without changing all the code structure?
Last updated: 2025-05-20
Post by jshirazi on Restore license on Raspberry Pi
CODESYS Forge
talk
(Post)
Hi, I recently got a license for Raspberry Pi, after license activation I made a backup copy of "CMLicenseNew.WibuCmRaU" file to a safe place. Things got complicated and I tried to downgrade OS for some reason after that I tried several times/ways to restore my license with no luck. the specifications are as follows: Raspberry Pi 4 Model B Rev 1.1 codesyscontrol 4.10.0.0 SDK 3.5.19.30 Logs: **** ERROR: CodeMWriteLicenseFile: 'CMLicenseNew.WibuCmRaU' failed: Container not found or Server dose not support .... So if someone know a solution for this please kindly help me. Regards
Last updated: 2024-02-03
Post by amy123 on CSV Utility CANNOT_OPEN_DIRECTORY
CODESYS Forge
talk
(Post)
Hello, I tried using the CSV Utility SL Example from the CODESYS IIoT Libraries SL. No matter what path I try, I can not get the InitSave to work from CSVWRitersSTExample, line 2. It always gives the error 'CANNOT_OPEN_DIRECTORY'. I am running this on an Windows Azure VM, with Codesys Control Win V3 x64. I added a folder called 'temp' to my C: so that the default 'C:/temp' would work. However it gives CANNOT_OPEN_DIRECTORY. I tried updating to 'C:\temp' with the same result. Any help would be greatly appreciated!
Last updated: 2024-02-14
Post by kleeswi on SysFileOpen does not work after update to V3.5 SP19 Patch 5
CODESYS Forge
talk
(Post)
I use the function SysFile.SysFileOpen(sFileNamePara, SysFile.ACCESS_MODE.AM_WRITE, pErrorFileOpen); to open and write a file. Since the update from Codesys V3.5 SP17 to V3.5 SP19 Patch 5 it does not work anymore. I first had SysFile.SysFileOpen(sFileNamePara, SysFile.ACCESS_MODE.AM_APPEND_PLUS, pErrorFileOpen); in both versions. hFile_Test is a pointer to byte. It gives an exceptional error when dereferencing the hFile_Test pointer. Edit: I use Codesys on a Raspberry pi
Last updated: 2024-02-19
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 timvh on JSON
CODESYS Forge
talk
(Post)
I don't know the details of jsonArrayWriter, but the common behaviour for an xExecute input is that the FB starts on the trigger that it gets TRUE. In your case xExecute is never FALSE, so it is never triggered again to start the jsonArrayWriter. So change the condition from TRUE to a variable which you set to TRUE with the "xFirst". Then when the jsonArrayWriter is done (xDone), or has an error (xError), then set this variable to FALSE.
Last updated: 2024-05-01
Post by sajid on NMEA Serial data read in Control win v3 x64
CODESYS Forge
talk
(Post)
I am using the SerialCom example program from the CODESYS website to read NMEA strings in CODESYS Control Win V3 x64 through a serial-to-USB converter. However, I occasionally receive only partial data or encounter errors in the received string. A screenshot of expected NMEA string attached for reference. Could you please advise on how to ensure the full NMEA string is received consistently? Error in strRead variable is <value of="" the="" expression="" cannot="" be="" retrieved=""></value>
Last updated: 2025-10-16
Post by sajid on NMEA Serial data read in Control win v3 x64
CODESYS Forge
talk
(Post)
I am using the SerialCom example program from the CODESYS website to read NMEA strings in CODESYS Control Win V3 x64 through a serial-to-USB converter. However, I occasionally receive only partial data or encounter errors in the received string. A screenshot of expected NMEA string attached for reference. Could you please advise on how to ensure the full NMEA string is received consistently? Error in strRead variable is <value of="" the="" expression="" cannot="" be="" retrieved=""></value>
Last updated: 2025-10-16
Post by imdatatas on SMC_ERROR.SMC_AXIS_NOT_READY_FOR_MOTION when using Drive Virtual
CODESYS Forge
talk
(Post)
@ducng, Another possible situation could be that normally there are 3 inputs for MC_Power. In your above images, I can't see the "bDriveStart" input activated. As Mr. @gseidel mentioned, you need to make sure MC_Power.Status output should be TRUE. Issuing any movement command without activating the axis would naturally result in an error. For MC_Power; You can set the Enable and bDriveStart inputs to TRUE and try turning the axis activation on and off using only the bRegulatorOn input. Regards, Imdat
Last updated: 2025-11-28
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
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.