Post by kenth1973 on MC_Phasing state explenation
CODESYS Forge
talk
(Post)
Hi George - ok thanks - but who created this FB in the first place? Could you lead me to the creator company? Is CODESYS not the old S3 that created this FB? :-)
Last updated: 2025-12-17
Post by mariusz997 on Visualisation - internal error
CODESYS Forge
talk
(Post)
Hi - problem solved. I had 3 version of codesys on system and they didn't like each other. After uninstall all and install again only one version now everything is OK
Last updated: 2025-11-12
Post by davidbo on *EXCEPTION* [ProsessorLoadWatchdog] codesys 3.5.11.40
CODESYS Forge
talk
(Post)
Under Application->"Task Configuration" you can find your task double click on that and you will see a fane to the right. You find the watchdog enable switch it off or increase the time
Last updated: 2025-11-17
Post by karsonsv on CODESYS HMI and 2 monitors
CODESYS Forge
talk
(Post)
I need open visualization on two monitors (every monitor 19201080). In TargetVisu i configure Scaling Options as Fixed 38401080. But visualization open onli main monitor and onli half.
Last updated: 2026-01-02
Post by dim54 on Disabling automatic logout from the owner user
CODESYS Forge
talk
(Post)
Hello! Please tell me how I can disable the automatic logout as the Owner user (CODESYS 3.5 SP15 Path 2). I have to reconnect multiple times during the workday. Thanks!
Last updated: 2026-01-16
Post by wollvieh on Sysfile Konfiguration
CODESYS Forge
talk
(Post)
Hallo, nach Umstellung auf Raspberry Trixie sowie neueste CODESYS Version funktioniert das Schreiben Lesen mit Sysfile Bei mir nicht mehr. Zugriff bei Fileopen wird abgelehnt. Gibt es irgendwo eine Dokumentation, welche Einträge für Sysfile in der Datei CODESYSControl.cfg vorzunehmen sind? In Ratlosigkeit...
Last updated: 2026-01-19
Post by wollvieh on Sysfile Konfiguration
CODESYS Forge
talk
(Post)
Hallo, nach Umstellung auf Raspberry Trixie sowie neueste CODESYS Version funktioniert das Schreiben Lesen mit Sysfile Bei mir nicht mehr. Zugriff bei Fileopen wird abgelehnt. Gibt es irgendwo eine Dokumentation, welche Einträge für Sysfile in der Datei CODESYSControl.cfg vorzunehmen sind? In Ratlosigkeit...
Last updated: 2026-01-19
Post by wollvieh on Sysfile Konfiguration
CODESYS Forge
talk
(Post)
Hallo, nach Umstellung auf Raspberry Trixie sowie neueste CODESYS Version funktioniert das Schreiben Lesen mit Sysfile Bei mir nicht mehr. Zugriff bei Fileopen wird abgelehnt. Gibt es irgendwo eine Dokumentation, welche Einträge für Sysfile in der Datei CODESYSControl.cfg vorzunehmen sind? In Ratlosigkeit...
Last updated: 2026-01-19
Post by wollvieh on (no subject)
CODESYS Forge
talk
(Post)
Hallo, nach Umstellung auf Raspberry Trixie sowie neueste CODESYS Version funktioniert das Schreiben Lesen mit Sysfile Bei mir nicht mehr. Zugriff bei Fileopen wird abgelehnt. Gibt es irgendwo eine Dokumentation, welche Einträge für Sysfile in der Datei CODESYSControl.cfg vorzunehmen sind? In Ratlosigkeit...
Last updated: 2026-01-19
Post by wollvieh on Sysfile Konfiguration
CODESYS Forge
talk
(Post)
Hallo, nach Umstellung auf Raspberry Trixie sowie neueste CODESYS Version funktioniert das Schreiben Lesen mit Sysfile Bei mir nicht mehr. Zugriff bei Fileopen wird abgelehnt. Gibt es irgendwo eine Dokumentation, welche Einträge für Sysfile in der Datei CODESYSControl.cfg vorzunehmen sind? In Ratlosigkeit...
Last updated: 2026-01-19
Post by wollvieh on Sysfile Konfiguration
CODESYS Forge
talk
(Post)
Hallo, nach Umstellung auf Raspberry Trixie sowie neueste CODESYS Version funktioniert das Schreiben Lesen mit Sysfile Bei mir nicht mehr. Zugriff bei Fileopen wird abgelehnt. Gibt es irgendwo eine Dokumentation, welche Einträge für Sysfile in der Datei CODESYSControl.cfg vorzunehmen sind? In Ratlosigkeit...
Last updated: 2026-01-19
Post by wollvieh on Sysfile Konfiguration
CODESYS Forge
talk
(Post)
Hallo, nach Umstellung auf Raspberry Trixie sowie neueste CODESYS Version funktioniert das Schreiben Lesen mit Sysfile Bei mir nicht mehr. Zugriff bei Fileopen wird abgelehnt. Gibt es irgendwo eine Dokumentation, welche Einträge für Sysfile in der Datei CODESYSControl.cfg vorzunehmen sind? In Ratlosigkeit...
Last updated: 2026-01-19
Post by ketanvaishnav on Redundancy Codesys Runtime, Synchronization
CODESYS Forge
talk
(Post)
i am facing same data sync issue. i am use two 750-8212 (FW30) controllers. datas are sync from active to standby during changeover time, but datas are not sync from standby to active.
Last updated: 2026-01-30
Post by raghusingh77 on TEMU COUPON CODE ACU934948 GET $100 OFF FOR NEW AND EXISTING CUSTOMERS
CODESYS Forge
talk
(Post)
You can take advantage of the exclusive Temu discount codes "ACU934948" to receive a $100 discount on your purchases, along with the chance to get free items. This offer is available for new customers in Canada, making it a great opportunity to shop on Temu. Get $100 Off with Temu Coupon Code [ACU934948] The highlight of shopping at Temu right now is the $100 off coupon code [ACU934948]. This code provides a flat discount on your order value, making it easier than ever to save money while shopping for your favorite items. Whether you’re interested in fashion, electronics, or home goods, this coupon is a fantastic way to maximize your savings. Exclusive Discounts for First-Time Users New to Temu? You’re in luck! By redeeming the free Temu coupon code [ACU934948], first-time users can enjoy an additional 30% discount on their first order. This is a perfect opportunity to explore Temu’s extensive catalog while enjoying significant savings. Additionally, the Temu new user coupon [ACU934948] offers up to 75% off your first purchase, ensuring that you get the best possible deal as you start your shopping journey. Massive October Promotions: Up to 90% Off October 2024 is an exciting month for shoppers at Temu. With the Temu coupon code [ACU934948], customers can access discounts of up to 90% off select items during this promotional period. From seasonal items to everyday essentials, there’s something for everyone at unbeatable prices. 30% Off Temu Coupons, Promo Codes + 25% Cash Back [ACU934948] Redeem Temu Coupon Code [ACU934948]. TEMU COUPON $100 OFF [ACU934948] TEMU COUPON $100 OFF FOR EXISTING CUSTOMERS [ACU934948] TEMU COUPON $100 OFF FIRST ORDER [ACU934948] TEMU COUPON $100 OFF REDDIT [ACU934948] TEMU COUPON $100 OFF FOR EXISTING CUSTOMERS REDDIT [ACU934948] TEMU COUPON $100 OFF NEW USER [ACU934948] TEMU COUPON $100 OFF FOR EXISTING CUSTOMERS 2024 [ACU934948] TEMU COUPON $100 OFF CODE [ACU934948] TEMU COUPON $100 OFF FIRST ORDER FREE SHIPPING [ACU934948] TEMU COUPON $100 OFF FOR EXISTING CUSTOMERS FREE SHIPPING USA [ACU934948] TEMU COUPON $100 OFF HOW DOES IT WORK [ACU934948] TEMU COUPON $100 OFF FOR EXISTING CUSTOMERS CANADA [ACU934948] TEMU COUPON $100 OFF 2024 [ACU934948] TEMU COUPON $100 OFF FOR NEW CUSTOMERS [ACU934948] TEMU COUPON $100 OFF CANADA [ACU934948] TEMU COUPON $100 OFF FOR EXISTING CUSTOMERS FIRST ORDER [ACU934948] TEMU 100 OFF COUPON BUNDLE [ACU934948] 100 COUPON CODES [ACU934948] 1 BUCKS TO PHP [ACU934948] IS THERE A COUPON IN THE PHILIPPINES [ACU934948] 100 BUCKS TO PHP [ACU934948] TEMU $100 OFF COUPON [ACU934948] TEMU $100 OFF CODE [ACU934948] TEMU 100 VALUE COUPON BUNDLE [ACU934948] TEMU COUPON $100 OFF FOR EXISTING CUSTOMERS FREE SHIPPING [ACU934948] TEMU 100 OFF COUPON CODE LEGIT [ACU934948] TEMU 100 OFF COUPON CODE REDDIT [ACU934948] TEMU 100 OFF COUPON CODE FOR EXISTING USERS [ACU934948] TEMU 100 OFF COUPON CODE UK [ACU934948] TEMU COUPON CODE $100 OFF FREE SHIPPING [ACU934948] TEMU COUPON CODES 100 PERCENT OFF [ACU934948] WHAT IS A HIGH COUPON RATE [ACU934948] HOW TO CALCULATE COUPON RATE WITHOUT COUPON PAYMENT [ACU934948] WHAT IS THE COUPON RATE [ACU934948] HOW TO CALCULATE COUPON VALUE [ACU934948] USING COUPONS AND REBATES TO LOWER THE PRICE OF AN ITEM IS AN EXAMPLE OF [ACU934948] TEMU 100 DOLLAR OFF COUPON [ACU934948] DOMINOS COUPON CODE 100 OFF [ACU934948] DOMINO'S 100 RS OFF COUPON CODE [ACU934948] TEMU COUPON $100 OFF EXISTING CUSTOMERS [ACU934948] WHAT IS 10 OFF 100 DOLLARS [ACU934948] 100 OFF PROMO CODE [ACU934948] 1 CASHBACK ON 100 DOLLARS [ACU934948] IS TEMU 100 OFF COUPON LEGIT [ACU934948] TEMU COUPON $100 OFF [ACU934948] TEMU COUPON $100 OFF LEGIT [ACU934948] Temu Coupon Code $100 OFF [ACU934948]
Last updated: 2024-10-26
Post by mondinmr on COL.IMap2 and HashTableFactory cause frequent Access Violation
CODESYS Forge
talk
(Post)
Good morning, I’ve been using the Collection library for a long time, mostly with Stack, LinkedList, and List. From your examples I was able to manage the different factories, even for custom elements. Now I need a hashtable, but with this object I’m running into a lot of random access violations. If I append something inside FB_Init after constructing the hashtable, it crashes, even though the list was already created. If I only create the hashtable in FB_Init and append afterwards, it usually works. I don’t understand the meaning of the dispose call in this code: pSlave := ADR(slave); uSlave := TO_ULINT(pSlave); iKey := fKey.Create(uSlave); IF hash.CountKeys() = 0 THEN Service.logger.appendLog('Filling hashtable', 'HashManager', AdvLogType.AdvDebugMsg); ok := FALSE; ELSE eError := hash.ContainsKey(iKey, xResult => ok); END_IF IF NOT ok THEN pI := __NEW(UINT); iVal := fKey.Create(TO_ULINT(pI)); Service.logger.appendLog(CONCAT('New slave', TO_STRING(uSlave)), 'HashManager', AdvLogType.AdvDebugMsg); hash.AddKeyValuePair(iKey, iVal); appendNewSlave := pI; ELSE eError := hash.GetElementByKey(iKey, itfValue => iElem); xResult := __QUERYINTERFACE(iKey, itfIInstance); IF xResult THEN itfIInstance.Dispose(); END_IF IF eError <> COL.COLLECTION_ERROR.NO_ERROR THEN Service.logger.appendLog(CONCAT('ERROR ', TO_STRING(eError)), 'HashManager', AdvLogType.AdvCriticalMsg); appendNewSlave := nullptr; RETURN; END_IF __QUERYINTERFACE(iElem, iVal); {warning disable C0033} pI := TO___UXINT(iVal.UlintValue); {warning restore C0033} appendNewSlave := pI; END_IF Without the dispose call, every second cold reset crashes immediately when I try to access iVal, even if eError doesn’t report any error. With the dispose call, the cold reset issue disappears, but I get other problems: a) If I start the runtime using systemctl start codesyscontrol, it crashes at IF hash.CountKeys() = 0 THEN b) If I delete the files in PlcLogic and download again, it works and survives multiple cold resets. But as soon as I run systemctl restart codesyscontrol, everything gets corrupted again and it starts crashing at that point. FUNCTION_BLOCK SlaveMapCounter VAR hash : COL.IMap2; eError : COL.COLLECTION_ERROR; END_VAR In its FB_Init I create it: METHOD FB_Init: BOOL VAR_INPUT bInitRetains: BOOL; // TRUE: retain variables are initialized (reset warm / reset cold) bInCopyCode: BOOL; // TRUE: the instance will be copied to the copy code afterward (online change) END_VAR VAR hF : COL.HashTableFactory; END_VAR hash := hF.Create(256); In another FB I instantiate it statically: FUNCTION_BLOCK ABSTRACT AbstractServoEthercatController EXTENDS AbstractServoController VAR_STAT hashSlaves : SlaveMapCounter; END_VAR VAR field : REFERENCE TO ADVAbstractFieldUnitEthercatCia402; initCnt : REFERENCE TO UINT; END_VAR The append method is the one shown above, and I call it after the runtime has started. The accesses are performed by a single task, and in any case I’m working on an isolated single core. I’ve tried everything, moving the create, the instances, and all the rest several times, but nothing seems to work. I’d like to point out that these FBs are part of our own library, which is used in many applications.
Last updated: 2025-09-11
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 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 simotion on Codesys Softmotion Win V3 x64
CODESYS Forge
talk
(Post)
I have a project in Codesys v3.5 sp19 patch2 that contains softmotion virtual axes. I want to simulation the code (softmotion) on the simulated plc on the pc. The controller in the project is a Codesys Softmotion Win V3 x64. I have started up the Codesys Softmotion Win 64 on the pc. However it seems a 3.5 sp14 controller. When trying to download the project, I get a message that target system is different from connected system (3.5.19 vs 3.5.14). How do I set the connected system to 3.5.20 (there seems no way to set the target system to 3.5.14
Last updated: 2023-10-04
Post by andre-luis on Check if Codesys runtime is on 'Running' or 'Stopped' state?
CODESYS Forge
talk
(Post)
Hi there, I'm running the Codesys runtime on Windows 64 and I need to know if it is on "Running" or "Stopped" state just after a system crash. The following commands works perfectly well to (re)start it... net stop “CODESYS Control Win V3 - x64" net start “CODESYS Control Win V3 - x64" ...however I'm unable to determine when it is required to be call; I mean, by checking the System Tray icon, it is possible to know if it is on "Stopped" state, but I wanted to run a .BAT command to retrieve it. How can we do that?
Last updated: 2024-07-02
Post by cfam on Codesys Control for PLCnext SL, Bus not running
CODESYS Forge
talk
(Post)
Good day I would appreciate it if you can give me some advice on how to fix my "Bus Not Running Error". I am Using Codesys 3.5 SP20 and Codesys Control PLCnext SL V4.12.0.0. Codesys control was installed on the device and I can log into it but it seems that it does not pick up the PLC or the IO attached (Please see attached Image). The Bus Cycle Task of the AXL F 2152 is set to Main Task and the "Always update Variable" is Enabled on each IO Module. My Main Task interval is set to 100ms and Priority is set to 0. I have tried other options and none seem to work. Your response to this issue will be highly appreciated.
Last updated: 2024-08-12
Post by cfam on Codesys Control for PLCnext SL, Bus not running
CODESYS Forge
talk
(Post)
Good day I would appreciate it if you can give me some advice on how to fix my "Bus Not Running Error". I am Using Codesys 3.5 SP20 and Codesys Control PLCnext SL V4.12.0.0. Codesys control was installed on the device and I can log into it but it seems that it does not pick up the PLC or the IO attached (Please see attached Image). The Bus Cycle Task of the AXL F 2152 is set to Main Task and the "Always update Variable" is Enabled on each IO Module. My Main Task interval is set to 100ms and Priority is set to 0. I have tried other options and none seem to work. Your response to this issue will be highly appreciated.
Last updated: 2024-08-12
Post by bjarne-pagaard on OPC UA Server Status on Win RTE
CODESYS Forge
talk
(Post)
Hi there, An "OPC Expert" client software is connecting to a Codesys Control RTE (x64) OPC UA Server. It reads only about 25 variables every 5 minutes. The OPC UA Server seems to shut down on the Codesys runtime. Is there any way to get information about the Codesys OPC UA Server status? Restart it? There is nothing in the PLC Logs after the OPC UA Server has started. It works for a while, then it doesn't. Any ideas? Any way of getting more info out of the Codesys OPC UA Server? -Bjarne
Last updated: 2024-10-21
Post by gatto on CAA File open Problems
CODESYS Forge
talk
(Post)
Ciao, here same question https://forge.codesys.com/forge/talk/Engineering/thread/2538729618/ in this post https://forge.codesys.com/forge/talk/Engineering/thread/4586a90290/?limit=25#d531 i find : keep in mind that all files which are generated / or read should be exist in the iecfilepath this means: for Windows (Control Win as example) c:\ProgramData\CODESYS\CODESYSControlWinV3x64\268E8ADF\PlcLogic for Linux /var/opt/codesys/PlcLogic I never use codesys on windows but im sure on linux we can manipulate file only inside /var/opt/codesys/Plc Logic. Or you need to modify the file codesyscontrol.cfg for change path permission, but this is another history Buone feste !
Last updated: 2024-12-21
Post by sigurdrb on Read codesys version in the codesys application
CODESYS Forge
talk
(Post)
Hi! I want to read the codesys version into the project, so I can highlight it in the SCADA system. VAR dwVersion : DWORD; END_VAR SysTarget.SysTargetGetVersion(pulVersion := ADR(dwVersion)); This gives me the value 100859909. I tried to search ths up and found som older post (https://forge.codesys.com/forge/talk/Runtime/thread/a55981ff4d/) that said each 4 bytes reads a number in the version. Example is 50662666 = 16#03050D0A which reads to V3.5.13.10 When I run this code I get the value 100859909, which I cant translate to anything meaningful. I am running it on Codesys V3.5.19.70. Help appreciated!
Last updated: 2025-01-17
Post by arjunk on How to correctly create a device descriptor (.devdesc.xml) for a custom Linux ARM64 PLC in CODESYS 3.5.21.20?
CODESYS Forge
talk
(Post)
I’m trying to integrate a custom PLC into CODESYS so that it appears under the Device section. From what I understand, this requires a .devdesc.xml device descriptor file. I attempted to create the XML manually, but whenever I try to install it in order to generate a .package file, CODESYS crashes. CODESYS version: 3.5.21.20 Target PLC: Linux ARM64–based My questions are: Is there an official or easier way to generate a valid .devdesc.xml file for a custom PLC? Are there tools, templates, or examples that can help ensure the XML is structured correctly and won’t cause crashes? For Linux ARM64 targets specifically, is there a recommended starting point (e.g., modifying an existing device descriptor)? Any guidance or best practices for creating and packaging custom device descriptors would be greatly appreciated.
Last updated: 2025-10-06
To search for an exact phrase, put it in quotes. Example: "getting started docs"
To exclude a word or phrase, put a dash in front of it. Example: docs -help
To search on specific fields, use these field names instead of a general text search. You can group with AND or OR.