Search talk: global source address

 
<< < 1 .. 12 13 14 15 > >> (Page 14 of 15)

Post by mondinmr on Why SysPipeWindows is not implemented in RTE? CODESYS Forge talk (Post)
This library would be very useful for IPC communications. Using a UDP socket on localhost is unpredictable, as with slightly loaded machines it does not even guarantee packet delivery locally. Using TCP creates a lot of overhead. Message named pipes would be an excellent solution for Windows RTE. On Linux, since the release of the extension package, there is no issue, as it is sufficient to develop a component. However, although now 90% of our clients understand that Linux runtimes are better in every way compared to Windows RTE, especially from the security aspect (Not in kernel space) and the issues with Windows updates, 10% stubbornly insist (sometimes for trivial commercial reasons) on using Windows. Managing IPC with circular buffers in shared memory is quite ugly, or rather really ugly and unaesthetic. In the manuals, I saw the SysPipeWindows libraries, so I decided to test them, but unfortunately, I noticed that they are not implemented for RTE devices. Technically, I could try to open them as regular files, but SysFileOpen returns 16#27 or 16#39 depending on how I set the name (direction of the slashes). Here is the code to create shared memory and named pipes. Shared memory work great, named pipes no! #ifdef Q_OS_WIN32 SECURITY_ATTRIBUTES sa; SECURITY_DESCRIPTOR sd; InitializeSecurityDescriptor(&sd, SECURITY_DESCRIPTOR_REVISION); SetSecurityDescriptorDacl(&sd, TRUE, NULL, FALSE); sa.nLength = sizeof(SECURITY_ATTRIBUTES); sa.lpSecurityDescriptor = &sd; sa.bInheritHandle = FALSE; const wchar_t* name = L"Global\\ShmTest"; HANDLE hMapFile = CreateFileMapping( INVALID_HANDLE_VALUE, NULL, PAGE_READWRITE, 0, sizeof(SharedData), name); if (hMapFile == NULL) { qCritical("Error creating shared memory"); return 1; } data = static_cast<SharedData*>(MapViewOfFile(hMapFile, FILE_MAP_ALL_ACCESS, 0, 0, sizeof(SharedData))); if (data == NULL) { qCritical("Error mapping shared memory"); return 1; } HANDLE hPipe = CreateNamedPipe( TEXT("\\\\.\\pipe\\MyPipe"), PIPE_ACCESS_DUPLEX, PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE | PIPE_WAIT, PIPE_UNLIMITED_INSTANCES, 1024 * 1024, 1024 * 1024, NMPWAIT_USE_DEFAULT_WAIT, &sa); if (hPipe == INVALID_HANDLE_VALUE) { qCritical("Error creating named pipe"); return -1; } if (!ConnectNamedPipe(hPipe, NULL)) { qCritical("Error connecting to named pipe"); return -1; } checkPipe(hPipe); #endif
Last updated: 2024-02-02

Post by youness on No source code available (cip object) CODESYS Forge talk (Post)
Hi yotaro, hope your problem was resolved. I had the same, but with an other library title. This exception is not detected during compilation, but rather at a given position in the program (when switching to a given visualization). Although the exception is generated at this point, it does not involve the visualization in question. This error is due to one of 3 reasons: 1) A division by zero somewhere: The program is able to detect divisions by zero at compile time. But in the case of a variable, which takes a valid value at init and changes to 0 at a later stage. 2) An invalid pointer: (either because it has a value of 0, or because it points outside the memory reserved for the program) is being dereferenced. Locate any pointers or interfaces you have in the code and check them - you should also be wary of mixing inline modifications and pointers. 3) Array overflow: Generally when a processing operation is executed outside the array's definition range. Example: a write loop with n iterations is executed on an array of dimmension n-1. On the other hand, the error message may not appear. In the latter case, the error may have fatal consequences, as the overflow has induced writing to potentially forbidden memory areas. This problem can be explained by the fact that it's not always the adjacent memory areas of PLC_PRG that are overwritten, but the memory areas that are randomly allocated to the array during compilation. In this case, however, there is no entry in the log, so you need to integrate the "Implicit Check function", which checks the line of code generating the error. To integrate this functions, click on Application --> POU for implicit controls Regards,
Last updated: 2024-07-16

Post by scoob on ModbusFB - Slow Response Time CODESYS Forge talk (Post)
Hello, I have been trying to use the ModbusFB functions so I can put some code into libraries, but it seems to be very slow for me. I have a Modbus device with 100ms registers. I previously setup 10 channels in the 'traditional' Modbus Slave with channels and mappings - and set a cyclic trigger at 100ms - this worked fine. I then tried the ModbusFB example, and setup reading the same 10 blocks of modbus addresses, copying the example and putting all of the requests into an array and triggering the requests sequentially. I timed how long the requests are taking to get round to each one, and it is around 1s 450ms. How do I speed this up to match the cyclic time? IF NOT(init) THEN init := TRUE; // Set the required IP address: ipAddress[0] := 192; ipAddress[1] := 168; ipAddress[2] := 1; ipAddress[3] := 10; // Pass the required IP address to the clinet FB: client_NetworkSwitch.aIPaddr := ipAddress; client_NetworkSwitch.udiLogOptions := (ModbusFB.LoggingOptions.ClientConnectDisconnect OR ModbusFB.LoggingOptions.ClientReceivedValidReplies); // Try to connect the client client_NetworkSwitch(xConnect:=TRUE); // Configure all the channels to read connecting them to the client: portStatus_Request(rClient := client_NetworkSwitch, uiStartItem := 4096, uiQuantity := 32, pData := ADR(portStatus), udiReplyTimeout := udiReplyTimeout); portSpeed_Request(rClient := client_NetworkSwitch, uiStartItem := 4352, uiQuantity := 32, pData := ADR(portSpeed)); flowControl_Request(rClient := client_NetworkSwitch, uiStartItem := 4608, uiQuantity := 32, pData := ADR(flowControl)); linkUpCounter_Request(rClient := client_NetworkSwitch, uiStartItem := 5888, uiQuantity := 32, pData := ADR(linkUpCounter)); txPacketCounter1_Request(rClient := client_NetworkSwitch, uiStartItem := 8192, uiQuantity := 100, pData := ADR(txPacketCounter1)); txPacketCounter2_Request(rClient := client_NetworkSwitch, uiStartItem := 8292, uiQuantity := 28, pData := ADR(txPacketCounter2)); rxPacketCounter1_Request(rClient := client_NetworkSwitch, uiStartItem := 8448, uiQuantity := 100, pData := ADR(rxPacketCounter1)); rxPacketCounter2_Request(rClient := client_NetworkSwitch, uiStartItem := 8548, uiQuantity := 28, pData := ADR(rxPacketCounter2)); txErrors_Request(rClient := client_NetworkSwitch, uiStartItem := 8704, uiQuantity := 64, pData := ADR(txErrors)); rxErrors_Request(rClient := client_NetworkSwitch, uiStartItem := 8960, uiQuantity := 64, pData := ADR(rxErrors)); // Trigger all client requests initially FOR clientRequestsCnt := 0 TO (SIZEOF(clientRequests)/SIZEOF(clientRequests[0]))-1 DO pClientRequest := clientRequests[clientRequestsCnt]; pClientRequest^.xExecute := TRUE; END_FOR // Prepare sequential trigger / control of client requests. clientRequestsCnt := 0; pClientRequest := clientRequests[clientRequestsCnt]; END_IF // Call the client to do request processing: client_NetworkSwitch(); // Now we trigger client request sequentially ... IF NOT pClientRequest^.xExecute AND NOT pClientRequest^.xDone AND run AND client_NetworkSwitch.xConnected THEN pClientRequest^.xExecute := TRUE; END_IF // .. and check result/error IF pClientRequest^.xExecute AND run AND client_NetworkSwitch.xConnected THEN IF pClientRequest^.xDone THEN // Prepare next trigger of client request (a rising edge of xExecute) pClientRequest^.xExecute := FALSE; IF clientRequestsCnt < SIZEOF(clientRequests)/SIZEOF(clientRequests[0])-1 THEN // next client request clientRequestsCnt := clientRequestsCnt + 1; ELSE clientRequestsIterationCounter := clientRequestsIterationCounter + 1; clientRequestsCnt := 0; END_IF pClientRequest := clientRequests[clientRequestsCnt]; END_IF END_IF I did try a semi-coded way using the IoDrvModbusTCP library, and setting the slave com settings, then 10 commands and 10 requests, then using a TP on xDone as a pause, before triggering another request - this is time the delay is around 120ms - so the device is fine with the speed, just something I am doing wrong in the ModbusFB method I am sure.
Last updated: 2024-04-26

