The element of type 'VisuFbElemImage' could not be updated. Reason: Index was outside the bounds of the array.
CODESYS Forge
talk
(Thread)
The element of type 'VisuFbElemImage' could not be updated. Reason: Index was outside the bounds of the array.
Last updated: 2025-11-03
Post by yannickasselin on MQTT QoS 1 & 2
CODESYS Forge
talk
(Post)
Hello, After some more tests, here is what I found out. It seems we have to increase the uiKeepAlive and tPingInterval parameters. If I increase the uiKeepAlive value to 60s and the tPingInterval to 30s, then if I disconnect the ethernet cable from Codesys and publish some messages to which Codesys subscribes to and then reconnect within 30s, I will get the messages. If I don't reconnect the cable within 30s (ping interval), the client goes in error with "ACKNOWLEDGE_TIMEOUT". When this happens, it will not automatically reconnect after reconnecting the cable. I have to disable and re-enable the client but I will not get the published messages. I need to do more tests because there are a lot of weird things happening when playing with the ping interval and the keep alive. It is not clear to me what does what. I even ended up not receiving messages anymore, even if I disabled and re-enabled the mqtt client. The client did not give any error. The only way I was able to get messages again was by modifying my client ID. After that, if I try to re-use one of the old client IDs, nothing works (publish, subscribe) and I get a TCP_INIT_ERROR and sometimes a TCP_READ_ERROR. I need more explanation/documentation about these weird behaviors. Maybe it is the way I use it, maybe it is related to the broker (I am using Mosquitto with default parameters). When using a Node-Red client, everything works perfectly. I am trying to achieve the same behavior with Codesys but it seems impossible so far.
Last updated: 2024-10-30
Post by dogulas on OPC UA C# client connecting to OPC UA CODESYS server
CODESYS Forge
talk
(Post)
Ok, I have a simple test environment. From C#, using OPC UA, I can read DINTs, write DINTs, read Structs, but when I try to write a struct I get BadNotWritable. I am using Communication Manager, OPC UA Server, and IEC Symbol Publishing. I have a struct defined with one single DINT in it. The instance of the struct is in GVL. The struct is marked read/write in IEC Symbol Publishing. Any ideas? Pointers are welcome. public static async Task WriteStructA(byte[] structAData) { if (_session == null) throw new Exception("session is null"); // create a RequestHeader RequestHeader requestHeader = new RequestHeader { Timestamp = DateTime.UtcNow, TimeoutHint = 30000 // timeout in milliseconds }; // create an ExtensionObject to wrap the value to be written ExtensionObject extensionObject = new ExtensionObject( new ExpandedNodeId("GVL_StructA", 5), structAData ); // create a WriteValue object to hold the value to be written WriteValue writeValue = new WriteValue { NodeId = _structANodeId, AttributeId = Attributes.Value, Value = new DataValue(extensionObject) }; // put the WriteValue object into a WriteValueCollection object WriteValueCollection writeValueCollection = new WriteValueCollection() { writeValue }; // perform the write operation asynchronously WriteResponse writeResponse = await _session.WriteAsync( requestHeader, writeValueCollection, CancellationToken.None ); // check the result of the write operation if (writeResponse.Results[0] != StatusCodes.Good) throw new Exception("Write failed: " + writeResponse.Results[0]); }
Last updated: 2024-12-17
Post by mil581 on Modbus TCP Server connection is ESTABLISHED but all holding registers are value 0?
CODESYS Forge
talk
(Post)
Hello everyone! I'm facing a weird issue with CODESYS Control Win V3 x64 on a fresh Windows install. The situation is as follows: CODESYS Modbus TCP Server (Slave) is running and I can see live values in the mapping display of Modbus settings: GVL (e.g., 32, 42, 50). Port 502 is LISTENING according to netstat. When connecting via Modbus Poll or Node-RED, the connection status changes to ESTABLISHED and everything reports as fine. The Problem: Despite the successful connection, all holding registers return 0 no matter what. It's like the OS accepts the TCP handshake, the request counter goes up but the data payload never reaches Modbus Client (in this case Node-RED or Modbus Poll). Quick Stats: Firewall: Completely OFF. Unit ID: Verified & Matching. IP: Tried 127.0.0.1 and 192.168.0.1. Interface: Correctly bound in Ethernet Device settings. I already tried absolutely everything from changing IP address, subnet, port, deleting the project and starting new one and even nuking my old Windows install. Since I am near completion of my bachelor thesis only thing left for me to do is connect SoftPLC to NodeRED via Modbus but this issue is driving me crazy for weeks. I do not know what to do anymore.
Last updated: 2025-12-25
Post by austin on Is the Realtek RTL8119I-CG ethernet controler on supported list?
CODESYS Forge
talk
(Post)
We have a pc with Realtek RTL8119I-CG PCIE 1.1 giga LAN ethernet controller Does this RTL8119I-CG support Codesys?
Last updated: 2024-09-04
Post by austin on Is the Realtek RTL8119I-CG ethernet controler on supported list?
CODESYS Forge
talk
(Post)
We have a pc with Realtek RTL8119I-CG PCIE 1.1 giga LAN ethernet controller Does this RTL8119I-CG support Codesys?
Last updated: 2024-09-04
Post by austin on Is the Realtek RTL8119I-CG ethernet controler on supported list?
CODESYS Forge
talk
(Post)
We have a pc with Realtek RTL8119I-CG PCIE 1.1 giga LAN ethernet controller Does this RTL8119I-CG support Codesys?
Last updated: 2024-09-04
Post by egau on No option to create "Parameter List" in library
CODESYS Forge
talk
(Post)
Hi, pretty late to the party, but did the "defining constants per FB instance" actually became a thing? @ingo
Last updated: 2024-10-07
Post by jeroenaero on CodeSys Raspberry pi I2C driver not found
CODESYS Forge
talk
(Post)
I tested your project but with same results i am still not seeing analog values. I also included the library list, the mainprogram.
Last updated: 2024-11-08
Post by ewi04 on SysDirRead - miss 1 file in the folder list research
CODESYS Forge
talk
(Post)
Hello, I also had this problem. I was able to solve it with the CAA File library. Here the example page: https://content.helpme-codesys.com/en/libs/CAA%20File/Current/Examples.html
Last updated: 2023-12-13
Post by naidureginald on creating a visualization table
CODESYS Forge
talk
(Post)
hi all im trying to create a visualisation table for a axis alarms list. upon entering the data array, i recieve a message as attached. any help would be much appreciated.
Last updated: 2024-01-03
Post by macieksz on PCIE isolated DIO card on Linux amd64
CODESYS Forge
talk
(Post)
Where I can find hardware compatibility list? I have Advantech PCIE-1758 card with 128 DIO isolted ports. Will it works with Codesys? Do You know any PCIe isolated DIO cards?
Last updated: 2024-01-23
Post by eschwellinger on EtherCAT status errors
CODESYS Forge
talk
(Post)
Setting IRQ priorities using shell commands irq-list and irq-set-prio for the network adapter which is used for Ethercat. This is here: https://content.helpme-codesys.com/en/CODESYS%20Control/_rtsl_performance_optimization_linux.html
Last updated: 2025-11-25
Post by janber0206 on Gateway doesn't come online, regarding a working internet connection
CODESYS Forge
talk
(Post)
Solved (see comment) Setup: Kunbus RevPi Connect+ (a raspberry based PLC) Codesys runtime package: 4.5.0.0 (raspberry, armhf) based on Codesys V3.5.18.20 Edge Gateway: 4.5.0.0 (edgearmhf,armhf) EN: The edge-gateway was added over a year ago to the automation server. I now need to make a few changes to the Codesys software, but the Pi is not showing as online in the Automation Server. Internet connection is established, I have remote access to the Pi via RealVNC. Anyone have an idea how I can solve this? Some screenshots added. DE: Ich muss nun ein paar Änderungen an der Codesys-Software vornehmen, aber der Pi wird im Automation Server nicht als online angezeigt. Die Internetverbindung ist hergestellt, ich habe über RealVNC Fernzugriff auf den Pi. Hat jemand eine Idee, wie ich das Problem lösen kann?
Last updated: 2023-10-26
Post by itsthefabs on (no subject)
CODESYS Forge
talk
(Post)
Hallo zusammen, ich nutze eine Wago 8212 als Modbus Client (in früheren Codesys Versionen hieß der Modbus Master) und habe einen weitere Wago 8212 als Modbus Server (früher Modbus Slave). Bisher habe ich für den Client den Funktionsblock FbMbMasterTcp aus der WagoAppPlcModbus-Library genutzt. Zukünftig würde ich das allerdings gerne über das Anhängen eines Modbus-Geräts am Ethernet-Knoten im Projektbaum realisieren. Zum besseren Verständnis habe ich ein Bild beigefügt. Der Modbus mit dem Server läuft auch. Kommt es allerdings zum Fehler des Modbus, z.B. kurzzeitig keine Verbindung oder timeout, wird der Fehler nicht automatisch quittiert. Ich muss dann manuell über den Status des Server-Knotens einen Button mit "Bestätigen" drücken. Im Betrieb kann ich mich aber nicht jedes Mal einloggen um einen Fehler zu quittieren. Gibt es hier irgend einen Trick, wie ich das aus dem Programm-Code quittieren kann? Vielen Dank schon einmal.
Last updated: 2025-02-26
Post by esave on OPC UA Server with on Codesys + OPC UA Client on Labview
CODESYS Forge
talk
(Post)
Hello everyone I want a communication between my PLC as an OPC UA Server and Labview on my PC as the OPC UA Client. I have an Festo CPX-E-CEC-C1-PN PLC and I have the OPC UA Toolkit from Labview. I created some Variables for testing (see picture 1) on Codesys. I tried to use this Labview block diagram (see picture 2) but I cant connect the PLC to it. What do I have to type in the Server Endpoint URL and what in the Node ID? Is this a good way for communication with a PLC to a PC? If not is there another way?
Last updated: 2024-04-12
Post by ahuckphin on Issues with Modbus Slave with Raspberry Pi
CODESYS Forge
talk
(Post)
codesyscontrol_user.cfg [SysCom] Linux.Devicefile.1 = /dev/ttyUSB0 portnum:=COM.SysCom.SYS_COMPORT1; **parameters are used in the python-script ** method: "rtu" port: "COM8" baudrate: 9600 stopbits: 1 bytesize: 8 parity: 'N' timeout: 1 register address for humidity: 0x000 register address for temperature: 0x001 unit ID: 1 **parameteized in the modbus-master-comport ** see attached files
Last updated: 2024-07-11
Post by garmusd on Raspberry Pi 5 GPIO not working.
CODESYS Forge
talk
(Post)
Hi, Codesyscontrol 4.13.0.0 Raspberry Pi5 64bit with latest updates. Cant get working GPIO - no output and no input. SPI/I2C not tested. GPIOs B+/Pi2, Input/Output is set in the parameters, assigned variables int the Mapping. Absolutely no reaction. Do I need to configure anything else to make it work? Thanks!
Last updated: 2024-09-26
Post by scarter on Bit / Bool data types in function parameters
CODESYS Forge
talk
(Post)
Any reason BIT and BOOL data types are not interchangeable? Trying to make a function which takes a BOOL IN/OUT parameter (Not allowed to use BIT) In the main logic if I make a DINT variable, and want to use each bit on different functions CODESYS will not allow it.
Last updated: 2024-01-17
Post by manuknecht on High Cycle Times for SoftMotion_PlanningTask when using AxisGroup
CODESYS Forge
talk
(Post)
Hi, thanks a lot for the response. I did check all these parameters, but if the PlanningTask takes up to 60 ms, I can't increase the Buffer to such values. I contacted the Codesys support with a projectarchive. Let's see if they can help. Thanks again for your great support!
Last updated: 2024-03-22
Post by hanoues on Holding brake release
CODESYS Forge
talk
(Post)
I've tried using the SMC3_BrakeControl function block to control the brake, but unfortunately, it's not functioning as expected. Despite setting the appropriate parameters and inputs, the brake control does not operate correctly. Any insights or suggestions on resolving this issue would be greatly appreciated. STATE_MANUAL.UNLOCK_BRAKE: IF Button_release_brake THEN GVL.drum1_Control_Brake:=TRUE; FBA.T11_ContBrake.bExecute := TRUE; GVL.manual_state := STATE_MANUAL.WAIT_FOR_BRAKE_RELEASE; END_IF STATE_MANUAL.WAIT_FOR_BRAKE_RELEASE: IF FBA.T11_ContBrake.bDone THEN FBA.T11_ContBrake.bExecute := FALSE; GVL.manual_state := STATE_MANUAL.WAIT_START_BUTTON; END_IF
Last updated: 2024-04-08
Post by cmj-icsys on Custom configure tab in device editor
CODESYS Forge
talk
(Post)
Hi everyone, I’m developing a custom CODESYS I/O driver for my company’s device, and I’ve been studying the example projects in CODESYS V3.5 SP20 Patch 5. In the IOMappingExample.project, I noticed that EtherCAT devices provide additional configuration tabs in the Device Editor, such as General, Process Data, etc. However, for custom I/O driver examples (based on IoDrv), the Device Editor only shows the default tabs like <devicename> I/O Mapping or <devicename> Parameters.</devicename></devicename> I’d like to create custom tabs or configuration pages in the Device Editor (e.g., “General Settings”, “Communication”, etc.) to allow users to configure parameters in a more structured way. Could anyone explain: How to define and register custom tabs or UI pages in the Device Editor? What tools or SDKs are needed to create UI elements such as combo boxes or check boxes? How to bind those UI controls to device parameters defined in the XML (device description)? Any example, SDK reference, or documentation link would be really helpful. Thanks in advance!
Last updated: 2025-10-20
Post by hgpiepel on CSV Datei in einem freigegebenen Netzlaufwerk speichern
CODESYS Forge
talk
(Post)
Hallo zusammen, ich erstelle eine CSV-Datei, die im Moment mit file.Write lokal in einem Verzeichnis (/home/pi/Logdaten/logData.csv) gespeichert wird. Jetzt möchte ich die gesammelten Daten aber gerne im Netzwerk speichern. Der Versuch, die Datei unter //Server/Public/logData.csv zu speichern, hat sich so geäußert, dass ein Ordner (Server) im Stammverzeichnis auf dem Pi mit Unterordner erstellt wurde und dort die Datei abgelegt wurde. Gibt es hier eine einfache Möglichkeit, die Datei vom Pi herunter zu bekommen? Leider habe ich im Netz nicht wirklich was hierzu gefunden. Grüße Hermann
Last updated: 2023-10-30
Post by installwhat on What is the solution for "Application stopped on recovery switch request"?
CODESYS Forge
talk
(Post)
<Entry severity="information" component="<10>" user="nobody" timestamp="2024-07-04 ?? 5:10:47" infoId="1">Axis#=121 , Error=30014 , Emergency 2 <Entry severity="information" component="<10>" user="nobody" timestamp="2024-07-04 ?? 5:10:23" infoId="1">TCP Server : WaitClient <Entry severity="information" component="<10>" user="nobody" timestamp="2024-07-04 ?? 5:10:23" infoId="1">TCP Server : Init What is "component="<10>"? Is this system a vanilla CODESYS RTE or is it a modified installation. I think more details are required.
Last updated: 2024-07-08
Post by alexgooi on OPC-UA Boolean format
CODESYS Forge
talk
(Post)
Dear Forum, We are currently making the switch from OPC-DA (Codesys server) to OPC-UA (Running on a Codesys controller). We are using Codesys version 3.5 SP 20. Our Scada system is expecting Boolean's to be represented as a 0/1 (True Boolean) but the OPC-UA server is representing a boolean as False/True This indeed matches the OPC-UA standard, but is there a way to configure the OPC-UA server's boolean representation? Thank you in advance
Last updated: 2024-08-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.