Post by dhumphries on Not able to see input data coming from eip adapter on codesys
CODESYS Forge
talk
(Post)
Does the device have a green icon next to it when the PLC is running? If not you have some kind of communication problem, wireshark may be picking up some data but the scanner may not be configured correctly to receive the data. Check the T>O and O>T bytes and make sure they match on both the scanner and adapter. I've had very little success loading a .eds file and having the configuration work without some manual configuration. If you have a green icon, have you enabled the device to always update variables?
Last updated: 2024-03-02
Post by kazuhiro on Problems using MySql Library and SysProcessExecuteCommand2 together
CODESYS Forge
talk
(Post)
I use fbMsSQL_compact(FUN) of the MySQL Library to write data to the database. There is no problem when writing data using only fbMsSQL_compact(FUN). However, when I try to write data obtained using SysProcessExecuteCommand2 to the database using fbMsSQL_compact(FUN), an error message "Dest server on ip address:xxx.xxx.xxx.xxx and port:1433 is unreachable" appears and writing is not possible. From what I have researched, it seems that writing is not completed in one cycle of fbMsSQL_compact(FUN), and when SysProcessExecuteCommand2 is executed first in the second cycle, the work done in one cycle of fbMsSQL_compact(FUN) is reset. Could you please give me some advice?
Last updated: 2024-06-18
Post by kazuhiro on Problems using MySql Library and SysProcessExecuteCommand2 together
CODESYS Forge
talk
(Post)
I use fbMsSQL_compact(FUN) of the MySQL Library to write data to the database. There is no problem when writing data using only fbMsSQL_compact(FUN). However, when I try to write data obtained using SysProcessExecuteCommand2 to the database using fbMsSQL_compact(FUN), an error message "Dest server on ip address:xxx.xxx.xxx.xxx and port:1433 is unreachable" appears and writing is not possible. From what I have researched, it seems that writing is not completed in one cycle of fbMsSQL_compact(FUN), and when SysProcessExecuteCommand2 is executed first in the second cycle, the work done in one cycle of fbMsSQL_compact(FUN) is reset. Could you please give me some advice?
Last updated: 2024-06-18
Post by aria13 on Has anyone fed ESP32 sensor data into CODESYS (via MQTT/Modbus)?
CODESYS Forge
talk
(Post)
Has anyone tried sending live sensor data from an ESP32 into a CODESYS runtime (for example via MQTT gateway or a Modbus bridge) to trigger PLC logic? I was reading an ESP32 → MQTT tutorial (https://www.theengineeringprojects.com/2021/11/esp32-mqtt.html) that shows how easy it is to publish sensor data from an ESP32, and I’m wondering how practical that is when tying the stream into industrial control software like CODESYS. I’ve also seen Arduino forum threads where people relay sensor streams to MQTT brokers and Raspberry Pi projects that bridge MQTT→Modbus, so I’m mainly curious about real-world issues: reliability, message latency, and simple patterns you’d recommend for safe PLC integration. Any tips, examples, or gotchas from folks who’ve done this?
Last updated: 2025-10-29
Post by pernockham on Trend legend naming and access/config to/of trend/legend-variables
CODESYS Forge
talk
(Post)
Trying the web-version of trend-data. This seems to be a impressive tool, but I lack/cant find a number of what I would think are important parts. There does not seem to be a way to get away from the dot.notated variable naming in the legend.. A developer might want the dot-notation but an end-customer will surely not. For instance I want to display 12 temperatures, instead of t1, t2 etc.. they will be named. gvl_io.unit[1].trend.temps.t1_a gvl_io.unit[1].trend.temps.t1_b gvl_io.unit[1].trend.temps.t1_c gvl_io.unit[1].trend.temps.t2_a .. gvl_io.unit[1].trend.temps.t4_b.. gvl_io.unit[1].trend.temps.t4_c.. Quite a lot of unnecessary text/data taking space from the actual trend => Is there a way to access/interface the legend-data programmatically so I can change the presentation/naming?
Last updated: 2025-12-16
Post by baotthitawat on SCADA Systems Are Becoming Easier to Integrate With Modern Applications
CODESYS Forge
talk
(Post)
One thing I’ve been seeing recently is that more industrial systems are starting to expose realtime SCADA data through APIs instead of keeping everything isolated inside the local monitoring software. This makes integration much easier for cloud platforms, mobile dashboards, AI analytics, and enterprise applications that need realtime industrial data. Instead of exporting reports manually or building complicated middleware, APIs allow external systems to access SCADA data directly in realtime. I think this becomes especially useful for applications like wastewater treatment monitoring, where operators need better visibility into alarms, equipment status, and operational conditions across different locations. Feels like modern SCADA is slowly evolving from a standalone monitoring platform into part of a larger connected industrial ecosystem.
Last updated: 2026-05-28
Post by baotthitawat on SCADA Systems Are Becoming Easier to Integrate With Modern Applications
CODESYS Forge
talk
(Post)
One thing I’ve been seeing recently is that more industrial systems are starting to expose realtime SCADA data through APIs instead of keeping everything isolated inside the local monitoring software. This makes integration much easier for cloud platforms, mobile dashboards, AI analytics, and enterprise applications that need realtime industrial data. Instead of exporting reports manually or building complicated middleware, APIs allow external systems to access SCADA data directly in realtime. I think this becomes especially useful for applications like wastewater treatment monitoring, where operators need better visibility into alarms, equipment status, and operational conditions across different locations. Feels like modern SCADA is slowly evolving from a standalone monitoring platform into part of a larger connected industrial ecosystem.
Last updated: 2026-05-28
Post by baotthitawat on SCADA Systems Are Becoming Easier to Integrate With Modern Applications
CODESYS Forge
talk
(Post)
One thing I’ve been seeing recently is that more industrial systems are starting to expose realtime SCADA data through APIs instead of keeping everything isolated inside the local monitoring software. This makes integration much easier for cloud platforms, mobile dashboards, AI analytics, and enterprise applications that need realtime industrial data. Instead of exporting reports manually or building complicated middleware, APIs allow external systems to access SCADA data directly in realtime. I think this becomes especially useful for applications like wastewater treatment monitoring, where operators need better visibility into alarms, equipment status, and operational conditions across different locations. Feels like modern SCADA is slowly evolving from a standalone monitoring platform into part of a larger connected industrial ecosystem.
Last updated: 2026-05-28
Post by baotthitawat on SCADA Systems Are Becoming Easier to Integrate With Modern Applications
CODESYS Forge
talk
(Post)
One thing I’ve been seeing recently is that more industrial systems are starting to expose realtime SCADA data through APIs instead of keeping everything isolated inside the local monitoring software. This makes integration much easier for cloud platforms, mobile dashboards, AI analytics, and enterprise applications that need realtime industrial data. Instead of exporting reports manually or building complicated middleware, APIs allow external systems to access SCADA data directly in realtime. I think this becomes especially useful for applications like wastewater treatment monitoring, where operators need better visibility into alarms, equipment status, and operational conditions across different locations. Feels like modern SCADA is slowly evolving from a standalone monitoring platform into part of a larger connected industrial ecosystem.
Last updated: 2026-05-28
Post by baotthitawat on SCADA Systems Are Becoming Easier to Integrate With Modern Applications
CODESYS Forge
talk
(Post)
One thing I’ve been seeing recently is that more industrial systems are starting to expose realtime SCADA data through APIs instead of keeping everything isolated inside the local monitoring software. This makes integration much easier for cloud platforms, mobile dashboards, AI analytics, and enterprise applications that need realtime industrial data. Instead of exporting reports manually or building complicated middleware, APIs allow external systems to access SCADA data directly in realtime. I think this becomes especially useful for applications like wastewater treatment monitoring, where operators need better visibility into alarms, equipment status, and operational conditions across different locations. Feels like modern SCADA is slowly evolving from a standalone monitoring platform into part of a larger connected industrial ecosystem.
Last updated: 2026-05-28
Post by baotthitawat on SCADA Systems Are Becoming Easier to Integrate With Modern Applications
CODESYS Forge
talk
(Post)
One thing I’ve been seeing recently is that more industrial systems are starting to expose realtime SCADA data through APIs instead of keeping everything isolated inside the local monitoring software. This makes integration much easier for cloud platforms, mobile dashboards, AI analytics, and enterprise applications that need realtime industrial data. Instead of exporting reports manually or building complicated middleware, APIs allow external systems to access SCADA data directly in realtime. I think this becomes especially useful for applications like wastewater treatment monitoring, where operators need better visibility into alarms, equipment status, and operational conditions across different locations. Feels like modern SCADA is slowly evolving from a standalone monitoring platform into part of a larger connected industrial ecosystem.
Last updated: 2026-05-28
Post by baotthitawat on SCADA Systems Are Becoming Easier to Integrate With Modern Applications
CODESYS Forge
talk
(Post)
One thing I’ve been seeing recently is that more industrial systems are starting to expose realtime SCADA data through APIs instead of keeping everything isolated inside the local monitoring software. This makes integration much easier for cloud platforms, mobile dashboards, AI analytics, and enterprise applications that need realtime industrial data. Instead of exporting reports manually or building complicated middleware, APIs allow external systems to access SCADA data directly in realtime. I think this becomes especially useful for applications like wastewater treatment monitoring, where operators need better visibility into alarms, equipment status, and operational conditions across different locations. Feels like modern SCADA is slowly evolving from a standalone monitoring platform into part of a larger connected industrial ecosystem.
Last updated: 2026-05-28
Post by veneto on OPC UA Client
CODESYS Forge
talk
(Post)
Ciao damian177, provo a chiederti un'informazione. Sul mio progetto Codesys(ver.3.5 SP17) non è visibile l'oggetto "Data Source Manager". Il PC con il progetto Codesys(client) è collegato via rete TCP ad un PLC Siemens1200(server). Sul PC con Codesys ho installato UAexpert(client) e riesco a vedere le variabili del PLC1200. Riesci ad aiutarmi a capire come mai non è visibile l'oggetto "Data Source Manager"? Molte grazie
Last updated: 2024-09-06
Post by nz-dave on sysfile- transfer file to pc
CODESYS Forge
talk
(Post)
Hi Trying to send csv file to c:\data\xxx.csv Im able to save to plclogic and after doing this https://forge.codesys.com/forge/talk/Runtime/thread/5cac1390b4/ i can now "file transfer" to host pc downloads. but still cant transfer to c:\ im sure i have done this in the past with older versions of the 3.5 ide? just concat the file name as c:\data\My_Filename.csv. any ideas? cheers
Last updated: 2025-04-23
Post by usacodesysuser on How to connect serial devices ?
CODESYS Forge
talk
(Post)
@eschwellinger do you have any examples of using a USB barcode scanner? I have read through the forums here and I am unable to find how to get the barcode data to populate in a text field without having to first click into the text field to activate it. Is there a library that allows you to access the barcode data? I am really new to this in general any help is greatly appreciated, hopefully you have a pretty clear example
Last updated: 2024-01-06
Post by hoatran on Use third party actuator with IO-Link Master (IFM)
CODESYS Forge
talk
(Post)
The generic sensor FB is for controlling the sensor via its cyclic input (PDI) and output (PDO). In this case, ifm raw cyclic input and output data are WORDs (16 bits total) The PDO data from the Buerkert unit are SINT (8 bits) In this case, I would use the unpackword fb from the CAA memory library to unpack the valve feed back value into the appropriate location.
Last updated: 2024-04-23
Post by yannickasselin on How to sort JSON object in codesys
CODESYS Forge
talk
(Post)
Just adding: sSubscriberdata := ''; Right before your memcopy should fix the extra characters. It is because your are copying 36 characters into a string which can contain more than 36 characters and there is garbage left in the extra characters. Regarding the parsing of json, I usually build a structure that mirrors the json data and use the available methods in the IIoT library to parse the data and fill the structure.
Last updated: 2024-05-08
Post by sajid on NMEA Serial data read in Control win v3 x64
CODESYS Forge
talk
(Post)
I am using the SerialCom example program from the CODESYS website to read NMEA strings in CODESYS Control Win V3 x64 through a serial-to-USB converter. However, I occasionally receive only partial data or encounter errors in the received string. A screenshot of expected NMEA string attached for reference. Could you please advise on how to ensure the full NMEA string is received consistently? Error in strRead variable is <value of="" the="" expression="" cannot="" be="" retrieved=""></value>
Last updated: 2025-10-16
Post by sajid on NMEA Serial data read in Control win v3 x64
CODESYS Forge
talk
(Post)
I am using the SerialCom example program from the CODESYS website to read NMEA strings in CODESYS Control Win V3 x64 through a serial-to-USB converter. However, I occasionally receive only partial data or encounter errors in the received string. A screenshot of expected NMEA string attached for reference. Could you please advise on how to ensure the full NMEA string is received consistently? Error in strRead variable is <value of="" the="" expression="" cannot="" be="" retrieved=""></value>
Last updated: 2025-10-16
Post by youness on CSVReaderInit returns error : INVALID_HANDLE
CODESYS Forge
talk
(Post)
I have Already the same problem when i'm trying to write data more than 10 times in the same file. In fact, i send my data periodicaly to a file that i configured to have permission of W/R in my CodesysContol.cfg. When the Error occurs, i must reboot my machine to success. It means that the problem isn't realted to a limitation of size, but a problem in the function supposed to handle the file. totorovic : allow me to know if you've found a solution to your problem. Thanks.
Last updated: 2025-11-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 disha on Export data with the Trend API
CODESYS Forge
talk
(Post)
Can you please share the code as i am the beginner for codesys. I don't have any idea that how sqlite is integrated with the codesys.
Last updated: 2024-07-08
Post by reinier-geers on Syssockping hang up V3.5.9.2
CODESYS Forge
talk
(Post)
For data logging on a server i check the connection with Syssockping. When i do that it seems to hang uo the system once a while for 13 seconds. Why ??
Last updated: 2024-09-02
Post by damian177 on Problem with downloading OPC UA tags by Data Source Manager
CODESYS Forge
talk
(Post)
In my OPC UA Server is about 12 thousands tags. Can by possible that downloading tags from OPC UA Server lasts a long time , and when expires about 2 hours (demo license time) that downloading freezes ?
Last updated: 2024-09-04
Post by dengsberg on Check Connection Status of the OPC-UA Server for Data Source Manager with OPC-UA Client
CODESYS Forge
talk
(Post)
Another question is how to test the quality of the individual variable?
Last updated: 2024-09-07
To search for an exact phrase, put it in quotes. Example: "getting started docs"
To exclude a word or phrase, put a dash in front of it. Example: docs -help
To search on specific fields, use these field names instead of a general text search. You can group with AND or OR.