Post by cdutz on Problems connecting to Codesys 4.9.0.0 runtime on my Wago PFC200 CODESYS Forge talk (Post)
Hi all. I am currently struggling to get my Wago PFC200 running the Codesys Runtime in version 4.9.0.0 working. I am using Codesys V3.5SP19. I updated the PFC200 to the firmware version 04.01.10(23) after having tried the latest version (04.03.03(25) from Wago and not being able to start the runtime. After reading version 23 was needed, I changed to that and at least was able to have it start the codesys runtime. I also installed the "Codesys Control for PFC200 SL 4.9.0.0" plugin for Codesys to install the Codesys runtime in version 4.9.0.0 as well as update the Gateway on the device. While I seem to be able to connect to the gateway on the PLC (the dot is green) and when doing a scan, I do now find my PFC200, which is a huge improvement to before, where with firmware version 25 it just failed to start the runtime and I never found any device when doing a scan. Unfortunately I don't seem to be able to connect to the PLC in codesys. I logged in via SSH and changed the password and I can see that this password is correct as the stuff in the Codesys PFC200 tools tab only works if I use my changed password. And I used those credentials to update the installed Runtime version, which the log claimed to have worked fine. Now whenever I try to connect to the device found in the scan, I get a authentication pop-up with empy device name, device address: 000A. As User I use "root" and as password the password that I changed it to. As a response I just get "Ungültige Benutzerauthentifizierung auf dem Gerät" (Eng. probably something like "Invalid user authentication on the device". What could I be doing wrong? Admittedly I'm a bit lost here :-/ Chris
Last updated: 2023-08-26

Post by john-robinson on Limiting Memory Access of an Array to Within its Bounds CODESYS Forge talk (Post)
Recently we had an issue regarding some simple code to calculate a rolling average. The code indexes from zero to 199 to properly store the current input into a circular buffer which then allows us to calculate a rolling average: VAR input_5s : REAL; outs_arr : ARRAY[0..199] OF REAL; i : USINT := 0; END_VAR ___ //this code runs every five seconds, calculating a rolling average outs_arr[i] := input_5s; i := i + 1; output := OSCAT_BASIC.ARRAY_AVG(ADR(outs_arr), SIZEOF(outs_arr)); IF i >= SIZEOF(outs_arr) THEN i := 0; END_IF There is a simple bug in this code where the index will be set to 0 when it has surpassed the length of the array in bytes (800 in this case) rather than larger than the number of reals in the array (200). The solution here is simple, replacing i >= SIZEOF(outs_arr) with i >= SIZEOF(outs_arr)/SIZEOF(outs_arr[0]). In this example when the index increased to 201 and the line outs_arr[201] := input_5s was called, codesys arbitrarily wrote to the address in memory that is where outs_arr[201] would be if the array was that long. I would like to find a way to wrap the codesys array inside of a wrapper class that checks if an input is within the bounds of an array before writing to that value. I know how I would implement that for a specific array, I could create a method or class that takes an input of an array of variable length, ie. ARRAY[*] OF REAL, but I don't know how to make this for any data type. I am wondering if anyone has ever done anything similar to this, or has any better suggestions to ensure that none of the programmers on this application accidentally create code that can arbitrarily write to other locations in memory.
Last updated: 2024-03-05

Post by anonymous on Hi, I try to send and receive data using a UDP connection via SysSocket 3.5.17.0. While sending data works fine, I have problems with the receiving part. I am able to capture the received data of client side in wireshark But unable to capture it on the codesys CODESYS Forge talk (Post)
Hi, I try to send and receive data using a UDP connection via SysSocket 3.5.17.0. While sending data works fine, I have problems with the receiving part.I am able to capture the data of client side in wireshark but i am unable to capture it in the codesys. Heres the below part of code of client side. PROGRAM POU_udpclient_program VAR istep : INT := 1;//step variable for state machine xStart: BOOL;// Flag to start the UDP protocol iecSocketId: syssocket_interfaces.RTS_IEC_HANDLE;//socket handle for receiving iecCreateResult: syssocket_interfaces.RTS_IEC_RESULT; ipAddr: syssocket.SOCKADDRESS;//Socket address structure for receiving sIpAddress : STRING := '192.168.0.2'; wPort: WORD:= 12346; iecConnectResult : syssocket_interfaces.RTS_IEC_RESULT;//connect paramters sDataRec : STRING[255];//Buffer for received data xiRecBytes : __XINT;//number of bytes received iecRecResult : syssocket_interfaces.RTS_IEC_RESULT;//receive data parameters iecCloseResult : syssocket_interfaces.RTS_IEC_RESULT; END_VAR syssocket.SysSockInetAddr(sIpAddress,ADR(ipAddr.sin_addr)); ipAddr.sin_family := syssocket.SOCKET_AF_INET; ipAddr.sin_port := syssocket.SysSockHtons(wPort); CASE istep OF 1: //create socket IF xStart THEN iecSocketId:= syssocket.SysSockCreate(syssocket.SOCKET_AF_INET,syssocket.SOCKET_DGRAM,syssocket.SOCKET_IPPROTO_IP,ADR(iecCreateResult)); IF iecSocketId = syssocket_interfaces.RTS_INVALID_HANDLE THEN xStart := FALSE; istep := 1; ELSE istep := 2; END_IF END_IF 2: //connect to socket server using setoption iecConnectResult := syssocket.SysSockSetOption(iecSocketId,syssocket.SOCKET_SOL,syssocket.SOCKET_SO_REUSEADDR,ADR(ipAddr),SIZEOF(ipAddr)); istep := 3; 3: //receive data xiRecBytes := syssocket.SysSockRecvFrom(iecSocketId,ADR(sDataRec),SIZEOF(sDataRec),0,ADR(ipAddr),SIZEOF(ipAddr),ADR(iecRecResult)); istep := 4; 4: //close socket iecCloseResult:= syssocket.SysSockClose(iecSocketId); xStart := FALSE; istep := 1; END_CASE
Last updated: 2024-06-03

Post by derpaul on Official MQTT-Client: MAX_RECEIVE_BUFFER_SIZE_EXCEEDED CODESYS Forge talk (Post)
Here is the output Codesyscontrol.log ;**************************************************************** ;<loggername>/tmp/codesyscontrol.log</loggername> ;<logoptions> ; <enable>1</enable> ; <type>normal</type> ; <timestamp>rtc</timestamp> ; <deactivatable>0</deactivatable> ; <dump>always</dump> ; <filter>0x0000000f<filter> ; <maxentries>1000</maxentries> ; <maxfiles>1</maxfiles> ; <maxfilesize>1000000</maxfilesize> ;</logoptions> ;<entries> ;Timestamp, CmpId, ClassId, ErrorId, InfoId, InfoText ;ClassId: LOG_INFO =1 ;ClassId: LOG_WARNING =2 ;ClassId: LOG_ERROR =4 ;ClassId: LOG_EXCEPTION =8 ;ClassId: LOG_DEBUG =16 ;ClassId: LOG_PRINTF =32 ;ClassId: LOG_COM =64 ;</entries> ;**************************************************************** 2023-09-12T21:11:41Z, 0x00000013, 1, 0, 0, <logoptions> 2023-09-12T21:11:41Z, 0x00000013, 1, 0, 0, <bEnable>1</bEnable> 2023-09-12T21:11:41Z, 0x00000013, 1, 0, 0, <type>normal</type> 2023-09-12T21:11:41Z, 0x00000013, 1, 0, 0, <timestamp>rtc</timestamp> 2023-09-12T21:11:41Z, 0x00000013, 1, 0, 0, <disableable>0</disableable> 2023-09-12T21:11:41Z, 0x00000013, 1, 0, 0, <Filter>0x0000000f</Filter> 2023-09-12T21:11:41Z, 0x00000013, 1, 0, 0, <MaxEntries>1000</MaxEntries> 2023-09-12T21:11:41Z, 0x00000013, 1, 0, 0, <MaxFiles>1</MaxFiles> 2023-09-12T21:11:41Z, 0x00000013, 1, 0, 0, <MaxFileSize>1000000</MaxFileSize> 2023-09-12T21:11:41Z, 0x00000013, 1, 0, 0, </logoptions> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 4, CODESYS Control for PFC200 SL 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 4, OS=Linux, CPU=ARM, Arch=32Bit, Coding=C 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 6, <version>3.5.16.40</version> <builddate>Mar 2 2021</builddate> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 5, Copyright (c) 3S - Smart Software Solutions GmbH 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>CM</cmp>, <id>0x00000001</id> <ver>3.5.16.40</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>CmpMemPool</cmp>, <id>0x0000001e</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>CmpLog</cmp>, <id>0x00000013</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>CmpSettings</cmp>, <id>0x0000001a</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysFile</cmp>, <id>0x00000104</id> <ver>3.5.16.40</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysCom</cmp>, <id>0x00000100</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysCpuHandling</cmp>, <id>0x00000101</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysDir</cmp>, <id>0x0000011b</id> <ver>3.5.16.40</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysEthernet</cmp>, <id>0x0000011c</id> <ver>3.5.16.10</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysEvent</cmp>, <id>0x00000102</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysExcept</cmp>, <id>0x00000103</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysInternalLib</cmp>, <id>0x00000107</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysMem</cmp>, <id>0x00000108</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysModule</cmp>, <id>0x00000109</id> <ver>3.5.16.40</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysMsgQ</cmp>, <id>0x0000010a</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysMutex</cmp>, <id>0x0000013a</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysOut</cmp>, <id>0x0000010b</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysProcess</cmp>, <id>0x0000010e</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysSem</cmp>, <id>0x0000010f</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysSemCount</cmp>, <id>0x00000139</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysSemProcess</cmp>, <id>0x00000119</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysShm</cmp>, <id>0x00000110</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysSocket</cmp>, <id>0x00000111</id> <ver>3.5.16.30</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysTarget</cmp>, <id>0x00000112</id> <ver>3.5.16.40</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysTask</cmp>, <id>0x00000114</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysTime</cmp>, <id>0x00000115</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysTimeRtc</cmp>, <id>0x00000127</id> <ver>3.5.16.30</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, System: <cmp>SysTimer</cmp>, <id>0x00000116</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpAlarmManager</cmp>, <id>0x0000007c</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpApp</cmp>, <id>0x00000002</id> <ver>3.5.16.30</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpAppBP</cmp>, <id>0x00000073</id> <ver>3.5.16.10</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpAppForce</cmp>, <id>0x00000074</id> <ver>3.5.16.10</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpAsyncMgr</cmp>, <id>0x0000005f</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpBinTagUtil</cmp>, <id>0x00000004</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpBinTagUtilIec</cmp>, <id>0x0000005c</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpBitmapPool</cmp>, <id>0x00000050</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpBlkDrvTcp</cmp>, <id>0x00000030</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpBlkDrvUdp</cmp>, <id>0x00000007</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAAAsyncMan</cmp>, <id>0x00004007</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAABehaviourModel</cmp>, <id>0x00004015</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAACallback</cmp>, <id>0x00004001</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAACanL2</cmp>, <id>0x00004004</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAADTUtil</cmp>, <id>0x00004013</id> <ver>3.5.16.10</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAAFile</cmp>, <id>0x00004008</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAAMemBlockMan</cmp>, <id>0x00004003</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAANetBaseServices</cmp>, <id>0x00004018</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAARealTimeClock</cmp>, <id>0x00004014</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAASdoClient</cmp>, <id>0x00004011</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAASdoServer</cmp>, <id>0x00004017</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAASegBufferMan</cmp>, <id>0x00004019</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAASerialCom</cmp>, <id>0x00004012</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAAStorage</cmp>, <id>0x0000007e</id> <ver>3.5.16.30</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAATick</cmp>, <id>0x00004009</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAATickUtil</cmp>, <id>0x00004010</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAATimer</cmp>, <id>0x00004016</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCAATypes</cmp>, <id>0x00004006</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpChannelClient</cmp>, <id>0x00000008</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpChannelClientIec</cmp>, <id>0x0000005d</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpChannelMgr</cmp>, <id>0x00000009</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpChannelServer</cmp>, <id>0x0000000a</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCharDevice</cmp>, <id>0x00000300</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpChecksum</cmp>, <id>0x0000000b</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCodeMeter</cmp>, <id>0x0000007a</id> <ver>3.5.16.30</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCommunicationLib</cmp>, <id>0x0000000c</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCoreDump</cmp>, <id>0x00000083</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpCryptMD5</cmp>, <id>0x0000006a</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpDevice</cmp>, <id>0x0000000e</id> <ver>3.5.16.10</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpDynamicText</cmp>, <id>0x00000051</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpEL6751CanDrv</cmp>, <id>0x00005f0b</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpEventMgr</cmp>, <id>0x0000005b</id> <ver>3.5.16.30</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpFileTransfer</cmp>, <id>0x0000005e</id> <ver>3.5.16.10</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpIecStringUtils</cmp>, <id>0x0000007f</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpIecTask</cmp>, <id>0x00000011</id> <ver>3.5.16.40</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpIecVarAccess</cmp>, <id>0x00000060</id> <ver>3.5.16.30</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpIoDrvIec</cmp>, <id>0x0000005a</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpIoMgr</cmp>, <id>0x00000012</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpKbus</cmp>, <id>0x0000008a</id> <ver>4.0.1.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpKnxStack</cmp>, <id>0x0000004d</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpMonitor2</cmp>, <id>0x00000032</id> <ver>3.5.16.10</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpNameServiceClient</cmp>, <id>0x00000015</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpNameServiceClientIec</cmp>, <id>0x0000011d</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpNameServiceServer</cmp>, <id>0x00000016</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpOPCUAClient</cmp>, <id>0x00000096</id> <ver>3.5.16.40</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpOPCUAProviderIecVarAccess</cmp>, <id>0x00000126</id> <ver>3.5.16.40</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpOPCUAServer</cmp>, <id>0x00000124</id> <ver>3.5.16.40</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpOPCUAStack</cmp>, <id>0x0000008d</id> <ver>3.5.16.40</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpOpenSSL</cmp>, <id>0x00000033</id> <ver>3.5.16.40</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpPfcx00</cmp>, <id>0x00000088</id> <ver>4.0.1.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpPlcShell</cmp>, <id>0x00000128</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpRedundancy</cmp>, <id>0x00000129</id> <ver>3.5.16.40</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpRedundancyConnectionIP</cmp>, <id>0x0000ff03</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpRetain</cmp>, <id>0x00000017</id> <ver>3.5.16.30</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpRouter</cmp>, <id>0x00000018</id> <ver>3.5.16.10</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpSchedule</cmp>, <id>0x00000019</id> <ver>3.5.16.30</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpSecureChannel</cmp>, <id>0x00000090</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpSecurityManager</cmp>, <id>0x0000008e</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpSessionInformation</cmp>, <id>0x00000097</id> <ver>3.5.16.10</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpSocketCanDrv</cmp>, <id>0x00005f0d</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpSrv</cmp>, <id>0x0000001c</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpTraceMgr</cmp>, <id>0x00000070</id> <ver>3.5.16.10</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpUserDBFile</cmp>, <id>0x00000098</id> <ver>3.5.16.20</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpUserGroupsDBFile</cmp>, <id>0x00000099</id> <ver>3.5.16.20</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpUserMgr</cmp>, <id>0x00000061</id> <ver>3.5.16.40</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpUserObjectsDBFile</cmp>, <id>0x0000009c</id> <ver>3.5.16.20</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpVisuHandler</cmp>, <id>0x00000054</id> <ver>3.5.16.10</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpVisuServer</cmp>, <id>0x00000057</id> <ver>3.5.16.10</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpWebServer</cmp>, <id>0x00000071</id> <ver>3.5.16.0</ver> 2023-09-12T21:11:41Z, 0x00000001, 1, 0, 10, <cmp>CmpWebServerHandlerV3</cmp>, <id>0x00000072</id> <ver>3.5.16.0</ver> 2023-09-12T21:12:16Z, 0x00000007, 1, 0, 6, Network interface: <ipaddress>192.168.1.17</ipaddress>, subnetmask <subnetmask>255.255.255.0</subnetmask> 2023-09-12T21:12:16Z, 0x00000018, 1, 0, 4, Network interface <interface>ether 4</interface> at router <instance>0</instance> registered 2023-09-12T21:12:16Z, 0x00000009, 1, 0, 2, Running as network server 2023-09-12T21:12:16Z, 0x00000009, 1, 0, 1, Running as network client 2023-09-12T21:12:16Z, 0x0000000a, 1, 0, 0, <NumOfChannels>4</NumOfChannels> channels available, each of the size <BufferSize>100000</BufferSize> Bytes 2023-09-12T21:12:16Z, 0x00000129, 1, 0, 0, Debug Messages not activated 2023-09-12T21:12:16Z, 0x0000ff03, 1, 0, 0, Read connection settings... 2023-09-12T21:12:16Z, 0x00000030, 1, 0, 6, Local network address: <ipaddress>192.168.1.17</ipaddress> 2023-09-12T21:12:16Z, 0x00000018, 1, 0, 4, Network interface <interface>BlkDrvTcp</interface> at router <instance>2</instance> registered 2023-09-12T21:12:16Z, 0x00000124, 1, 0, 0, No certificate for the OPC UA server available. 2023-09-12T21:12:16Z, 0x00000124, 1, 0, 0, Security policy allows plain text communication. Secure communication is deactivated. 2023-09-12T21:12:16Z, 0x00000124, 1, 0, 0, ************************************************************** 2023-09-12T21:12:16Z, 0x00000124, 1, 0, 0, OPC UA Server Started: 2023-09-12T21:12:16Z, 0x00000124, 1, 0, 0, Hostname: PFC200, Port: 4840 2023-09-12T21:12:16Z, 0x00000124, 1, 0, 0, URL: opc.tcp://PFC200:4840 2023-09-12T21:12:16Z, 0x00000124, 1, 0, 0, Loopbackadapter activated. 2023-09-12T21:12:16Z, 0x00000124, 1, 0, 0, All available networkadapters are used. 2023-09-12T21:12:16Z, 0x00000124, 1, 0, 0, ************************************************************** 2023-09-12T21:12:16Z, 0x00000124, 1, 0, 0, Provider CODESYS_DefaultProvider with Version 0x3051028 registerd at the OPC UA server. 2023-09-12T21:12:16Z, 0x00000124, 1, 0, 0, Provider CmpOPCUAProviderIecVarAccess with Version 0x3051028 registerd at the OPC UA server. 2023-09-12T21:12:17Z, 0x00000126, 1, 0, 0, Valid license found for OPC UA IecVarAccess provider. 2023-09-12T21:12:17Z, 0x00000002, 1, 0, 7, Retains matched to bootproject of application [<app>Application</app>] 2023-09-12T21:12:17Z, 0x00000002, 1, 0, 6, Bootproject of application [<app>Application</app>] loaded 2023-09-12T21:12:17Z, 0x00000018, 1, 0, 1, Setting router <instance>0</instance> address to <address>(0011)</address> 2023-09-12T21:12:17Z, 0x00000018, 1, 16, 8, Network interface for mainnet=<mainnet>ether 5</mainnet> not found 2023-09-12T21:12:17Z, 0x00000018, 1, 0, 1, Setting router <instance>1</instance> address to <address>(0000)</address> 2023-09-12T21:12:17Z, 0x00000018, 1, 0, 1, Setting router <instance>2</instance> address to <address>(2ddc:c0a8:0111)</address> 2023-09-12T21:12:17Z, 0x00000002, 1, 0, 10, Application [<app>Application</app>] started 2023-09-12T21:12:17Z, 0x00000001, 1, 0, 34, CODESYS Control ready 2023-09-12T21:13:37Z, 0x00000001, 1, 0, 0, runtime licensed 2023-09-12T21:17:17Z, 0x00000002, 1, 0, 2, Application [<app>Application</app>] loaded via [OnlineChange] 2023-09-13T01:38:17Z, 0x00000009, 1, 418, 0, Channel timeout (<curtime>16012264</curtime>, <lasttime>15982259</lasttime>) 2023-09-13T01:38:17Z, 0x00000009, 1, 418, 0, Closing connection to <address>0329:032e</address> 2023-09-23T14:46:00Z, 0x00000002, 1, 0, 2, Application [<app>Application</app>] loaded via [OnlineChange] 2023-09-23T14:48:57Z, 0x00000002, 1, 0, 2, Application [<app>Application</app>] loaded via [OnlineChange]
Last updated: 2023-09-27

Post by dandyk on Dynamic Images CODESYS Forge talk (Post)
Hello, I have very similar problem, but it seems that your solution does not work for me. I am using TwinCAT XAE Shell v3.1.4024.55 and TwinCAT Runtime. Sorry for writing here on codesys forge, but since I found the only relevant topic here and since TwinCAT is almost the same with CODESYS in many applications, I chose to write here. I simply need to dynamically update image in visualization based on camera trigger (I am doing a machine vision application). Camera triggers an image, my program processes it (applies thresholding, draws contours etc...) and saves the processed image in the runtime location (the same one you were mentioning). This was done successfully. I need to make it work at runtime, while the program is executing and I need to refresh the image in the visualization each time camera triggers a new image and program processes it. When I create image element in the visualization and define the bitmap ID variable as STRING which contains the image ID defined in the image pool, then it displays the image in the image pool, but does not work at runtime, while the program is executing. I also used the Bitmap Version. I declared it in Global variable list as integer with initial value of 0 and wrote the variable in the bitmap version in the image element in visualization. Each time new image is saved to the runtime location, I wrote a program to increment Bitmap Version by 1. It increments and the image does not update in the visualization, unfortunately. I think that bitmap version is working correctly and deletes the cached image as it is supposed to, but the Image Pool does not update the image ID with the new image... the path to the image is always the same... only the actual image changes with the same file name. Image Pool is not dynamic and cannot refresh the image in the path to the actual one at runtime. How can I refresh the image ID in the image pool at runtime? Bitmap version only deletes cached image and reloads the image from the image ID, but the image ID has the same image, because image pool won't update at runtime. Do you know any solution to this problem?
Last updated: 2024-04-06

Post by ara32 on CODESYS 4 Linux: CODESYS Forge talk (Post)
Hello! I managed to correctly launch CODESYS Developer Studio 3.5.17, almost all functionality works. The only issue remaining is that when connecting to a device and obtaining its public key, the NCryptEncrypt function is called, which is not fully implemented in the DLL source code, resulting in the connection not being established. Currently, the code of this function in the Wine repository looks like this: SECURITY_STATUS WINAPI NCryptEncrypt(NCRYPT_KEY_HANDLE key, BYTE *input, DWORD insize, void *padding, BYTE *output, DWORD outsize, DWORD *result, DWORD flags) { struct object *key_object = (struct object *)key; TRACE("(%#Ix, %p, %lu, %p, %p, %lu, %p, %#lx)\n", key, input, insize, padding, output, outsize, result, flags); if (flags & ~(NCRYPT_NO_PADDING_FLAG | NCRYPT_PAD_OAEP_FLAG | NCRYPT_PAD_PKCS1_FLAG | NCRYPT_SILENT_FLAG)) { FIXME("Flags %lx not supported\n", flags); return NTE_BAD_FLAGS; } if (flags & NCRYPT_NO_PADDING_FLAG || flags & NCRYPT_PAD_OAEP_FLAG) { FIXME("No padding and oaep padding not supported\n"); return NTE_NOT_SUPPORTED; } if (key_object->type != KEY) return NTE_INVALID_HANDLE; return map_ntstatus(BCryptEncrypt(key_object->key.bcrypt_key, input, insize, padding, NULL, 0, output, outsize, result, flags)); } The program crashes due to the NCRYPT_PAD_OAEP_FLAG flag. I'm not proficient in C++, but I attempted to add handling myself, and here's the result: SECURITY_STATUS WINAPI NCryptEncrypt(NCRYPT_KEY_HANDLE key, BYTE *input, DWORD insize, void *padding, BYTE *output, DWORD outsize, DWORD *result, DWORD flags) { struct object *key_object = (struct object *)key; TRACE("(%#Ix, %p, %lu, %p, %p, %lu, %p, %#lx)\n", key, input, insize, padding, output, outsize, result, flags); if (flags & ~(NCRYPT_NO_PADDING_FLAG | NCRYPT_PAD_OAEP_FLAG | NCRYPT_PAD_PKCS1_FLAG | NCRYPT_SILENT_FLAG)) { FIXME("Flags %lx not supported\n", flags); return NTE_BAD_FLAGS; } if (flags & NCRYPT_NO_PADDING_FLAG) { FIXME("No padding not supported\n"); return NTE_NOT_SUPPORTED; } BCRYPT_OAEP_PADDING_INFO oaepInfo = { 0 }; oaepInfo.pszAlgId = BCRYPT_SHA1_ALGORITHM; NTSTATUS status = BCryptEncrypt(key_object->key.bcrypt_key, input, insize, &oaepInfo, NULL, 0, output, outsize, result, flags); if (key_object->type != KEY) return NTE_INVALID_HANDLE; return map_ntstatus(BCryptEncrypt(key_object->key.bcrypt_key, input, insize, padding, NULL, 0, output, outsize, result, flags)); } Now, when calling the connection, it crashes with the error "bcrypt:BCryptEncrypt flags 0x4 not implemented." Can anyone help with enhancing this functionality or at least point me in the right direction?
Last updated: 2024-03-22

Post by greenwood on CODESYS Control Raspberry Pi mit Servotreiber T6 von StepperOnline CODESYS Forge talk (Post)
Hallo, ich versuche, eine Modbus-RTU-Kommunikation zwischen meinem Raspberry Pi mit CODESYS Control für Raspberry Pi 64 SL und einem Servotreiber von StepperOnline, Typ T6, herzustellen. Die Verbindung ist wie folgt: RJ45-Stecker am Servotreiber -> Kabel mit RJ45 an einem Ende und USB-A-Stecker am anderen Ende -> Seriell-zu-USB-Konverter -> Raspberry Pi. Der Seriell-zu-USB-Konverter und die Kabel habe ich zusammen mit dem Motor und Treiber von StepperOnline gekauft und sie sind dafür gedacht, den Servotreiber mit einem Computer zu verbinden, auf dem deren Setup-Software läuft. dmesg | grep tty auf dem Pi sagt mir, dass der USB-zu-Seriell-Konverter auf ttyusb0 ist. Ich weiß nicht, wie man das in einen COM-Port übersetzt, ich habe COM 1 genommen. Ich habe ein Projekt in Codesys erstellt und ein Modbus_COM-Gerät hinzugefügt, einen Modbus_Master_COM_Port und einen Modbus_Slave_COM_Port angehängt. Auf der Registerkarte "Allgemein" des Modbus_COM habe ich die folgenden Werte eingestellt: Slave address 1 Baud rate 9600 Parity None Data bits 8 Stop bits 2 Ich habe den Servotreiber auf die gleichen Werte eingestellt. (Ich habe auch andere Werte getestet, aber mit dem gleichen Ergebnis). Auf der Registerkarte "Modbus Slave Channel" des Modbus_Slave_COM_Port habe ich einen Kanal hinzugefügt und die folgenden Werte eingetragen: Access type Read Holding Registers (Function Code 3) Read Register offset 0x0000 Length 1 Ich habe noch keinen Code geschrieben, weil ich noch nicht herausgefunden habe, wie man die Kommunikation programmiert. Wenn ich das Projekt zum Raspberry Pi herunterlade scheint der Modbus_Master_COM_Port zu laufen (grünes Symbol), aber der Modbus_Slave_COM_Port nicht (rotes Dreiecksymbol). Wenn ich einen anderen COM-Port eintrage, haben sowohl der Master als auch der Slave das rote Dreiecksymbol. Ich habe dies auch mit meinem Windows-PC unter Verwendung von Codesys Control Win 64 versucht und die gleichen Ergebnisse bekommen. Ich wäre dankbar für jede Hilfe oder Tipps, wie ich den Grund dafür herausfinden kann, warum der Servotreiberreiber nicht reagiert.
Last updated: 2024-05-31

Post by ppix on Establishing TLS Connection with MQTT Broker using MQTT Client SL Package CODESYS Forge talk (Post)
I’m currently working on establishing a TLS connection with an MQTT broker using the MQTT Client SL package in CODESYS. While I’ve successfully established communication with the broker without TLS, I'm encountering issues when trying to enable TLS. In the 'MQTT Explorer' application, I can easily upload the server certificate (.crt), client certificate (.crt), and client key (.key). However, in CODESYS, I can’t find a way to upload my client key (.key file). Here's a summary of my current setup: Certificates: I have uploaded both the client and server certificates to the certificate store under the 'Trusted Certificates' folder in the security screen. TLS Context Initialization: Despite setting the _sCommonName as the name of my client certificate, a new self-signed certificate is created and placed within the device’s certificates. I then need to manually move this certificate to the trusted certificates folder. This results in three certificates in my trusted certs folder: client cert, server cert, and the newly created cert. _ciDefaultCertInfo : MQTT.NBS.CERT_INFO := (psInfo := ADR(_sCommonName), udiSize := TO_UDINT(LEN(_sCommonName))); // CN of the certificate (common name) _sCipherList : MQTT.NBS.CIPHER_LIST := STRUCT(psList := ADR('HIGH'), udiSize := 4); // Cipher string see https://www.openssl.org/docs/man1.1.1/man1/ciphers.html _tlsContext : MQTT.NBS.TLSContext := ( sUseCaseName := _sCommonName, // A certificate is stored in the certificate store with the use case name. You can choose any name. Here we use the common name. ePurpose := MQTT.NBS.PURPOSE.CLIENT_SIDE, // For client certificates set this to NBS.PURPOSE.CLIENT_SIDE sTLSVersion := '1.3', // The TLS version sCipherList := _sCipherList, // Set the cipher list sHostname := sHostname, // The hostname of the broker udiVerificationMode := 2, // 2 => Active Peer verification ciCertInfo := _ciDefaultCertInfo, // Set the cert info itfCertVerifer := 0); // 0 => No Verifier mqttClient : MQTT.MQTTClient := (xUseTLS:=TRUE, itfTLSContext := _tlsContext, itfAsyncProperty := _asyncProperty); Additional Details: In the client FB, I’ve set uiPort:= 8883, xUseTLS:= TRUE, and configured itfTLSContext as mentioned above. The certificates are encrypted with SHA256RSA. sHostname is the IP address of my broker. I’ve attached a copy of the client FB, which shows straight lines where variables are assigned and boxes where they are not. I am currently trying this on the only 2 compatible versions of COSDESYS with my controller (V3.5.15.20 and V3.5.18.40) My Question: How do I correctly set up this mTLS connection? What might I be missing? Any guidance or suggestions would be greatly appreciated, especially considering I’ve already successfully established a non-TLS connection with the same broker. Thank you in advance for your help!
Last updated: 2024-06-19

Post by ihatemaryfisher on Sorting array of any-sized structure CODESYS Forge talk (Post)
In my machine's operation, I need to display multiples tables containing arrays of structured variables. The arrays change during operation, and my supervisor has advised me to write a new bubble-sort for each array. I think I can make a function to sort an array of any data type. This was my own project, and I'm a relatively new coder. I want to know the weaknesses in my approach, and a better method, if one exists. As far as I can test, the function accepts an array of a structured variable of any size, and sort it by any VAR in that structure. But it relies heavily on pointers, which I've heard are bad practice? Function call: // SORT BY BYTE-SIZED VAR IF xDoIt[6] THEN FUNBubbleSortSansBuffer( IN_pbySourcePointer := ADR(astArray[1]), // address of first byte in first element of array IN_pbyComparePointer:= ADR(astArray[1].byCompByte), // points to first byte of the comparing variable (variable you sort by) IN_uiStructureSize := SIZEOF(TYPE_STRUCTURE), // size, in bytes, of the structured variable IN_uiCompareSize := SIZEOF(astArray[1].byCompByte), // size, in bytes, of the comparing variable (variable you sort by) diArrayElements := UPPER_BOUND(astArray,1), // number of elements in array IN_xSmallToLarge := xSortOrder // whether to sort by small2large or large2small ); END_IF Function: FUNCTION FUNBubbleSortSansBuffer : BOOL VAR_INPUT IN_pbySourcePointer : POINTER TO BYTE; // points to beginning of array (first byte of first element) IN_pbyComparePointer: POINTER TO BYTE; // points to first byte of the comparing variable (variable you sort by) IN_uiStructureSize : UINT; // size, in bytes, of the structured variable IN_uiCompareSize : UINT; // size, in bytes, of the comparing variable (variable you sort by) diArrayElements : DINT; // number of elements in array IN_xSmallToLarge : BOOL; // whether to sort by small2large or large2small END_VAR VAR j : DINT; // repeat iteration over array until array ends i : DINT; // iterarte over array, swapping when necesary k : DINT; // iterator from 1 to size of structure (stepping 'through' a single element in array) dwSize : DWORD; // internal var for use in MEMUtils.MemCpy(<size>) // FOR SORTING BY BYTE VAR pbySourcePointer : POINTER TO BYTE; pbySourcePointer2 : POINTER TO BYTE; pbyComparePointer : POINTER TO BYTE; pbyComparePointer2 : POINTER TO BYTE; pbyPointerToBuffer : POINTER TO BYTE; // pointer to single byte buffer byBufferByte : BYTE; // single byte buffer END_VAR dwSize := UINT_TO_DWORD(IN_uiStructureSize); // get structure size (number of bytes) pbyPointerToBuffer := ADR(byBufferByte); // assign pointer to address of buffer byte (because MEMUtils.MemCpy requires a pointer input) CASE IN_uiCompareSize OF // depending on the size of the VAR to sort by (current functionality for BYTE and WORD/INT 1: // BYTE (8 BIT) FOR j := 1 TO diArrayElements DO // for number of elements in array FOR i := 1 TO (diArrayElements-1) DO // same thing, but row[i+1] row is included in swap logic pbySourcePointer := IN_pbySourcePointer + dwSize*(i-1); // point at #1 byte in array element[i] pbySourcePointer2 := pbySourcePointer + dwSize; // point at #1 byte in array element[i+1] // NOTE: because of memory locations, each array element is offset from one another by a number of bytes equal to the size of the structure // We can "walk" from array[i] to array[i+1] via steps equal to the size of the structure // e.g., ADR(array[i+1]) == ADR(array[i]) + SIZEOF([array datatype]) pbyComparePointer := IN_pbyComparePointer + dwSize*(i-1); // point to sorting variable in array element[i] pbyComparePointer2 := pbyComparePointer + dwSize; // point to sorting variable in array element[i+1] // using sort order (small -> large/large -> small) IF SEL(IN_xSmallToLarge, (pbyComparePointer2^ > pbyComparePointer^),(pbyComparePointer2^ < pbyComparePointer^)) THEN // This is where it gets tricky. We've identified pointers for the starting bytes of aArray[i] and aArray[i+1] // and we know the size of aArray[i]. We are going to swap individual bytes, one at a time, from aArray[i] and aArray[i+1] // this allows us to use only a single byte var as a buffer or temporary data storage // e.g., consider a structure consisting of a word, a byte, and a string. it is stored like this // |------WORD-------| |--BYTE-| |STRING------...| // astArray[1] == 1000 0100 0010 0001 1100 0011 1010 1010.... etc // astArray[2] == 0001 0010 0100 1000 0011 1100 0101 0101.... etc // performing a single swap (copy into a buffer, etc.) of the first byte of each array element creates this // astArray[1] == 0001 0100 0010 0001 1100 0011 1010 1010.... etc // astArray[2] == 1000 0010 0100 1000 0011 1100 0101 0101.... etc // incrementing the pointer adresses for the swap by 1 and swapping again swaps the next byte in each array element // astArray[1] == 0001 0010 0010 0001 1100 0011 1010 1010.... etc // astArray[2] == 1000 0100 0100 1000 0011 1100 0101 0101.... etc // continuing this from k to SIZEOF(TYPE_STRUCTURE) results in a toally swapped row FOR k := 1 TO IN_uiStructureSize DO // copy single byte[k] of array element 1 to buffer MEMUtils.MemCpy(pbyDest := (pbyPointerToBuffer), pbySrc := (pbySourcePointer+k-1), dwSize := 1); // copy single byte[k] of array element 2 to 1 MEMUtils.MemCpy(pbyDest := pbySourcePointer+k-1, pbySrc := (pbySourcePointer2+k-1), dwSize := 1); // copy buffer to byte[k] array element 2 MEMUtils.MemCpy(pbyDest := (pbySourcePointer2+k-1), pbySrc := pbyPointerToBuffer, dwSize := 1); END_FOR END_IF END_FOR END_FOR
Last updated: 2023-08-17

Post by mubeta on Some 'pathetic' errors in SoftMotion program CODESYS Forge talk (Post)
Hello everyone, I have a very simple program for the process, but it's driving me crazy and I can't see the problems I'm left with: Short topological description: Dual Core Berghof controller with softmotion runtime version 3.5.19.30; Two axes with servodrive on canopen bus, clocked distributed from master; Ethercat I/O node; 2 ms ethercat task, 2 ms canopen bus cycle time; I/O objects of the canopen master and canopen drives connected to the ethercat task cycle; Problem 1: Two separate programs each manage their own axis and drive, with separate state machines. A first axis moves primarily in velocity, except having to position itself absolutely at a predetermined point at the end of the job; the second axis, on the other hand, is a paper unwinder that changes, for each job cycle, from actions in absolute, relative, and cam displacement with the master axis. Well, the state machine of both axes was written in such a way as to call running the useful FB and change it on state change in this way: CASE i_stateMachine OF 0: o_Power(Enable := TRUE, bRegulatorOn := FALSE, bDriveStart := FALSE, Axis := o_PaperUnwinderAxis); o_MoveAbs(Execute := FALSE, Axis := o_PaperUnwinderAxis); o_MoveRel(Execute := FALSE, Axis := o_PaperUnwinderAxis); o_CamSelect(Execute := FALSE, Master := o_MachineAxis, Slave := o_PaperUnwinderAxis, CamTable := cam_PaperUnwinder); o_CamIn(Execute := FALSE, Master := MachineEncoder, Slave := o_PaperUnwinderAxis); o_CamOut(Execute := FALSE, Slave := o_PaperUnwinderAxis); o_SetPosition(Execute := FALSE, Axis := o_PaperUnwinderAxis); IF ... THEN i_StateMachine := 10; END_IF; 10: o_Power( Enable := TRUE, bRegulatorOn := TRUE, bDriveStart := TRUE, Axis := o_PaperUnwinderAxis ); IF o_Power.Status THEN i_StateMachine := 20; END_IF; 20: (* Avanzamento carta *) o_MoveAbs( Execute := TRUE, Position := o_Somewhere, Velocity := 25.0, Acceleration := 3666.7, Deceleration := 3666.7, Jerk := 48000.0, Direction := MC_DIRECTION.positive, Axis := o_PaperUnwinderAxis ); IF o_MoveAbs.Done THEN o_MoveAbs(Execute := FALSE, Axis := o_PaperUnwinderAxis); i_StateMachine := 30; END_IF 30: d_HomingPosition := ...; o_SetPosition( Execute := TRUE, Position := d_HomingPosition, Mode := FALSE, Axis := o_PaperUnwinderAxis ); (* ... *) IF o_SetPosition.Done = TRUE THEN o_SetPosition(Execute := FALSE, Axis := o_PaperUnwinderAxis ); o_LogServer.Append(sMessage := '...', lscClass := LOGSERVER_CLASS.ALWAYS, sdt := o_CommonsMgrData.systime.sdtLocal); i_StateMachine := 40; END_IF; 50: ... The code above is a sketchy example of what I wanted to write. But it gives me a spot problem: in some, the state change results in a drive error, which is unrecoverable except with a reinitialization via SM3_ReinitDrive(). Things are improved a little if in the program I always run the call of all softmotion blocks in this way: o_Power(Axis := o_PaperUnwinderAxis); o_Jog(Axis := o_PaperUnwinderAxis); o_Halt(Axis := o_PaperUnwinderAxis); o_MoveAbs(Axis := o_PaperUnwinderAxis); o_MoveRel(Axis := o_PaperUnwinderAxis); o_CamIn(Master := MachineEncoder, Slave := o_PaperUnwinderAxis); o_CamOut(Slave := o_PaperUnwinderAxis); If I don't execute all the calls of all the motion FBs used, when exchanging machine state often (but not always), the axis goes into error with event id THE_FB_WASNT_CALL... Done a little diagnostics it seems that the FBs return the bDone, before they are completely terminated. I tried doing the machine state exchange not with the bDone bit of the FBs, but with the 'standstill' state of the axis. It didn't seem to change anything. Problem 2: During the use SM3_ReinitDrive() I get the erro in the log: "NetID 0: SDO read error for object 16#607C..." Assuming that the device involved it's one of the two servodrive, (no others device are present in the network), I don't found any object 0x607C in the 'possible object list in/out' of the two drive, and I don't understand where this object can be listed. So any ideas and suggestions regarding these two issues will be very, very welcome. If you need the source project, I am willing to send it.
Last updated: 2024-07-17

Post by r-niedermayer on OPC UA subscriber not operational CODESYS Forge talk (Post)
Hi. As far as projects in "old version"s are concerned, these can be upgraded to newer versions at any time. To do this, the device must be updated accordingly and the copilers and library versions must be adapted. You can find instructions on how to proceed in the online help/FAQ: https://content.helpme-codesys.com/en/CODESYS%20Development%20System/_cds_changing_compiler_version.html https://content.helpme-codesys.com/en/CODESYS%20Development%20System/_cds_cmd_update_device.html See also 4.3.22.4 "How to open an Example Project" within the following pdf for more details on the single steps: https://forge.codesys.com/lib/counit/tickets/_discuss/thread/3e991befbc/ca97/attachment/Public%20FAQ-v13-20240610_075228.pdf Regaring your OPCUA connection state always showing just "DISABLED", without knowing both sides of the assembly in detail, one can only approach the problem theoretically. We can give a chekclist on how to proceed: Fist, please recheck the communication settings in the OPC UA connection function block to ensure that the server URL, endpoint URL, and other settings are correct and match the configuration of the OPC UA server. Verify that the OPC UA server is running and accessible. -You can try to connect to the OPC UA server using a separate client, such as UAExpert, to ensure that the issue is not related to the OPC UA server itself. Test the security settings in the OPC UA connection function block to ensure that the correct security policy and certificate are selected. If you are using a dynamic connection to the OPC UA server, probe that the connection settings are correctly configured and that the OPC UA client is able to establish a connection to the OPC UA server. Also, please loock into the log files for any errors related to the OPC UA connection function block, these should be listet there. The log files may also provide additional information about the issue and help you to further troubleshoot the problem. FYI - Please see https://content.helpme-codesys.com/en/CODESYS%20Communication/_cds_obj_data_source_communication_opc_ua_server.html: Her you can finde the Communication settings via OPC UA Server -> layout Browse Live Server: The client connects to the server and detects the existing variables and types. From Information Model The client reads the data structure (layout) of the OPC UA Server from the information model set here and as a result receives the information about available variables and types. A connection to the server is not required. The list contains the information models installed in the OPC UA Information Model Repository. "Read Connection" Settings from IEC Variable (option set): - The connection settings used by the device are not read here from the dialog, but at runtime from the IEC variable specified here. - For this possibility, please see the Using a Dynamic Connection to an OPC UA Server (https://content.helpme-codesys.com/en/CODESYS%20Communication/_comm_use_dynamic_opc_ua_server_comm_settings.html) The settings for the communication of a Client-data source to an OPC UA Server can also be dynamically configured from the IEC code and can also be changed at runtime. For such a purpose, a structure is available in the DatasourceOpcUAServer library (For a description of the OPC UA Server, there is one included in the standard installation of CODESYS, https://content.helpme-codesys.com/en/CODESYS%20Communication/_cds_encrypt_communication_data_sources_opc_ua_client.html)
Last updated: 2024-11-04

Post by struccc on Wish: CODESYSControl.cfg - again CODESYS Forge talk (Post)
Before creating this topic, I was browsing the search results for CodesysControl.cfg - many results, and I remember very well, it's a problematic issue for a long time. To summarize: there were many requests for documentation on this file - the most comprehensive reply is: https://forge.codesys.com/forge/talk/Runtime/thread/ebbf851a3d/#eb85 Hi, not really, this is covered by the manual which you get if you use a runtime toolkit which is not free of charge. Maybe we need to extract the config file part from that documentation if that is possible. BR Edwin I am not sure how much is this relevant, since we buy SL License directly from CODESYS... I think it is a reasonable demand, to get documentation on the configuration entries affecting the documented behaviour of the runtime system and it's components The actual reason I bring up this issue again can be read here: https://forge.codesys.com/forge/talk/Runtime/thread/febad3cc40/#0e12 but mostly my frustration about noticing some new, unknown and undocumented entries in my configuration file. Again. And this happens a lot recently. Just some examples: Changes with SysFile - and mandatory use of IEC path Introduction of Mandatory user management File transfer service now disabled by default SysProcess - allowed commands The above mentioned CmpApp parameters... And finally (Regaridng windows install): With the newer versions, the installation directory (together with the configuration file) tends to hide itself to some super silly location under the roaming profile data of local system account. I am not sure if this change was documented somewhere, but was a very unpleasant one. Someone could please explain the reason and the concept of the introduction of this release specific directories (I am sure, there is a good reason) - how to use them properly? - How to re-introduce user configuration (to preserve configuration data between versions)? - How to do version - to version migrations properly? - How to keep old version of runtime available and ready to start with it's original configuration and application? - ... Therefore, the lack a regularly updated description of CodesysControl .cfg , including all the configuration entries, together with their default values for different runtime versions is really a big deficiency.* This should be done for all components storing or just seeking data from this file... (Maybe there is such thing but I failed to find???) It is regularly causing trouble when introducing a new version (together with the long awaited bug fixes and enhancements), what has changed it's default behaviour for security or other practical reasons. I agree this is very important, and it is logical to change the default options: But it must be documented historically, and make it easily available, so we can prepare better for the upgrade of the runtime. Forge talk is a great source, but not very practical for this kind of documentation purposes... Thanks in advance for CODESYS staff 🙏🙏🙏 (Ps.: It would look rather silly, if some members of the user community prepares this documentation on a Forge Wiki page... Or??? Should we?)
Last updated: 2024-11-21

Post by smeitink on Timeout Error in Modbus Communication with WAGO PFC200 and iEM2050 Meter using 750-652 Module CODESYS Forge talk (Post)
Hi all, I'm looking for help with an issue I've come across while trying to facilitate Modbus communication between a WAGO PFC200 PLC using a 750-652 communication module and an iEM2050 Series Single Phase Energy Meter. I believe to have everything wired and setup correcty, but I keep running into a "Error time out" message, and by now I don't really know what else to try. My setup is as follows: A PFC200 Wago PLC, which has 2 750-652 Serial Interfaces extension modules connected to its field bus. I'm using one of these to talk to a Schneider iEM2050 - kWh-meter over modbus. I have connected terminal 23 (A) of the iEM2050 to connector 6 (A) on the 750-652. I have connected terminal 24 (B) of the iEM2050 to connector 2 (B) of the 750-652. I'm using 200mm of twisted together wires to connected them both, and I have placed a 120 ohm resistor between A and B at both ends. I've attached relevant pinout images to this post. I then wrote a simple program that configures the Mobus port, as per the datasheet of the iEM2050. You can find an image of the relavent page attached to this post too. This is my program: PROGRAM PLC_PRG VAR Master: FbMbMasterSerial; xIsConnected: BOOL; xError: BOOL; iIndex: INT := 1; xTrigger: BOOL; utQuery : typMbQuery := ( bUnitId := 1, // The Modbus unit or slave address bFunctionCode := 4, // Function code for reading input registers uiReadAddress := 1829, // adress for the Power on off counter uiReadQuantity := 1 // Quantity of registers to read ); iStep: INT; oStatusModbus: WagoSysErrorBase.FbResult; utResponseModbus: typMbResponse; xConnect: BOOL := FALSE; delayTimer: TON; END_VAR Master( xConnect:= xConnect, I_Port:= _750_652_24_1, udiBaudrate:= 9600, usiDataBits:= 8, eParity:= WagoTypesCom.eTTYParity.Even, eStopBits:= WagoTypesCom.eTTYStopBits.One, eHandshake:= WagoTypesCom.eTTYHandshake.None, ePhysical:= WagoTypesCom.eTTYPhysicalLayer.RS485_HalfDuplex, xIsConnected=> xIsConnected, xError=> xError, oStatus=> oStatusModbus, eFrameType:= WagoAppPlcModbus.eMbFrameType.RTU, tTimeOut:= T#5S, utQuery:= utQuery, xTrigger:= xTrigger, utResponse:= utResponseModbus); delayTimer(IN := TRUE, PT := T#3S); // Use the Q output of the timer to set xConnect after the delay IF delayTimer.Q THEN xConnect := TRUE; END_IF CASE iStep OF 0: //Wacht totdat de master de poort geopend heeft IF xIsConnected THEN iStep := 1; END_IF 1: //Stuur request naar de slave xTrigger := TRUE; iStep := 2; 2: //Wacht totdat de master klaar is met het afhandelen van de request IF NOT xTrigger THEN iStep := 3; END_IF END_CASE The TON delay before opening the port is due to a an error I encountered when opening it straight away. This seems to be a bug, as described here. However, the TON solved that particular issue. I tried reading multiple registers, but like I said, I still always end up with the "Error time out". What else can I test or try at this point?
Last updated: 2024-02-24

Post by frank1001 on Codesys läuft nicht hoch CODESYS Forge talk (Post)
Bin Neuling bei Codesys. Habe Codesys 64 Bit installiert (3.5.1) Nach dem Starten geht nur ein EIngabefenster auf mit folgenden Inhalt. Weiter passiert nichts. Was kann ich machen ? //////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////// _/_/_/_/ _/_/_/_/ _/_/_/_/_/ _/_/_/_/_/_/ _/_/_/_/_/ _/_/ _/_/ _/_/_/_/_/ _/ _/_/_/_/_/_/ _/_/_/_/_/_/ _/_/_/_/_/_/ _/_/_/_/_/_/ _/_/_/_/_/_/ _/_/ _/_/ _/_/_/_/_/_/ _/_/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/_/_/_/ // // // // // //// //// //// //// /////// // // // // // // // // // // ///// ////// ////// ////// ////// ////// // ////// /// //// //// ///// ////// ///// // ///// _/ //////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////// 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>CM</cmp>, <id>0x00000001</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>CmpMemPool</cmp>, <id>0x0000001e</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>CmpLog</cmp>, <id>0x00000013</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>CmpSettings</cmp>, <id>0x0000001a</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysFile</cmp>, <id>0x00000104</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>CmpMemGC</cmp>, <id>0x0000001f</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysCom</cmp>, <id>0x00000100</id> <ver>3.5.19.10</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysCpuBreakpoints</cmp>, <id>0x00000305</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysCpuHandling</cmp>, <id>0x00000101</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysCrypto</cmp>, <id>0x00000141</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysDir</cmp>, <id>0x0000011b</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysEthernet</cmp>, <id>0x0000011c</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysEvent</cmp>, <id>0x00000102</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysExcept</cmp>, <id>0x00000103</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysFileStream</cmp>, <id>0x00000120</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysGraphicGDIPlus</cmp>, <id>0x0000012a</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysInt</cmp>, <id>0x00000106</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysInternalLib</cmp>, <id>0x00000107</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysMem</cmp>, <id>0x00000108</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysModule</cmp>, <id>0x00000109</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysMsgQ</cmp>, <id>0x0000010a</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysMutex</cmp>, <id>0x0000013a</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysNativeCommonControls</cmp>, <id>0x00000138</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysNativeControl</cmp>, <id>0x0000012f</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysOut</cmp>, <id>0x0000010b</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysPci</cmp>, <id>0x0000010c</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysPort</cmp>, <id>0x0000010d</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysProcess</cmp>, <id>0x0000010e</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysSem</cmp>, <id>0x0000010f</id> <ver>3.5.19.10</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysSemCount</cmp>, <id>0x00000139</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysSemProcess</cmp>, <id>0x00000119</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysShm</cmp>, <id>0x00000110</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysSocket</cmp>, <id>0x00000111</id> <ver>3.5.19.10</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysTarget</cmp>, <id>0x00000112</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysTask</cmp>, <id>0x00000114</id> <ver>3.5.19.10</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysTime</cmp>, <id>0x00000115</id> <ver>3.5.19.10</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysTimeRtc</cmp>, <id>0x00000127</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysTimer</cmp>, <id>0x00000116</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysWindow</cmp>, <id>0x00000117</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System: <cmp>SysWindowFileDialog</cmp>, <id>0x0000011a</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System|Dynamic: <cmp>SysTargetSoftMotion</cmp>, <id>0x00000112</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System|Dynamic: <cmp>SysCpuMultiCore</cmp>, <id>0x0000013d</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= System|Dynamic: <cmp>SysReadWriteLock</cmp>, <id>0x0000013e</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpAlarmManager</cmp>, <id>0x0000007c</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpApp</cmp>, <id>0x00000002</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpAppBP</cmp>, <id>0x00000073</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpAppForce</cmp>, <id>0x00000074</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpAsyncMgr</cmp>, <id>0x0000005f</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpAuditLog</cmp>, <id>0x000000a1</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpBinTagUtil</cmp>, <id>0x00000004</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpBinTagUtilIec</cmp>, <id>0x0000005c</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpBitmapPool</cmp>, <id>0x00000050</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpBlkDrvCom</cmp>, <id>0x00000006</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpBlkDrvShm</cmp>, <id>0x00000068</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpBlkDrvTcp</cmp>, <id>0x00000030</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpBlkDrvUdp</cmp>, <id>0x00000007</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAAAsyncMan</cmp>, <id>0x00004007</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAABehaviourModel</cmp>, <id>0x00004015</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAACallback</cmp>, <id>0x00004001</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAACanL2</cmp>, <id>0x00004004</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAADTUtil</cmp>, <id>0x00004013</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAAFile</cmp>, <id>0x00004008</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAAMemBlockMan</cmp>, <id>0x00004003</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAANetBaseServices</cmp>, <id>0x00004018</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAARealTimeClock</cmp>, <id>0x00004014</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAASdoClient</cmp>, <id>0x00004011</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAASdoServer</cmp>, <id>0x00004017</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAASegBufferMan</cmp>, <id>0x00004019</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAASerialCom</cmp>, <id>0x00004012</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAAStorage</cmp>, <id>0x0000007e</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAATick</cmp>, <id>0x00004009</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAATickUtil</cmp>, <id>0x00004010</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAATimer</cmp>, <id>0x00004016</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCAATypes</cmp>, <id>0x00004006</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpChannelClient</cmp>, <id>0x00000008</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpChannelClientIec</cmp>, <id>0x0000005d</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpChannelMgr</cmp>, <id>0x00000009</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpChannelServer</cmp>, <id>0x0000000a</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpChecksum</cmp>, <id>0x0000000b</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCodeMeter</cmp>, <id>0x0000007a</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCommunicationLib</cmp>, <id>0x0000000c</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCoreDump</cmp>, <id>0x00000083</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpCryptMD5</cmp>, <id>0x0000006a</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpDevice</cmp>, <id>0x0000000e</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpDynamicText</cmp>, <id>0x00000051</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpEventMgr</cmp>, <id>0x0000005b</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpFileTransfer</cmp>, <id>0x0000005e</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpIecStringUtils</cmp>, <id>0x0000007f</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpIecTask</cmp>, <id>0x00000011</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpIecVarAccess</cmp>, <id>0x00000060</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpIoDrvC</cmp>, <id>0x00000066</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpIoDrvIec</cmp>, <id>0x0000005a</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpIoMgr</cmp>, <id>0x00000012</id> <ver>3.5.19.10</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpIpc</cmp>, <id>0x0000001d</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpMonitor</cmp>, <id>0x00000014</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpMonitor2</cmp>, <id>0x00000032</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpNameServiceClient</cmp>, <id>0x00000015</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpNameServiceClientIec</cmp>, <id>0x0000011d</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpNameServiceServer</cmp>, <id>0x00000016</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpOPCUAClient</cmp>, <id>0x00000096</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpOPCUAProviderIecVarAccess</cmp>, <id>0x00000126</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpOPCUAServer</cmp>, <id>0x00000124</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpOPCUAStack</cmp>, <id>0x0000008d</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpObjectMgr</cmp>, <id>0x00000080</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpOpenSSL</cmp>, <id>0x00000033</id> <ver>3.5.19.10</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpPlcShell</cmp>, <id>0x00000128</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpRedundancy</cmp>, <id>0x00000129</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpRedundancyConnectionIP</cmp>, <id>0x0000ff03</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpRetain</cmp>, <id>0x00000017</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpRouter</cmp>, <id>0x00000018</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpSchedule</cmp>, <id>0x00000019</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpSecureChannel</cmp>, <id>0x00000090</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpSecurityManager</cmp>, <id>0x0000008e</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpSercos3Master</cmp>, <id>0x0000004c</id> <ver>3.1.2.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpSessionInformation</cmp>, <id>0x00000097</id> <ver>3.5.19.20</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpSrv</cmp>, <id>0x0000001c</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpSupervisor</cmp>, <id>0x0000008f</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpTraceMgr</cmp>, <id>0x00000070</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpUserDBFile</cmp>, <id>0x00000098</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpUserGroupsDBFile</cmp>, <id>0x00000099</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpUserMgr</cmp>, <id>0x00000061</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpUserObjectsDBFile</cmp>, <id>0x0000009c</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpVisuClientControllerHost</cmp>, <id>0x00000132</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpVisuHandler</cmp>, <id>0x00000054</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpVisuServer</cmp>, <id>0x00000057</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= <cmp>CmpXMLParser</cmp>, <id>0x00000058</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= Dynamic: <cmp>CmpTargetVisuStub</cmp>, <id>0x00000053</id> <ver>3.5.19.0</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= Dynamic: <cmp>CmpWebServer</cmp>, <id>0x00000071</id> <ver>3.5.19.10</ver> 2023-09-19T08:02:04.025Z: Cmp=CM, Class=1, Error=0, Info=10, pszInfo= Dynamic: <cmp>CmpWebServerHandlerV3</cmp>, <id>0x00000072</id> <ver>3.5.19.10</ver> 2023-09-19T08:02:04.045Z: Cmp=SysCpuMultiCore, Class=1, Error=0, Info=4, pszInfo= MultiCore support: [activated], all cores are used 2023-09-19T08:02:04.045Z: Cmp=SysCpuMultiCore, Class=1, Error=0, Info=4, pszInfo= Number of available cores: 8 2023-09-19T08:02:04.076Z: Cmp=CmpBlkDrvUdp, Class=1, Error=0, Info=6, pszInfo= Network interface: <ipaddress>192.168.1.167</ipaddress>, subnetmask <subnetmask>255.255.255.0</subnetmask> 2023-09-19T08:02:04.076Z: Cmp=CmpRouter, Class=1, Error=0, Info=4, pszInfo= Network interface <interface>ether 0</interface> at router <instance>0</instance> registered 2023-09-19T08:02:04.076Z: Cmp=CmpBlkDrvUdp, Class=1, Error=0, Info=6, pszInfo= Network interface: <ipaddress>192.168.56.1</ipaddress>, subnetmask <subnetmask>255.255.255.0</subnetmask> 2023-09-19T08:02:04.076Z: Cmp=CmpRouter, Class=1, Error=0, Info=4, pszInfo= Network interface <interface>ether 3</interface> at router <instance>1</instance> registered 2023-09-19T08:02:04.076Z: Cmp=CmpChannelMgr, Class=1, Error=0, Info=2, pszInfo= Running as network server 2023-09-19T08:02:04.076Z: Cmp=CmpChannelMgr, Class=1, Error=0, Info=1, pszInfo= Running as network client 2023-09-19T08:02:04.077Z: Cmp=CmpChannelServer, Class=1, Error=0, Info=0, pszInfo= <numofchannels>4</numofchannels> channels available, each of the size <buffersize>100000</buffersize> Bytes 2023-09-19T08:02:04.265Z: Cmp=CmpRedundancy, Class=1, Error=0, Info=0, pszInfo= Debug Messages not activated 2023-09-19T08:02:04.266Z: Cmp=CmpRedundancyConnectionIP, Class=1, Error=0, Info=0, pszInfo= Read connection settings... 2023-09-19T08:02:05.456Z: Cmp=CmpRouter, Class=1, Error=0, Info=4, pszInfo= Network interface <interface>BlkDrvShm</interface> at router <instance>2</instance> registered 2023-09-19T08:02:05.456Z: Cmp=CmpBlkDrvShm, Class=1, Error=0, Info=9, pszInfo= Local address (BlkDrvShm) set to 1 2023-09-19T08:02:05.463Z: Cmp=CmpBlkDrvTcp, Class=1, Error=0, Info=6, pszInfo= Local network address: <ipaddress>192.168.56.1</ipaddress> 2023-09-19T08:02:05.464Z: Cmp=CmpRouter, Class=1, Error=0, Info=4, pszInfo= Network interface <interface>BlkDrvTcp</interface> at router <instance>3</instance> registered 2023-09-19T08:02:05.507Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= No certificate for the OPC UA server available. 2023-09-19T08:02:05.507Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= Security policy allows plain text communication. Secure communication is deactivated. 2023-09-19T08:02:05.508Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= ********** 2023-09-19T08:02:05.508Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= OPC UA Server Started: 2023-09-19T08:02:05.508Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= Hostname: SIEMENS, Port: 4840 2023-09-19T08:02:05.508Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= URL: opc.tcp://SIEMENS:4840 2023-09-19T08:02:05.508Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= Loopbackadapter activated. 2023-09-19T08:02:05.508Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= All available networkadapters are used. 2023-09-19T08:02:05.508Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= Multithreading activated. 7 workers used. 2023-09-19T08:02:05.508Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= ************ 2023-09-19T08:02:05.513Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= Provider 'CODESYS_DefaultProvider' (version 0x3051300) registered at the OPC UA server. 2023-09-19T08:02:05.522Z: Cmp=CM, Class=1, Error=0, Info=0, pszInfo= ========================================================================= 2023-09-19T08:02:05.522Z: Cmp=CM, Class=1, Error=0, Info=4, pszInfo= CODESYS SoftMotion Win V3 x64 2023-09-19T08:02:05.522Z: Cmp=CM, Class=1, Error=0, Info=4, pszInfo= OS=Windows, CPU=x86, Arch=64Bit, Coding=C 2023-09-19T08:02:05.522Z: Cmp=CM, Class=1, Error=0, Info=6, pszInfo= <version>3.5.19.20</version> <builddate>Aug 1 2023</builddate> 2023-09-19T08:02:05.522Z: Cmp=CM, Class=1, Error=0, Info=5, pszInfo= Copyright CODESYS Development GmbH 2023-09-19T08:02:05.522Z: Cmp=CM, Class=1, Error=0, Info=0, pszInfo= ========================================================================= 2023-09-19T08:02:05.529Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= Provider 'AddressSpaceFragment Provider' (version 0x3051314) registered at the OPC UA server. 2023-09-19T08:02:05.530Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= Provider 'OPC UA for IEC-61131-3' (version 0x3051314) registered at the OPC UA server. 2023-09-19T08:02:05.530Z: Cmp=CmpOPCUAServer, Class=1, Error=0, Info=0, pszInfo= Provider 'AlarmManager' (version 0x3051314) registered at the OPC UA server. 2023-09-19T08:02:05.606Z: Cmp=CmpRouter, Class=1, Error=0, Info=1, pszInfo= Setting router <instance>0</instance> address to (00a7) 2023-09-19T08:02:05.606Z: Cmp=CmpRouter, Class=1, Error=0, Info=1, pszInfo= Setting router <instance>1</instance> address to (0001) 2023-09-19T08:02:05.606Z: Cmp=CmpRouter, Class=1, Error=0, Info=1, pszInfo= Setting router <instance>2</instance> address to (0001) 2023-09-19T08:02:05.606Z: Cmp=CmpRouter, Class=1, Error=0, Info=1, pszInfo= Setting router <instance>3</instance> address to (2ddc:c0a8:3801) 2023-09-19T08:02:05.611Z: Cmp=CM, Class=1, Error=0, Info=34, pszInfo= CODESYS Control ready 2023-09-19T08:02:05.796Z: Cmp=CM, Class=2, Error=0, Info=0, pszInfo=!!!! no runtime license - running in demo mode(~2 hours)
Last updated: 2023-09-19

Post by mogam on Internal error:System.NullReferenceException: The object reference was not set to an object instance. CODESYS Forge talk (Post)
Hi everyone, I have a my App that reads values from a shared memory than 2 variables x,y were calculated. here as you can see in my code: PROGRAM PLC_PRG VAR szName : STRING := '/SM'; ( Name of the shared memory.) uxiSize : __UXINT := 646 * 2 * SIZEOF(REAL); ( Size of the shared memory. ) hShm : RTS_IEC_HANDLE; ( Handle to the shared memory ) pStart : POINTER TO REAL; ( Pointer to the first element in the memory ) pData : POINTER TO REAL; ( Pointer, which is incremented until the last sign in the memory is reached. ) shared_data :ARRAY[0..645, 0..1] OF REAL; velocity : ARRAY[0..2] OF REAL; ( Velocity array ) position : ARRAY[0..2] OF REAL; ( Position array ) angleDepth : ARRAY[0..645, 0..1] OF REAL; ( Angle and depth array ) xEndOfMemory : BOOL; x : ARRAY[0..645] OF REAL := 1.0; y : ARRAY[0..645] OF REAL := 1.0; (* Result of actions at the memory. *) OpenResult : RTS_IEC_RESULT; ReadResult : RTS_IEC_RESULT; PointerResult : RTS_IEC_RESULT; DeleteResult : RTS_IEC_RESULT; CloseResult : RTS_IEC_RESULT; i : INT; END_VAR ( Open the shared memory ) hShm := SysSharedMemoryOpen2(szName, 0, ADR(uxiSize), ADR(OpenResult)); IF hShm <> RTS_INVALID_HANDLE THEN (* Read the entire shared memory table *) SysSharedMemoryRead(hShm:= hShm, ulOffset:= 0, pbyData:= ADR(shared_data), ulSize:= uxiSize, pResult:= ADR(ReadResult)); (* Fetch the pointer from the shared memory. The pointer is pointing to the first element address *) //pStart := SysSharedMemoryGetPointer(hShm, ADR(PointerResult)); (* Close the shared memory *) //CloseResult := SysSharedMemoryClose(hShm := hShm); (* Read velocity and position data from the shared memory *) FOR i := 0 TO 2 DO velocity[i] := shared_data[i, 0]; position[i] := shared_data[i, 1]; END_FOR; (* Read angle and depth data from the shared memory *) FOR i := 0 TO 645 DO angleDepth[i, 0] := shared_data[(i + 6), 0]; angleDepth[i, 1] := shared_data[(i + 6), 1]; END_FOR; FOR i := 0 TO 645 DO x[i] := angleDepth[i, 1]*COS(angleDepth[i, 0]); y[i] := angleDepth[i, 1]*SIN(angleDepth[i, 0]); END_FOR; END_IF For these values an XY-CHART needs to be done and when i create a visualisation and set the x data and y data when i try to compile, i recieve this error: ------ Übersetzungslauf gestartet: Applikation: Device.Read_App ------- Code typisieren ... [FEHLER] Internal error:System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt. bei _3S.CoDeSys.LanguageModelManager.LDateType.Accept(ITypeVisitor typvis) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IArrayType ) bei ..(_IPointerType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IPointerType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IPointerType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei _3S.CoDeSys.Compiler35140.Compiler.(_ICompileContext , _IPreCompileContext , _ICompileContext , IProgressCallback ) bei _3S.CoDeSys.Compiler35140.Compiler.(_ICompileContext , Boolean , Boolean , _IPreCompileContext , _IPreCompileContext , _ICompileContext , Boolean , Boolean& , IProgressCallback ) bei _3S.CoDeSys.Compiler35140.Compiler.(Guid , Boolean , Boolean , Boolean , Boolean& , _ICompileContext& , _ICompileContext& , IProgressCallback , Boolean , Boolean ) Kompilierung abgeschlossen -- 1 Fehler, 0 Warnungen Übersetzung abgeschlossen -- 1 Fehler, 0 Warnungen : Kein Download möglich!
Last updated: 2024-05-24

Post by mogam on Internal error:System.NullReferenceException: The object reference was not set to an object instance. CODESYS Forge talk (Post)
Hi everyone, I have a my App that reads values from a shared memory than 2 variables x,y were calculated. here as you can see in my code: PROGRAM PLC_PRG VAR szName : STRING := '/SM'; ( Name of the shared memory.) uxiSize : __UXINT := 646 * 2 * SIZEOF(REAL); ( Size of the shared memory. ) hShm : RTS_IEC_HANDLE; ( Handle to the shared memory ) pStart : POINTER TO REAL; ( Pointer to the first element in the memory ) pData : POINTER TO REAL; ( Pointer, which is incremented until the last sign in the memory is reached. ) shared_data :ARRAY[0..645, 0..1] OF REAL; velocity : ARRAY[0..2] OF REAL; ( Velocity array ) position : ARRAY[0..2] OF REAL; ( Position array ) angleDepth : ARRAY[0..645, 0..1] OF REAL; ( Angle and depth array ) xEndOfMemory : BOOL; x : ARRAY[0..645] OF REAL := 1.0; y : ARRAY[0..645] OF REAL := 1.0; (* Result of actions at the memory. *) OpenResult : RTS_IEC_RESULT; ReadResult : RTS_IEC_RESULT; PointerResult : RTS_IEC_RESULT; DeleteResult : RTS_IEC_RESULT; CloseResult : RTS_IEC_RESULT; i : INT; END_VAR ( Open the shared memory ) hShm := SysSharedMemoryOpen2(szName, 0, ADR(uxiSize), ADR(OpenResult)); IF hShm <> RTS_INVALID_HANDLE THEN (* Read the entire shared memory table *) SysSharedMemoryRead(hShm:= hShm, ulOffset:= 0, pbyData:= ADR(shared_data), ulSize:= uxiSize, pResult:= ADR(ReadResult)); (* Fetch the pointer from the shared memory. The pointer is pointing to the first element address *) //pStart := SysSharedMemoryGetPointer(hShm, ADR(PointerResult)); (* Close the shared memory *) //CloseResult := SysSharedMemoryClose(hShm := hShm); (* Read velocity and position data from the shared memory *) FOR i := 0 TO 2 DO velocity[i] := shared_data[i, 0]; position[i] := shared_data[i, 1]; END_FOR; (* Read angle and depth data from the shared memory *) FOR i := 0 TO 645 DO angleDepth[i, 0] := shared_data[(i + 6), 0]; angleDepth[i, 1] := shared_data[(i + 6), 1]; END_FOR; FOR i := 0 TO 645 DO x[i] := angleDepth[i, 1]*COS(angleDepth[i, 0]); y[i] := angleDepth[i, 1]*SIN(angleDepth[i, 0]); END_FOR; END_IF For these values an XY-CHART needs to be done and when i create a visualisation and set the x data and y data when i try to compile, i recieve this error: ------ Übersetzungslauf gestartet: Applikation: Device.Read_App ------- Code typisieren ... [FEHLER] Internal error:System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt. bei _3S.CoDeSys.LanguageModelManager.LDateType.Accept(ITypeVisitor typvis) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IArrayType ) bei ..(_IPointerType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IPointerType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IPointerType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei ..(_ISignature , _IPreCompileContext ) bei ..( ) bei ..(String ) bei ..(String , IVariable[]& , ISignature[]& ) bei ..(String , IVariable[]& , ISignature[]& , IScope& ) bei ..visit(_IVariableExpression , AccessFlag ) bei ..(_IUserdefType ) bei ..(_IVariable , IScope5 , _ICompileContext , _ISignature ) bei ..(_ISignature , IScope5 , _ICompileContext ) bei _3S.CoDeSys.Compiler35140.Compiler.(_ICompileContext , _IPreCompileContext , _ICompileContext , IProgressCallback ) bei _3S.CoDeSys.Compiler35140.Compiler.(_ICompileContext , Boolean , Boolean , _IPreCompileContext , _IPreCompileContext , _ICompileContext , Boolean , Boolean& , IProgressCallback ) bei _3S.CoDeSys.Compiler35140.Compiler.(Guid , Boolean , Boolean , Boolean , Boolean& , _ICompileContext& , _ICompileContext& , IProgressCallback , Boolean , Boolean ) Kompilierung abgeschlossen -- 1 Fehler, 0 Warnungen Übersetzung abgeschlossen -- 1 Fehler, 0 Warnungen : Kein Download möglich!
Last updated: 2024-05-24

Post by munwar on Temu Coupon Code |^•^100% off^•^| [^•^╭⁠☞ {acq794628^•^] for New and Existing Customers. CODESYS Forge talk (Post)
ready to elevate your shopping experience with Temu's incredible offers! Use our exclusive Temu coupon code $100 off [acq794628] for existing customers or for new users to enjoy massive savings on your next purchase. Temu: Your Gateway to Unbeatable Deals Temu has taken the e-commerce world by storm, offering a vast array of products at jaw-dropping prices. With free shipping to 67 countries and lightning-fast delivery, it's no wonder Temu has become a go-to destination for savvy shoppers. . But the savings don't stop there – let's explore how you can maximize your discounts with our Temu coupon $100 off for existing customers! Exclusive Temu Coupon Codes for Maximum Savings Here's a quick rundown of our top Temu coupon codes: • acq794628: Temu coupon code $100 off for new users • acq794628: Temu coupon $100 off for customers • acq794628: Temu $100 extra off (Temu 100$ coupon code) • acq794628: $100 discount for new users (100 off Temu coupon) • acq794628: $100 coupon for existing and new users (Temu coupon code 100 off) Why Choose Temu? Before we dive deeper into the Temu $100 coupon bundle, let's look at what makes Temu stand out: 1. Vast product selection 2. Unbeatable prices 3. Fast and free shipping 4. User-friendly platform 5. Regular promotions and discounts How to Use Your Temu Coupon Code $100 Off Using your Temu coupon code $100 off is a breeze. Here's a step-by-step guide to help you make the most of your savings: 1. Browse Temu's extensive catalog 2. Add items to your cart 3. Proceed to checkout 4. Enter your Temu coupon code $100 off in the designated field 5. Watch your total drop by $100! Tips for Maximizing Your Savings To get the most bang for your buck,. consider these strategies: 1. Combine your Temu coupon $100 off with ongoing sales 2. Look for bundle deals to increase your savings 3. Check Temu's daily deals for additional discounts 4. Sign up for Temu's newsletter to stay informed about upcoming promotions Temu Coupon $100 Off: Frequently Asked Questions You might be wondering about the details of these incredible offers. Let's address some common questions: Is the Temu $100 off coupon legit? Absolutely! The Temu 100 off coupon is legit and has been verified by countless happy customers. You can shop with confidence knowing that your Temu coupon code $100 off will be honored at checkout. Can I use the Temu coupon $100 off for existing customers on my first order? While the Temu coupon $100 off for existing customers is designed for repeat shoppers, new users can take advantage of the Temu coupon code $100 off for new users. Both offers provide the same great savings! How often can I use a Temu coupon $100 off? Typically, these coupons are one-time use per account. However, Temu frequently releases new promotions, so keep an eye out for fresh opportunities to save! Explore Temu's Best Deals with Your $100 Off Coupon Now that you're armed with your Temu coupon code $100 off, let's look at some popular categories where you can apply your savings: • Electronics • Fashion • Home & Garden • Beauty & Personal Care • Sports & Outdoors Hot Deals Alert: Temu Coupon Codes Don't miss out on these amazing offers: • acq794628: Temu coupon $100 off for existing customers free shipping • acq794628: Temu coupon $100 off for new users • acq794628: Temu coupon codes 100 off • acq794628: Temu coupon $100 off code • acq794628: Temu coupon $100 off first-time user Make the Most of Your Temu Shopping Experience As you explore Temu's vast catalog with your Temu coupon $100 off in hand, keep these tips in mind: 1. Read product reviews from other customers 2. Check sizing charts for clothing and shoes 3. Compare similar items to find the best value 4. Take advantage of Temu's customer service for any questions The Temu Difference What sets Temu apart from other e-commerce platforms? It's not just about the Temu $100 coupon bundle – it's the overall shopping experience. With a user-friendly interface, a wide range of products, and unbeatable prices, Temu is revolutionizing online shopping. I've been using Temu for months now, and I can confidently say that the savings are real. Whether you're a new user looking to score a great deal with a Temu coupon code $100 off first order or an existing customer ready to use your Temu coupon $100 off for existing customers first order, you're in for a treat. Conclusion: Shop Smart with Temu In today's economy, finding ways to save money without sacrificing quality is crucial. That's why I'm thrilled to share these Temu coupon $100 off opportunities with you. Whether you're shopping for yourself or looking for the perfect gift, Temu has you covered. Remember, the key to maximizing your savings is to stay informed about the latest promotions. Bookmark this page and check back regularly for updates on Temu coupon codes and deals. And don't forget – your Temu coupon code $100 off [acq794628] for existing customers is waiting to be used! Happy shopping, and enjoy your incredible savings with Temu! .
Last updated: 2024-10-26

Post by munwar on Temu coupon code ⁠╭⁠☞ {acq794628}: ||^°$100 off.^° || CODESYS Forge talk (Post)
ready to elevate your shopping experience with Temu's incredible offers! Use our exclusive Temu coupon code $100 off [acq794628] for existing customers or for new users to enjoy massive savings on your next purchase. Temu: Your Gateway to Unbeatable Deals Temu has taken the e-commerce world by storm, offering a vast array of products at jaw-dropping prices. With free shipping to 67 countries and lightning-fast delivery, it's no wonder Temu has become a go-to destination for savvy shoppers. . But the savings don't stop there – let's explore how you can maximize your discounts with our Temu coupon $100 off for existing customers! Exclusive Temu Coupon Codes for Maximum Savings Here's a quick rundown of our top Temu coupon codes: • acq794628: Temu coupon code $100 off for new users • acq794628: Temu coupon $100 off for customers • acq794628: Temu $100 extra off (Temu 100$ coupon code) • acq794628: $100 discount for new users (100 off Temu coupon) • acq794628: $100 coupon for existing and new users (Temu coupon code 100 off) Why Choose Temu? Before we dive deeper into the Temu $100 coupon bundle, let's look at what makes Temu stand out: 1. Vast product selection 2. Unbeatable prices 3. Fast and free shipping 4. User-friendly platform 5. Regular promotions and discounts How to Use Your Temu Coupon Code $100 Off Using your Temu coupon code $100 off is a breeze. Here's a step-by-step guide to help you make the most of your savings: 1. Browse Temu's extensive catalog 2. Add items to your cart 3. Proceed to checkout 4. Enter your Temu coupon code $100 off in the designated field 5. Watch your total drop by $100! Tips for Maximizing Your Savings To get the most bang for your buck,. consider these strategies: 1. Combine your Temu coupon $100 off with ongoing sales 2. Look for bundle deals to increase your savings 3. Check Temu's daily deals for additional discounts 4. Sign up for Temu's newsletter to stay informed about upcoming promotions Temu Coupon $100 Off: Frequently Asked Questions You might be wondering about the details of these incredible offers. Let's address some common questions: Is the Temu $100 off coupon legit? Absolutely! The Temu 100 off coupon is legit and has been verified by countless happy customers. You can shop with confidence knowing that your Temu coupon code $100 off will be honored at checkout. Can I use the Temu coupon $100 off for existing customers on my first order? While the Temu coupon $100 off for existing customers is designed for repeat shoppers, new users can take advantage of the Temu coupon code $100 off for new users. Both offers provide the same great savings! How often can I use a Temu coupon $100 off? Typically, these coupons are one-time use per account. However, Temu frequently releases new promotions, so keep an eye out for fresh opportunities to save! Explore Temu's Best Deals with Your $100 Off Coupon Now that you're armed with your Temu coupon code $100 off, let's look at some popular categories where you can apply your savings: • Electronics • Fashion • Home & Garden • Beauty & Personal Care • Sports & Outdoors Hot Deals Alert: Temu Coupon Codes Don't miss out on these amazing offers: • acq794628: Temu coupon $100 off for existing customers free shipping • acq794628: Temu coupon $100 off for new users • acq794628: Temu coupon codes 100 off • acq794628: Temu coupon $100 off code • acq794628: Temu coupon $100 off first-time user Make the Most of Your Temu Shopping Experience As you explore Temu's vast catalog with your Temu coupon $100 off in hand, keep these tips in mind: 1. Read product reviews from other customers 2. Check sizing charts for clothing and shoes 3. Compare similar items to find the best value 4. Take advantage of Temu's customer service for any questions The Temu Difference What sets Temu apart from other e-commerce platforms? It's not just about the Temu $100 coupon bundle – it's the overall shopping experience. With a user-friendly interface, a wide range of products, and unbeatable prices, Temu is revolutionizing online shopping. I've been using Temu for months now, and I can confidently say that the savings are real. Whether you're a new user looking to score a great deal with a Temu coupon code $100 off first order or an existing customer ready to use your Temu coupon $100 off for existing customers first order, you're in for a treat. Conclusion: Shop Smart with Temu In today's economy, finding ways to save money without sacrificing quality is crucial. That's why I'm thrilled to share these Temu coupon $100 off opportunities with you. Whether you're shopping for yourself or looking for the perfect gift, Temu has you covered. Remember, the key to maximizing your savings is to stay informed about the latest promotions. Bookmark this page and check back regularly for updates on Temu coupon codes and deals. And don't forget – your Temu coupon code $100 off [acq794628] for existing customers is waiting to be used! Happy shopping, and enjoy your incredible savings with Temu! .
Last updated: 2024-10-26

Post by fukre on Temu Coupon Code ☛{" acq794628."}: |Get "$100 off" + 30% Discount| CODESYS Forge talk (Post)
Ready to elevate your shopping experience with Temu's incredible offers! Use our exclusive Temu coupon code $100 off [acq794628] for existing customers or for new users to enjoy massive savings on your next purchase. Temu: Your Gateway to Unbeatable Deals Temu has taken the e-commerce world by storm, offering a vast array of products at jaw-dropping prices. With free shipping to 67 countries and lightning-fast delivery, it's no wonder Temu has become a go-to destination for savvy shoppers. . But the savings don't stop there – let's explore how you can maximize your discounts with our Temu coupon $100 off for existing customers! Exclusive Temu Coupon Codes for Maximum Savings Here's a quick rundown of our top Temu coupon codes: • acq794628: Temu coupon code $100 off for new users • acq794628: Temu coupon $100 off for customers • acq794628: Temu $100 extra off (Temu 100$ coupon code) • acq794628: $100 discount for new users (100 off Temu coupon) • acq794628: $100 coupon for existing and new users (Temu coupon code 100 off) Why Choose Temu? Before we dive deeper into the Temu $100 coupon bundle, let's look at what makes Temu stand out: 1. Vast product selection 2. Unbeatable prices 3. Fast and free shipping 4. User-friendly platform 5. Regular promotions and discounts How to Use Your Temu Coupon Code $100 Off Using your Temu coupon code $100 off is a breeze. Here's a step-by-step guide to help you make the most of your savings: 1. Browse Temu's extensive catalog 2. Add items to your cart 3. Proceed to checkout 4. Enter your Temu coupon code $100 off in the designated field 5. Watch your total drop by $100! Tips for Maximizing Your Savings To get the most bang for your buck,. consider these strategies: 1. Combine your Temu coupon $100 off with ongoing sales 2. Look for bundle deals to increase your savings 3. Check Temu's daily deals for additional discounts 4. Sign up for Temu's newsletter to stay informed about upcoming promotions Temu Coupon $100 Off: Frequently Asked Questions You might be wondering about the details of these incredible offers. Let's address some common questions: Is the Temu $100 off coupon legit? Absolutely! The Temu 100 off coupon is legit and has been verified by countless happy customers. You can shop with confidence knowing that your Temu coupon code $100 off will be honored at checkout. Can I use the Temu coupon $100 off for existing customers on my first order? While the Temu coupon $100 off for existing customers is designed for repeat shoppers, new users can take advantage of the Temu coupon code $100 off for new users. Both offers provide the same great savings! How often can I use a Temu coupon $100 off? Typically, these coupons are one-time use per account. However, Temu frequently releases new promotions, so keep an eye out for fresh opportunities to save! Explore Temu's Best Deals with Your $100 Off Coupon Now that you're armed with your Temu coupon code $100 off, let's look at some popular categories where you can apply your savings: • Electronics • Fashion • Home & Garden • Beauty & Personal Care • Sports & Outdoors Hot Deals Alert: Temu Coupon Codes Don't miss out on these amazing offers: • acq794628: Temu coupon $100 off for existing customers free shipping • acq794628: Temu coupon $100 off for new users • acq794628: Temu coupon codes 100 off • acq794628: Temu coupon $100 off code • acq794628: Temu coupon $100 off first-time user Make the Most of Your Temu Shopping Experience As you explore Temu's vast catalog with your Temu coupon $100 off in hand, keep these tips in mind: 1. Read product reviews from other customers 2. Check sizing charts for clothing and shoes 3. Compare similar items to find the best value 4. Take advantage of Temu's customer service for any questions The Temu Difference What sets Temu apart from other e-commerce platforms? It's not just about the Temu $100 coupon bundle – it's the overall shopping experience. With a user-friendly interface, a wide range of products, and unbeatable prices, Temu is revolutionizing online shopping. I've been using Temu for months now, and I can confidently say that the savings are real. Whether you're a new user looking to score a great deal with a Temu coupon code $100 off first order or an existing customer ready to use your Temu coupon $100 off for existing customers first order, you're in for a treat. Conclusion: Shop Smart with Temu In today's economy, finding ways to save money without sacrificing quality is crucial. That's why I'm thrilled to share these Temu coupon $100 off opportunities with you. Whether you're shopping for yourself or looking for the perfect gift, Temu has you covered. Remember, the key to maximizing your savings is to stay informed about the latest promotions. Bookmark this page and check back regularly for updates on Temu coupon codes and deals. And don't forget – your Temu coupon code $100 off [acq794628] for existing customers is waiting to be used! Happy shopping, and enjoy your incredible savings with Temu! .
Last updated: 2024-10-26

Post by lsislsis on SIGABRT Error CODESYS Forge talk (Post)
Please help us. Why we take this errors. We try different versions like 4.12.0 and 4.13.0 with same results. ;*********;<loggername>codesyscontrol.log</loggername>;<logoptions>; <enable>1</enable>; <type>normal</type>; <timestamp>rtc high resolution</timestamp>; <deactivatable>0</deactivatable>; <dump>always</dump>; <filter>0x0000000f<filter>; <maxentries>100000</maxentries>; <maxfiles>1</maxfiles>; <maxfilesize>1000000</maxfilesize>;</filter></filter></logoptions>;<entries>;Timestamp, CmpId, ClassId, ErrorId, InfoId, InfoText;ClassId: LOG_INFO =1;ClassId: LOG_WARNING =2;ClassId: LOG_ERROR =4;ClassId: LOG_EXCEPTION =8;ClassId: LOG_DEBUG =16;ClassId: LOG_PRINTF =32;ClassId: LOG_COM =64;</entries>;*********2024-11-05T08:23:59.728Z, 0x0000100c, 1, 0, 0, VisuFctCheckForUnusedClients: Removing Client with IEC-ID: 1 Time delta: T#33s1ms Locks: Paintbuffer: TRUE 2024-11-05T08:23:59.728Z, 0x0000100c, 1, 0, 0, VisuFctCheckForUnusedClients: Successfully Removed Client at Address: 547195449944, IEC-ID was: 1, EXT-ID: 431000373 2024-11-05T08:28:57.913Z, 0x0000100c, 1, 0, 0, Visu_PRG: Creating Client for Extern-ID: 347055752 2024-11-05T08:28:57.926Z, 0x0000100c, 1, 0, 0, Visu_PRG: Creating Client successful for Extern-ID: 347055752 Returned IEC-ID: 1 2024-11-05T08:30:51.103Z, 0x0000100c, 1, 0, 0, Visu_PRG: Successfully Removed Client with IEC-ID: 1, Extern-ID: 347055752 2024-11-05T08:37:36.517Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state* We recommend a reboot of the controller now! 2024-11-05T08:37:36.517Z, 0x00000111, 8, 260, 3, #### Exception: HANDLED EXCPT <excpt>NonContinuable</excpt> in CH_COMM_CYCLE 2024-11-05T08:47:42.117Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state We recommend a reboot of the controller now! 2024-11-05T08:47:42.117Z, 0x00000111, 8, 260, 3, #### Exception: HANDLED EXCPT <excpt>NonContinuable</excpt> in CH_COMM_CYCLE 2024-11-05T09:14:41.316Z, 0x00000071, 1, 0, 13, Webserver stopped 2024-11-05T09:14:44.485Z, 0x0000013d, 1, 0, 4, Number of licensed cores for IEC-tasks: 1 from 4 2024-11-05T09:14:44.487Z, 0x0000013d, 1, 0, 4, Number of licensed cores for IEC-tasks: 4 from 4 2024-11-05T09:14:44.540Z, 0x00000002, 1, 0, 2, Application [<app>Application</app>] loaded via [Download] 2024-11-05T09:14:55.894Z, 0x00001012, 1, 0, 0, Opened alarm storage file, version: 6 2024-11-05T09:14:55.951Z, 0x0000100c, 1, 0, 0, Visuinitialization starting. 2024-11-05T09:14:55.983Z, 0x0000100c, 1, 0, 0, Visuinitialization done. 2024-11-05T09:14:55.995Z, 0x00000071, 1, 0, 12, Webserver started 2024-11-05T09:15:01.753Z, 0x0000100c, 1, 0, 0, Visu_PRG: Creating Client for Extern-ID: 2279884529 2024-11-05T09:15:01.753Z, 0x0000100c, 1, 0, 0, Visu_PRG: Creating Client successful for Extern-ID: 2279884529 Returned IEC-ID: 0 2024-11-05T09:34:44.667Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state We recommend a reboot of the controller now! 2024-11-05T09:34:44.667Z, 0x00000111, 8, 260, 3, #### Exception: More than 2 exceptions in CH_COMM_CYCLE: Stop logging 2024-11-05T10:13:26.867Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state We recommend a reboot of the controller now! 2024-11-05T10:15:21.966Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state We recommend a reboot of the controller now! 2024-11-05T10:19:12.167Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state We recommend a reboot of the controller now! 2024-11-05T10:26:02.566Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state We recommend a reboot of the controller now! 2024-11-05T10:31:42.866Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state We recommend a reboot of the controller now! 2024-11-05T11:01:54.468Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state We recommend a reboot of the controller now! 2024-11-05T11:09:29.868Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state We recommend a reboot of the controller now! 2024-11-05T11:14:44.540Z, 0x0000100d, 1, 0, 0, Demo mode expired. 2024-11-05T11:27:20.868Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state We recommend a reboot of the controller now! * Regards
Last updated: 2024-11-05

Post by svenkaro on Codesyscontrol.service stoppt nach 30s CODESYS Forge talk (Post)
Hallo nano, anbei das Logfile ;********* ;<loggername>codesyscontrol.log</loggername> ;<logoptions> ; <enable>1</enable> ; <type>normal</type> ; <timestamp>rtc high resolution</timestamp> ; <deactivatable>0</deactivatable> ; <dump>always</dump> ; <filter>0x0000000f<filter> ; <maxentries>100000</maxentries> ; <maxfiles>1</maxfiles> ; <maxfilesize>1000000</maxfilesize> ;</filter></filter></logoptions> ;<entries> ;Timestamp, CmpId, ClassId, ErrorId, InfoId, InfoText ;ClassId: LOG_INFO =1 ;ClassId: LOG_WARNING =2 ;ClassId: LOG_ERROR =4 ;ClassId: LOG_EXCEPTION =8 ;ClassId: LOG_DEBUG =16 ;ClassId: LOG_PRINTF =32 ;ClassId: LOG_COM =64 ;</entries> ;********* 2024-06-20T06:07:12.085Z, 0x0000013d, 16, 0, 0, OpenCpusetCpusEffective: using core(s) "0-3" from /sys/fs/cgroup/cpuset.cpus.effective 2024-06-20T06:07:12.085Z, 0x00000109, 16, 0, 0, SysModuleLoad: libCmpBACnet.so: 0x92ae530 2024-06-20T06:07:12.085Z, 0x00000109, 16, 0, 0, SysModuleLoad: libCmpBACnet2.so: 0x92af008 2024-06-20T06:07:12.085Z, 0x00000109, 16, 0, 0, SysModuleLoad: libCmpPLCHandler.so: 0x92afb08 2024-06-20T06:07:12.085Z, 0x00000109, 16, 0, 0, SysModuleLoad: libCmpGwClient.so: 0x92affe8 2024-06-20T06:07:12.085Z, 0x00000109, 16, 0, 0, SysModuleLoad: libCmpXMLParser.so: 0x92b04c0 2024-06-20T06:07:12.085Z, 0x00000109, 16, 0, 0, SysModuleLoad: libCmpGwClientCommDrvTcp.so: 0x92b09a0 2024-06-20T06:07:12.086Z, 0x00000013, 1, 0, 0, <logoptions> 2024-06-20T06:07:12.086Z, 0x00000013, 1, 0, 0, <benable>1</benable> 2024-06-20T06:07:12.086Z, 0x00000013, 1, 0, 0, <type>normal</type> 2024-06-20T06:07:12.086Z, 0x00000013, 1, 0, 0, <timestamp>rtc high resolution</timestamp> 2024-06-20T06:07:12.086Z, 0x00000013, 1, 0, 0, <disableable>0</disableable> 2024-06-20T06:07:12.086Z, 0x00000013, 1, 0, 0, <filter>0x0000000f</filter> 2024-06-20T06:07:12.086Z, 0x00000013, 1, 0, 0, <maxentries>100000</maxentries> 2024-06-20T06:07:12.086Z, 0x00000013, 1, 0, 0, <maxfiles>1</maxfiles> 2024-06-20T06:07:12.086Z, 0x00000013, 1, 0, 0, <maxfilesize>1000000</maxfilesize> 2024-06-20T06:07:12.086Z, 0x00000013, 1, 0, 0, </logoptions> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>CM</cmp>, <id>0x00000001</id> <ver>3.5.19.61</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>CmpMemPool</cmp>, <id>0x0000001e</id> <ver>3.5.19.60</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>CmpLog</cmp>, <id>0x00000013</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>CmpSettings</cmp>, <id>0x0000001a</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysFile</cmp>, <id>0x00000104</id> <ver>3.5.19.50</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>CmpMemGC</cmp>, <id>0x0000001f</id> <ver>3.5.19.20</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysCom</cmp>, <id>0x00000100</id> <ver>3.5.19.10</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysCpuHandling</cmp>, <id>0x00000101</id> <ver>3.5.19.20</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysCpuMultiCore</cmp>, <id>0x0000013d</id> <ver>3.5.19.20</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysCrypto</cmp>, <id>0x00000141</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysDir</cmp>, <id>0x0000011b</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysEthernet</cmp>, <id>0x0000011c</id> <ver>3.5.19.20</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysEvent</cmp>, <id>0x00000102</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysExcept</cmp>, <id>0x00000103</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysInternalLib</cmp>, <id>0x00000107</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysMem</cmp>, <id>0x00000108</id> <ver>3.5.19.50</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysModule</cmp>, <id>0x00000109</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysMsgQ</cmp>, <id>0x0000010a</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysMutex</cmp>, <id>0x0000013a</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysOut</cmp>, <id>0x0000010b</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysProcess</cmp>, <id>0x0000010e</id> <ver>3.5.19.50</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysSem</cmp>, <id>0x0000010f</id> <ver>3.5.19.10</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysSemCount</cmp>, <id>0x00000139</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysSemProcess</cmp>, <id>0x00000119</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysShm</cmp>, <id>0x00000110</id> <ver>3.5.19.50</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysSocket</cmp>, <id>0x00000111</id> <ver>3.5.19.30</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysTarget</cmp>, <id>0x00000112</id> <ver>3.5.19.61</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysTask</cmp>, <id>0x00000114</id> <ver>3.5.19.10</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysTime</cmp>, <id>0x00000115</id> <ver>3.5.19.10</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysTimeRtc</cmp>, <id>0x00000127</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, System: <cmp>SysTimer</cmp>, <id>0x00000116</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpAlarmManager</cmp>, <id>0x0000007c</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpApp</cmp>, <id>0x00000002</id> <ver>3.5.19.60</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpAppBP</cmp>, <id>0x00000073</id> <ver>3.5.19.20</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpAppForce</cmp>, <id>0x00000074</id> <ver>3.5.19.20</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpAsyncMgr</cmp>, <id>0x0000005f</id> <ver>3.5.19.20</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpAuditLog</cmp>, <id>0x000000a1</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpBinTagUtil</cmp>, <id>0x00000004</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpBinTagUtilIec</cmp>, <id>0x0000005c</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpBitmapPool</cmp>, <id>0x00000050</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpBlkDrvTcp</cmp>, <id>0x00000030</id> <ver>3.5.19.50</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpBlkDrvUdp</cmp>, <id>0x00000007</id> <ver>3.5.19.30</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAAAsyncMan</cmp>, <id>0x00004007</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAABehaviourModel</cmp>, <id>0x00004015</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAACallback</cmp>, <id>0x00004001</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAACanL2</cmp>, <id>0x00004004</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAADTUtil</cmp>, <id>0x00004013</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAAFile</cmp>, <id>0x00004008</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAAMemBlockMan</cmp>, <id>0x00004003</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAANetBaseServices</cmp>, <id>0x00004018</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAARealTimeClock</cmp>, <id>0x00004014</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAASdoClient</cmp>, <id>0x00004011</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAASdoServer</cmp>, <id>0x00004017</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAASegBufferMan</cmp>, <id>0x00004019</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAASerialCom</cmp>, <id>0x00004012</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAAStorage</cmp>, <id>0x0000007e</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAATick</cmp>, <id>0x00004009</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAATickUtil</cmp>, <id>0x00004010</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAATimer</cmp>, <id>0x00004016</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCAATypes</cmp>, <id>0x00004006</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpChannelClient</cmp>, <id>0x00000008</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpChannelClientIec</cmp>, <id>0x0000005d</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpChannelMgr</cmp>, <id>0x00000009</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpChannelServer</cmp>, <id>0x0000000a</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCharDevice</cmp>, <id>0x00000300</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpChecksum</cmp>, <id>0x0000000b</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCodeMeter</cmp>, <id>0x0000007a</id> <ver>3.5.19.50</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCommunicationLib</cmp>, <id>0x0000000c</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCoreDump</cmp>, <id>0x00000083</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpCryptMD5</cmp>, <id>0x0000006a</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpDevice</cmp>, <id>0x0000000e</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpDynamicText</cmp>, <id>0x00000051</id> <ver>3.5.19.30</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpEL6751CanDrv</cmp>, <id>0x00005f0b</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpEventMgr</cmp>, <id>0x0000005b</id> <ver>3.5.19.30</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpEventMgrUnixBackend</cmp>, <id>0x000000a4</id> <ver>4.11.0.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpFileTransfer</cmp>, <id>0x0000005e</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpIecStringUtils</cmp>, <id>0x0000007f</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpIecTask</cmp>, <id>0x00000011</id> <ver>3.5.19.30</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpIecVarAccess</cmp>, <id>0x00000060</id> <ver>3.5.19.30</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpIoDrvIec</cmp>, <id>0x0000005a</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpIoMgr</cmp>, <id>0x00000012</id> <ver>3.5.19.30</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpKnxStack</cmp>, <id>0x0000004d</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpLinuxInterrupt</cmp>, <id>0x000000a2</id> <ver>3.5.17.10</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpLinuxRTDiag</cmp>, <id>0x000000a7</id> <ver>4.11.0.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpMonitor2</cmp>, <id>0x00000032</id> <ver>3.5.19.20</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpNameServiceClient</cmp>, <id>0x00000015</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpNameServiceClientIec</cmp>, <id>0x0000011d</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpNameServiceServer</cmp>, <id>0x00000016</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpOPCUAClient</cmp>, <id>0x00000096</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpOPCUAProviderIecVarAccess</cmp>, <id>0x00000126</id> <ver>3.5.19.50</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpOPCUAServer</cmp>, <id>0x00000124</id> <ver>3.5.19.30</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpOPCUAStack</cmp>, <id>0x0000008d</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpOpenSSL</cmp>, <id>0x00000033</id> <ver>3.5.19.61</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpPlcShellLinux</cmp>, <id>0x00000128</id> <ver>4.11.0.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpPlcShellLinuxBackend</cmp>, <id>0x000000a5</id> <ver>4.11.0.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpRasPi</cmp>, <id>0x00000089</id> <ver>4.11.0.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpRedundancy</cmp>, <id>0x00000129</id> <ver>3.5.19.30</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpRedundancyConnectionIP</cmp>, <id>0x0000ff03</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpRetain</cmp>, <id>0x00000017</id> <ver>3.5.19.50</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpRouter</cmp>, <id>0x00000018</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpRunStopSwitch</cmp>, <id>0x000000a6</id> <ver>4.11.0.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpSchedule</cmp>, <id>0x00000019</id> <ver>3.5.19.50</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpSecureChannel</cmp>, <id>0x00000090</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpSecurityManager</cmp>, <id>0x0000008e</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpSessionInformation</cmp>, <id>0x00000097</id> <ver>3.5.19.20</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpSocketCanDrv</cmp>, <id>0x00005f0d</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpSocketUnix</cmp>, <id>0x000000a3</id> <ver>4.11.0.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpSrv</cmp>, <id>0x0000001c</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpTraceMgr</cmp>, <id>0x00000070</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpUserDBFile</cmp>, <id>0x00000098</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpUserGroupsDBFile</cmp>, <id>0x00000099</id> <ver>3.5.19.50</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpUserMgr</cmp>, <id>0x00000061</id> <ver>3.5.19.50</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpUserObjectsDBFile</cmp>, <id>0x0000009c</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpVisuHandler</cmp>, <id>0x00000054</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpVisuServer</cmp>, <id>0x00000057</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpWebServer</cmp>, <id>0x00000071</id> <ver>3.5.19.30</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, <cmp>CmpWebServerHandlerV3</cmp>, <id>0x00000072</id> <ver>3.5.19.10</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, Dynamic: <cmp>CmpBACnet</cmp>, <id>0x00000400</id> <ver>3.5.19.50</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, Dynamic: <cmp>CmpBACnet2</cmp>, <id>0x00000401</id> <ver>3.5.19.10</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, Dynamic: <cmp>CmpPLCHandler</cmp>, <id>0x0000002a</id> <ver>3.5.19.61</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, Dynamic: <cmp>CmpGwClient</cmp>, <id>0x00000021</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, Dynamic: <cmp>CmpXMLParser</cmp>, <id>0x00000058</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.086Z, 0x00000001, 1, 0, 10, Dynamic: <cmp>CmpGwClientCommDrvTcp</cmp>, <id>0x00000022</id> <ver>3.5.19.0</ver> 2024-06-20T06:07:12.125Z, 0x0000013d, 1, 0, 4, MultiCore support: [activated], all cores are used 2024-06-20T06:07:12.125Z, 0x0000013d, 1, 0, 4, Number of available cores: 4 2024-06-20T06:07:12.134Z, 0x00000401, 2, 0, 0, !!!! Warning: component CmpBACnet loaded already 2024-06-20T06:07:12.184Z, 0x00000007, 1, 0, 6, Network interface: <ipaddress>10.94.25.39</ipaddress>, subnetmask <subnetmask>255.255.255.0</subnetmask> 2024-06-20T06:07:12.184Z, 0x00000018, 1, 0, 4, Network interface <interface>ether 2</interface> at router <instance>0</instance> registered 2024-06-20T06:07:12.185Z, 0x00000009, 1, 0, 2, Running as network server 2024-06-20T06:07:12.185Z, 0x00000009, 1, 0, 1, Running as network client 2024-06-20T06:07:12.186Z, 0x0000000a, 1, 0, 0, <numofchannels>4</numofchannels> channels available, each of the size <buffersize>100000</buffersize> Bytes 2024-06-20T06:07:12.254Z, 0x00000400, 1, 0, 0, CmpBACnet 1024 BACstack information 2024-06-20T06:07:12.254Z, 0x00000400, 1, 0, 0, version = 15.0.1.1 2024-06-20T06:07:12.254Z, 0x00000400, 1, 0, 0, __BYTE_ORDER = 1234 2024-06-20T06:07:12.254Z, 0x00000400, 1, 0, 0, TARGET_IEEE_FP_FORMAT = 1 2024-06-20T06:07:12.254Z, 0x00000400, 1, 0, 0, TARGET_FP_BIG_ENDIAN = 0 2024-06-20T06:07:12.254Z, 0x00000400, 1, 0, 0, TARGET_DP_BIG_ENDIAN = 0 2024-06-20T06:07:12.254Z, 0x00000400, 1, 0, 0, TARGET_INTEGRAL_BIG_ENDIAN = 0 2024-06-20T06:07:12.254Z, 0x00000400, 1, 0, 0, TARGET_USED_ALIGNMENT = 4 2024-06-20T06:07:12.254Z, 0x00000401, 1, 0, 0, CmpBACnet2 1025 BACstack information 2024-06-20T06:07:12.254Z, 0x00000401, 1, 0, 0, version = 25.1.5.1 2024-06-20T06:07:12.254Z, 0x00000401, 1, 0, 0, __BYTE_ORDER = 1234 2024-06-20T06:07:12.254Z, 0x00000401, 1, 0, 0, TARGET_IEEE_FP_FORMAT = 1 2024-06-20T06:07:12.254Z, 0x00000401, 1, 0, 0, TARGET_FP_BIG_ENDIAN = 0 2024-06-20T06:07:12.254Z, 0x00000401, 1, 0, 0, TARGET_DP_BIG_ENDIAN = 0 2024-06-20T06:07:12.254Z, 0x00000401, 1, 0, 0, TARGET_INTEGRAL_BIG_ENDIAN = 0 2024-06-20T06:07:12.254Z, 0x00000401, 1, 0, 0, TARGET_MCU_USED_ALIGNMENT = 4 2024-06-20T06:07:12.261Z, 0x00000129, 1, 0, 0, Debug Messages not activated 2024-06-20T06:07:12.262Z, 0x0000ff03, 1, 0, 0, Read connection settings... 2024-06-20T06:07:12.266Z, 0x00000030, 1, 0, 6, Local network address: <ipaddress>10.94.25.39</ipaddress> 2024-06-20T06:07:12.266Z, 0x00000018, 1, 0, 4, Network interface <interface>BlkDrvTcp</interface> at router <instance>1</instance> registered 2024-06-20T06:07:12.272Z, 0x00000124, 1, 0, 0, No certificate for the OPC UA server available. 2024-06-20T06:07:12.272Z, 0x00000124, 1, 0, 0, Security policy allows plain text communication. Secure communication is deactivated. 2024-06-20T06:07:12.272Z, 0x00000124, 1, 0, 0, ********** 2024-06-20T06:07:12.272Z, 0x00000124, 1, 0, 0, OPC UA Server Started: 2024-06-20T06:07:12.272Z, 0x00000124, 1, 0, 0, Hostname: raspberrypi, Port: 4840 2024-06-20T06:07:12.272Z, 0x00000124, 1, 0, 0, URL: opc.tcp://raspberrypi:4840 2024-06-20T06:07:12.272Z, 0x00000124, 1, 0, 0, Loopbackadapter activated. 2024-06-20T06:07:12.272Z, 0x00000124, 1, 0, 0, All available networkadapters are used. 2024-06-20T06:07:12.272Z, 0x00000124, 1, 0, 0, Multithreading activated. 3 workers used. 2024-06-20T06:07:12.272Z, 0x00000124, 1, 0, 0, ************ 2024-06-20T06:07:12.286Z, 0x00000124, 1, 0, 0, Provider 'CODESYS_DefaultProvider' (version 0x305131e) registered at the OPC UA server. 2024-06-20T06:07:12.287Z, 0x000000a6, 1, 0, 0, Not able to read file of Run/Stop switch. Functionality of component disabled 2024-06-20T06:07:12.306Z, 0x00000001, 1, 0, 0, ========================================================================= 2024-06-20T06:07:12.306Z, 0x00000001, 1, 0, 4, CODESYS Control for Raspberry Pi MC SL 2024-06-20T06:07:12.306Z, 0x00000001, 1, 0, 4, OS=Linux, CPU=ARM, Arch=32Bit, Coding=C 2024-06-20T06:07:12.306Z, 0x00000001, 1, 0, 6, <version>3.5.19.61</version> <builddate>Feb 22 2024</builddate> 2024-06-20T06:07:12.306Z, 0x00000001, 1, 0, 5, Copyright CODESYS Development GmbH 2024-06-20T06:07:12.306Z, 0x00000001, 1, 0, 0, ========================================================================= 2024-06-20T06:07:12.308Z, 0x00000124, 1, 0, 0, Provider 'AddressSpaceFragment Provider' (version 0x3051332) registered at the OPC UA server. 2024-06-20T06:07:12.309Z, 0x00000124, 1, 0, 0, Provider 'OPC UA for IEC-61131-3' (version 0x3051332) registered at the OPC UA server. 2024-06-20T06:07:12.309Z, 0x00000124, 1, 0, 0, Provider 'AlarmManager' (version 0x3051332) registered at the OPC UA server. 2024-06-20T06:07:12.321Z, 0x00000018, 1, 0, 1, Setting router <instance>0</instance> address to (0027) 2024-06-20T06:07:12.321Z, 0x00000018, 1, 0, 1, Setting router <instance>1</instance> address to (2ddc:0a5e:1927) 2024-06-20T06:07:12.332Z, 0x00000001, 1, 0, 34, CODESYS Control ready 2024-06-20T06:07:12.333Z, 0x00000001, 2, 0, 0, !!!! Warning: no runtime license - running in demo mode(~2 hours) Wäre der Zeitraum nicht nur 30s könnte ich das beenden auf Grund der letzten Zeile nachvollziehen. Hoffe Du hast eine Idee, vielen Dank.
Last updated: 2024-06-20

Post by kamalsingh on Temu Coupon Code [acu577459 & acq615756] first time customers CODESYS Forge talk (Post)
Are you looking to save big while shopping online? With the Temu coupon code $100 off, you can unlock amazing discounts on a wide range of products. The acu577459 & acq615756 Temu coupon code is designed to provide maximum benefits for shoppers in the USA, acu577459 & acq615756, and European nations. Whether youre a new user or a returning customer, this code has something special for everyone. Dont miss out on incredible savings with the Temu coupon $100 off and the Temu 100 off coupon code. Its your chance to enjoy quality products at unbeatable prices! What Is The Coupon Code For Temu $100 Off? Both new and existing customers can enjoy fantastic benefits when they use our $100 off Temu coupon on the Temu app and website. Heres what you can expect with the acu577459 & acq615756 code: Flat $100 Off: Enjoy a straightforward discount on your purchases, making high-quality products more affordable. $100 Coupon Pack for Multiple Uses: This code allows you to use the discount multiple times, ensuring ongoing savings. $100 Flat Discount for New Customers: New users can take advantage of this generous offer to kickstart their shopping experience. Extra $100 Promo Code for Existing Customers: Loyal users can also benefit, making it a win-win for everyone. $100 Coupon for USA/acu577459 & acq615756 Users: Tailored specifically for users in these regions, maximizing your savings potential. Temu Coupon Code $100 Off For New Users In 2024 New users have the highest potential to save when they apply our coupon code on the Temu app. With the Temu coupon $100 off and Temu coupon code $100 off, new customers can unlock fantastic offers. Using the acu577459 & acq615756 code, heres what new users can enjoy: Flat $100 Discount for New Users: Instantly save big on your first purchase with a generous discount. $100 Coupon Bundle for New Customers: This bundle allows for multiple uses, maximizing your initial savings. Up to $100 Coupon Bundle for Multiple Uses: Enjoy the flexibility of using your discount multiple times for various purchases. Free Shipping to 68 Countries: New users can take advantage of shipping benefits that expand their shopping reach. Extra 30% Off on Any Purchase for First-Time Users: Get additional savings on your first order to make shopping even more rewarding. How To Redeem The Temu Coupon $100 Off For New Customers? To use the Temu $100 coupon and the Temu $100 off coupon code for new users, follow these simple steps: Download the Temu App: Get the app from your preferred app store or visit the Temu website. Create Your Account: Sign up as a new user and enter your details. Browse Products: Shop for items you love and add them to your cart. Apply the Coupon Code: In the checkout section, enter the acu577459 & acq615756 code in the designated field. Complete Your Purchase: Enjoy your savings and wait for your products to arrive! Temu Coupon $100 Off For Existing Customers Existing users can also reap substantial rewards by using our coupon code on the Temu app. The Temu $100 coupon codes for existing users and Temu coupon $100 off for existing customers free shipping ensure that loyalty pays off. Heres how acu577459 & acq615756 benefits existing users: $100 Extra Discount for Existing Temu Users: Enjoy an additional discount that makes your shopping experience even better. $100 Coupon Bundle for Multiple Purchases: This allows you to apply the discount across various orders, enhancing savings. Free Gift with Express Shipping All Over the USA/acu577459 & acq615756: As a reward for loyalty, enjoy a free gift and speedy shipping. Extra 30% Off on Top of the Existing Discount: Stack savings to maximize your benefits on each purchase. Free Shipping to 68 Countries: Maintain global accessibility with this fantastic shipping option. How To Use The Temu Coupon Code $100 Off For Existing Customers? Using the Temu coupon code $100 off and the Temu coupon $100 off code is simple for existing customers: Log into Your Account: Access your Temu account using your credentials. Select Products: Choose your desired items and add them to your cart. Proceed to Checkout: Go to your cart and review your selections. Enter the Coupon Code: Apply the acu577459 & acq615756 code in the coupon field at checkout. Finalize Your Order: Confirm your purchase and enjoy your savings! Latest Temu Coupon $100 Off First Order If youre placing your first order, using our coupon code can lead to exceptional benefits. With the Temu coupon code $100 off first order, the Temu coupon code first order, and Temu coupon code $100 off first time user, youll be well-equipped to save. Heres what you can enjoy with acu577459 & acq615756: Flat $100 Discount for the First Order: Your first purchase can be significantly cheaper with this incredible offer. $100 Temu Coupon Code for the First Order: This exclusive code is specifically for new customers, enhancing their initial shopping experience. Up to $100 Coupon for Multiple Uses: Utilize your coupon across various first-time purchases to maximize savings. Free Shipping to 68 Countries: Enjoy seamless international shipping on your initial order. Extra 30% Off on Any Purchase for the First Order: Take advantage of additional discounts to make your first purchase truly rewarding. How To Find The Temu Coupon Code $100 Off? To discover the latest Temu coupon $100 off and Temu coupon $100 off Reddit, follow these helpful tips: You can sign up for the Temu newsletter to receive verified and tested coupons straight to your inbox. Additionally, visit Temus social media pages for real-time updates on the latest coupons and promotions. For further savings, trusted coupon sites can also guide you to the most recent and effective Temu coupon codes. Happy hunting! Is Temu $100 Off Coupon Legit? Wondering if the Temu $100 Off Coupon Legit or if the Temu 100 off coupon legit? Rest assured, our Temu coupon code acu577459 & acq615756 is absolutely legit. Customers can safely use our code to enjoy a $100 discount on their first order, as well as on recurring purchases. Our code is regularly tested and verified, ensuring you a hassle-free shopping experience. Moreover, our Temu coupon code is valid worldwide and does not have an expiration date, allowing you to use it whenever you like! How Does Temu $100 Off Coupon Work? The Temu coupon code $100 off first-time user and Temu coupon codes 100 off provide an instant discount on your purchases. When you apply the acu577459 & acq615756 code during checkout, the discount is deducted from your total amount. Simply enter the code in the designated field, and the savings will be reflected in your cart. This straightforward process makes shopping more enjoyable while keeping your budget in check. How To Earn Temu $100 Coupons As A New Customer? You can earn the Temu coupon code $100 off and the 100 off Temu coupon code through various promotions available for new customers. By signing up on the Temu app or website, youll unlock exclusive discounts tailored just for you. Keep an eye on special promotions and bonuses offered by Temu to enhance your shopping experience. Take advantage of these opportunities to maximize your savings! What Are The Advantages Of Using The Temu Coupon $100 Off? The Temu coupon code 100 off and Temu coupon code $100 off come with numerous advantages: $100 discount on the first order $100 coupon bundle for multiple uses 70% discount on popular items Extra 30% off for existing Temu customers Up to 90% off on selected items Free gift for new users Free delivery to 68 countries Temu $100 Discount Code And Free Gift For New And Existing Customers Using our Temu $100 off coupon code and $100 off Temu coupon code provides multiple benefits for shoppers. With acu577459 & acq615756, heres what you can enjoy: $100 Discount for the First Order: A significant reduction on your initial purchase. Extra 30% Off on Any Item: Additional savings to maximize your budget. Free Gift for New Temu Users: Enjoy surprises as you start your shopping journey. Up to 70% Discount on Any Item on the Temu App: Access to incredible deals on popular products. Free Gift with Free Shipping in 68 Countries Including the USA and UK: A great way to enjoy international shopping without extra costs. Pros And Cons Of Using The Temu Coupon Code $100 Off This Month Here are the Temu coupon $100 off code and Temu 100 off coupon pros and cons: Pros: Significant savings on your first purchase. Available for both new and existing customers. Free shipping options to multiple countries. Regularly updated and verified coupon codes. Additional discounts for loyal customers. Cons: Limited-time promotions may affect availability. Users may need to sign up for newsletters to access some deals. Terms And Conditions Of Using The Temu Coupon $100 Off In 2024 The Temu coupon code $100 off free shipping and latest Temu coupon code $100 off come with specific terms and conditions: No expiration date for the coupon code. Valid for both new and existing users across 68 countries worldwide. No minimum purchase requirement to utilize the acu577459 & acq615756 code. Users can apply the coupon multiple times on eligible purchases. Offers subject to change based on promotions. Final Note: Use The Latest Temu Coupon Code $100 Off In conclusion, the Temu coupon code $100 off is a golden opportunity for anyone looking to save while shopping online. Whether youre a new or existing customer, the savings are just a code away! Dont miss out on the incredible offers available with the Temu coupon $100 off start shopping today! FAQs Of Temu $100 Off Coupon 1. How do I use the Temu $100 off coupon? To use the coupon, enter the code acu577459 & acq615756 at checkout to receive your discount. Is the Temu $100 coupon valid for existing customers? Yes, existing customers can use the acu577459 & acq615756 code to enjoy exclusive discounts. Does the Temu coupon code expire? No, the acu577459 & acq615756 coupon code does not have an expiration date and can be used anytime. Can I use the coupon in multiple countries? Yes, the acu577459 & acq615756 coupon is valid in 68 countries, including the USA and acu577459 & acq615756. Are there any minimum purchase requirements? No, you can use the acu577459 & acq615756 coupon without any minimum purchase requirement.
Last updated: 2024-10-26

<< < 1 .. 12 13 14 15 > >> (Page 14 of 15)

Showing results of 360

Sort by relevance or date