Post by rene-h on ClientFilter used the same Client ID 2 times - Bug?
CODESYS Forge
talk
(Post)
Hello, like the topic name says, i have a problem on one Visu which i cannot reproduce on another Visu. We filter buttons with input locks and visible items with [CURRENTCLIENTID] on different WebVisu's with different ID's, and one time the itfClient used the same Client ID for 2 Clients, so the Visualization on the first ID was wrong, because that one which connected after did not have the same permissions like the first, so the first one was blocked. We read the Clients with the VisuClientIteration project: //count active clients gCli.iNumberOfClients:=gCli.iNumberOfClients+1; // if client is active write data to global struct IF gCli.iNumberOfClients > 0 THEN gCli.astClientInfo[gCli.iNumberOfClients-1].iClientID:=itfClient.ClientId ; gCli.astClientInfo[gCli.iNumberOfClients-1].stCurrentVisu:=itfClient.CurrentVisuName; gCli.astClientInfo[gCli.iNumberOfClients-1].wsUserName:=itfClient.UserName; gCli.astClientInfo[gCli.iNumberOfClients-1].sIpAddress:=itfClient.GetIPv4Address(); gCli.astClientInfo[gCli.iNumberOfClients-1].ClientType:=itfClient.ClientType; END_IF Runtime from the device: 3.5.19.20 Codesys we use: 3.5.20.10 I added a screenshot where the same ID exists 2 times. Thanks for your answers.
Last updated: 2025-05-14
Post by abuckie on i2c master not running
CODESYS Forge
talk
(Post)
Hello, I am trying to create an Ethernet/IP device that can read analog signals, do some basic logic on it and then hand communicate the results to an Ethernet/IP master. I am using the Raspberry Pi to experiment with this as I would ultimately like to drive a display as well. I have loaded up the runtime on the Pi and got the digital I/O working. I have an ADS1115 ADC to I2C board and I can't get it to work, I get a message telling me the i2c master is not running and I am not sure where to start with this. Is there a manual for running CODESYS on the Pi or something like that I am missing? I found this post and opening the project in CODESYS V3.5 SP21 it seems like tons of this wouldn't convert properly https://forge.codesys.com/forge/talk/Runtime/thread/f1400b71b6/ I have added in the library and device manually and copied the structured text program but lost at what to do if the core functionality of the master is not running. I appreciate any help, thanks.
Last updated: 2025-05-19
Post by laurits on Max lines of code, codesys CNC ?
CODESYS Forge
talk
(Post)
Hi, okay here's the project, it's a modified version of "CNC Example 10: Programming Dynamic CNC Paths", no need for G Code text file (i have also tried with G code text file, same problem) in "PROGRAM PLC_PRG" you can set bStart to true, and the program should start running, go to "PROGRAM CNC" and you can see axis moving. lrXpos := IoConfig_Globals.XAixs.fSetPosition; lrYpos := IoConfig_Globals.YAxis.fSetPosition; Now you can can change the number of movements in the the "PROGRAM PLC_PRG" From this number of movements in "program PLC_PRG" BUF : ARRAY[0..32010] OF SMC_GEOINFO; xp : ARRAY[1..32000] OF REAL; yp : ARRAY[1..32000] OF REAL; to this number to this number of movements BUF : ARRAY[0..132010] OF SMC_GEOINFO; xp : ARRAY[1..132000] OF REAL; yp : ARRAY[1..132000] OF REAL; Now if you start the program again you should see an error in the "sMC_Interpolator: SM3_CNC.SMC_Interpolator;" function block Let me know if you can not get it running.
Last updated: 2025-06-03
Post by astutoski on No Motion with SM3_RaspiStepper (GPIO 23/24 Show No Pulses)
CODESYS Forge
talk
(Post)
Hi everyone, I’m completely new to CODESYS and have been teaching myself. And i Want to control an Axis using SM3RaspiStepper. Following the example on the RaspiStepper home page, I set up an axis through a POU and tied the SMC_StartupDrive (Visu) template to my axis instance (sud). Unfortunately, the motor never moves and I don’t see any pulses on the PULSE pin (GPIO 23). Hardware -Raspberry Pi 4 B -Nema 17 stepper motor -A4988 stepper driver (EN pin permanently tied to GND) Software / Runtime -CODESYS 3.5 SP21 Patch 1 – Raspberry Pi runtime (demo) -SoftMotion in demo mode -Package: SM3_RaspiStepper 0.0.0.6 Axis parameters: Pulse pin GPIO 23 Direction pin GPIO 24 Enable pin 0 (unused) Disable pin 0 (unused) Whether I start the axis from the visualization template or through Online Config Mode, the motor never spins. In Online Config Mode I press Power → the state changes from Standstill to Discrete_Motion, but the motor shaft is still locked and no step pulses appear on GPIO 23 (checked with a scope). I can provide screenshots of the Visualization, PLC logs, or wiring pictures if that helps. Any ideas on what I might be missing? Happy to provide screenshots, project files, or scope captures if that helps. Thanks in advance!
Last updated: 2025-06-25
Post by gvdb on Raspberry Pi 4 mod B icm codesys linking USB serial device (arduino) to com port
CODESYS Forge
talk
(Post)
Raspberry Pi 4 Codesys 3.5.20 sp3 Codesyscontrol 4.15.0.0 based on sdk 3.5.21.0 Hi all, I have found a lot of topics but none of them get me on the right path, therfore i started a new post. Usually i work with plc based systems and codesys but now im trying to create an project where i read out a serial data stream from an arduino connected by an USB port. in the future this need to be more arduino's but first trying to make it work with one I had my program working but i needed to update my raspberry pu to the letest version to get the mimo screen working. Now i tried several rules in the CODESYSControl.cfg and/or CODESYSControl_User.cfg files but i never get the com port opened. At this moment i have an file CODESYSControl_User.cfg with entry: [SysCom] Linux.Devicefile.1=/dev/ttyUSB0 I tested the connection with minicom and the data runs fluently. Can somebody help me with what could be wrong? the com port states ERROR_UNKNOWN 5004 when i tried to open.
Last updated: 2025-07-17
Post by timvh on Codesys virtual control redundancy
CODESYS Forge
talk
(Post)
I think it depends on what you consider as redundant. Is it allowed to plug the network cable in another device (server), move the USB key with license to the other device (server) and then start it up? Or should it automatically switch over within msec and take over the communication with the I/O flawlessly without noticing the switchover? We helped several customers setting up the CODESYS Redundancy functionality and the nice thing is that when you have it up and running, you can easily switchover from active to passive and when you download a new applicaiton, CODESYS handles the update of boot project on the passive controller automatically. Sure this will require an additional license and the license for redundancy, but if your installation is that critical it should be worth it. Please contact us (Extend Smart Coding) if you need any further information. We could help you setup the configuration and possibly provide the licenses for it (I noticed you are situated in the Netherlands).
Last updated: 2025-09-04
Post by beavel on Feature Request: Text List Formatting
CODESYS Forge
talk
(Post)
Hi everyone, I'm working on a multilingual help system within a CODESYS visualization project and have run into a limitation with the current text list (.tlx) functionality. Right now, text list entries only support plain text, which makes it very difficult to format longer help texts in a readable way. For example, I’d like to: Use bold headers and larger font sizes for section titles Display variable names or keywords in italics Avoid having to split content into dozens of separate entries just to apply different styles This becomes especially unmanageable when supporting multiple languages — duplicating layout logic across languages is not scalable. Would it be possible to implement a Markdown text functionality for text list entries ? For example: #Header ##Sub-header 1.ordered 2.list 3.fun 4.times Alternatively, is there any existing workaround or planned feature that allows for styled text blocks without fragmenting the content? Thank you in advance and have a nice day :)
Last updated: 2025-09-23
Post by dhumphries on Minimum system requirements for codesys control standard S
CODESYS Forge
talk
(Post)
I'm working on a low cost project and I'm considering installing the Codesys runtime on a PC running Linux Debian instead of buying a PLC with a pre-installed runtime. For my needs the Control Standard S license should be capable of running some IO over ethernet/ip, and a webvisu. The PC I am considering has a AMD GX-424CC 2.4GHz processor (4 core/4 thread) and 4GB RAM. This may compare to a raspberry pi4, but I know an X86 processor doesn't directly compare to an ARM processor, and a processor can have a high clock speed but other factors like L2/L3 cache can influence the overall performance. I can't find any published specs for the processor and RAM requirements to run the Codesys Control runtime, does anybody have a link to the minimum system requirements or experience using devices that are at or below the minimum system requirements. A raspberry pi with the control for raspberry pi SL runtime license would be the lowest cost option, but the license is not for commerical use. This restriction is somewhat vague, can anybody clarify if this means I can use a raspberry Pi runtime for in-house automation, what about if I am selling an integrated system that uses a raspberry Pi as a controller?
Last updated: 2023-12-25
Post by chalk on No source code available
CODESYS Forge
talk
(Post)
Hello, This is my first time using Codesys, I am trying to add EtherNetIP communication to a Raspberry PI. I’ve added the EtherNetIP Adapter configured the network setting and added some modules to the pi but when I download the project it generates the following error: “There is no source code available for the object because it is in the compiled library ‘cip object, 4.5.1.0 (3s – smart software solution gmbh)’. Do you want to browse for the original library in order to display the source code? There are 2 errors in the log which are: SOURCEPOSITION App=[Application] area=3, offset=332760 EXCEPTION [Application] occurred: App=[Application], Task=[ENIPAdapterServiceTask] I can’t for the life of me work out how to get around this. I can’t find the source code anywhere or any information regarding this error. I’m using Codesys V3.5 SP19 Patch 3, the version of the Ethernet adapter is 4.5.1.0 and the version of the modules is 4.1.0.0. Any help on this will be greatly appreciated. Thanks
Last updated: 2024-02-02
Post by fredsta on Unable to load dynamic modules (Download failed: Application=Application)
CODESYS Forge
talk
(Post)
Hey there, I am currently trying to find a good solution for the communication between CODESYS Control on Raspberry Pi and "the rest of the world", i. e. the things apart from CODESYS on my linux. My first approach was to use the c-integration. So I created a lib, defined extern fbs, compiled the code on my Pi using the SDK and put the .so into my lib project. When I try to log into the Pi and load the program, I get the error message which you can see in the attached picture. "Die dynamischen Module der C-Integration konnten nicht auf das Laufzeitsystem geladen werden" is german and means roughly "the modules from the c-integration could not be loaded onto the runtime system." Is this normal? Am I doing something wrong? I will have a look at the unix domain socket thing next, as I am still in the process of finding the best solution for the communication.
Last updated: 2024-02-15
Post by brell on Automatic xExecute NBS.TCP_write
CODESYS Forge
talk
(Post)
I've recently started experimenting with CODESYS for a project and am fairly new to it. I'm currently working with Function Block Diagrams (FBD) to set up TCP communication between a server and a client, where the client is implemented as a Python script. Once the communication is established, my connection status changes to True, which is the expected behavior. My challenge arises with the TCP write module, which requires the xEnable_write flag to toggle between True and False. If xEnable_write remains True, the module only performs a single write operation. To address this, I introduced a falling edge trigger (F_TRIG), expecting it to help in toggling xEnable_write and it does, However, I've encountered an issue where in the beginning after connxion established I need to manually set xEnable_write to True for the system to work as intended. I'm looking for a way to automate this process so that xEnable_write becomes True automatically upon establishing a connection . Initially, I tried setting xEnable_write to True from the start, but this approach didn't work well since it left the flag permanently True, preventing further toggling. I also experimented with using a TON timer, but I faced similar issues. I am seeking a solution that automatically toggles xEnable_write between True and False after a connection is established, ensuring continuous write operations without manual intervention. Any advice or guidance on how to achieve this would be greatly appreciated."
Last updated: 2024-03-05
Post by squiggleypuff on RemoteTargetVisu creates Unresolved Reference
CODESYS Forge
talk
(Post)
I have a project with a Festo CPX-E-CEC-C1-PN PLC (Run-time version 3.5.12.50) that I have been developing on just fine using Codesys V3.5 SP19 Patch 5 (64bit). I am at the stage where I wanted to use the Festo HMI screen, and have added a RemoteTargetVisu object to my application. After adding this object, I am no longer able to log in to the PLC as I get an Unresolved Reference warning for 'USERMGRUSERGETPROPERTY' towards the end of the download process. I was able to find this post (https://forge.codesys.com/forge/talk/Visualization/thread/fc686a6cb2/) where the two possible solutions are to "set the placeholder to emtpy" or update the runtime. Problem is, I don't know how to do either of these things, as I'm still very green in Codesys land. I'd be happy to update the Festo PLC runtime, as that seems like the better option, but have not had any luck in finding a tutorial for this online. If anyone could point me in the right direction I'd appreciate it.
Last updated: 2024-03-19
Post by tomast on Codesys and Siemens SINAMICS 20 modbus RTU "Response CRC Fail"
CODESYS Forge
talk
(Post)
Hi everyone, I'm currently working on a project involving the control of 5 VFDs via Modbus RTU, this time using the WAGO 750-8212 CPU. So far, I've managed to make progress, but I've encountered an issue. While I can successfully read and write to all the registers I need, I consistently encounter a "Response CRC Fail" error when attempting to write the value 1151 to the STW register at address 40100. I'm able to set the frequency via register 40101 and adjust all other parameters using different registers. Setting STW to 1150 results in the drive ready boolean from the ZSW-bit being received instantly. However, the moment I attempt to send 1151 to register 40100, I immediately receive the "Response CRC Fail" error for all channels. I've also attempted to use combined control, employing Modbus for frequency control and starting from a digital input. Everything seems to function properly until I send the start command to the VFD. Interestingly, I consistently encounter the same error the moment I send the start command, regardless of whether I use register 40006 (high) or 40100 (1151). Could someone please assist me in resolving this issue?
Last updated: 2024-03-21
Post by squiggleypuff on Can't Add New Version of Modbus TCP Master
CODESYS Forge
talk
(Post)
I'm having a tough time trying to get Modbus working on a Festo CPX-E PLC; it throws these pre-compiler errors as soon as I add in my Modbus TCP Master 3.5.12.30 to my project: I'm confused about the C0046 error, as I have IODrvModbusTCP 4.3.0.0 Library installed. So I thought maybe I needed to use the newest Modbus TCP Master 4.3.0.0, which is in my device repository: However, whenever I go to add this underneath the Ethernet adapter (which is version 4.2.0.0), the only TCP Master version available is the old 3.5.12.30 one, even if I have Display all versions checked.: I even went so far as to delete the old version, but then there were no options to add a Modbus TCP Master under my Ethernet adapter. What needs to be done to use the newest Modbus TCP Master? Or are these pre-compiler errors unrelated and I'm missing something? Any help greatly appreciated.
Last updated: 2024-04-04
Post by salvadegianluca on How to use TON inside an FB that is instanced within a Visu page
CODESYS Forge
talk
(Post)
Hi everyone; I'm building a project in which the drag of the mouse over some controls (or the click event) changes the background color of the control items; this change of color is made with an FB that assignes a color code to the background with MUX command based on the value of an enumerator, this part is perfectly working but, when I'm using a touchpanel instead of a web visu (controlled by a mouse) I get into some issues as it seems that the touch operations are not triggering the MouseEnter and MouseLeave properties as it's done with the mouse.... For this reason I'm trying to add a TON to my FB and, if the enum that changes color remains at the same state for more then 3s I'm automatically resetting it to it's "0" so the item gets back the not selected color. Anyhow it looks like the TON function from library is not working in these FB that are instanced in the various visualizations, as instead they do if I create some instances within the POUS. Anyone has ideas of how to make them work?
Last updated: 2024-04-15
Post by salvadegianluca on How to use TON inside an FB that is instanced within a Visu page
CODESYS Forge
talk
(Post)
Hi everyone; I'm building a project in which the drag of the mouse over some controls (or the click event) changes the background color of the control items; this change of color is made with an FB that assignes a color code to the background with MUX command based on the value of an enumerator, this part is perfectly working but, when I'm using a touchpanel instead of a web visu (controlled by a mouse) I get into some issues as it seems that the touch operations are not triggering the MouseEnter and MouseLeave properties as it's done with the mouse.... For this reason I'm trying to add a TON to my FB and, if the enum that changes color remains at the same state for more then 3s I'm automatically resetting it to it's "0" so the item gets back the not selected color. Anyhow it looks like the TON function from library is not working in these FB that are instanced in the various visualizations, as instead they do if I create some instances within the POUS. Anyone has ideas of how to make them work?
Last updated: 2024-04-15
Post by fontrap on cmDongle Raspberry Pi issue
CODESYS Forge
talk
(Post)
Hello mates, I'm working with CODESYS V3.5 SP20 on a Raspberry Pi and I use "Raspberry Pi MC SL" as device on the project. I've installed the Control Standard L (multicore) license on a Wibu System usb-Dongle (cmStick/4.50) that already had another license from another vendor. I follow the online activation procedure from CODESYS documentation. Raspberry Pi has already CodeMeter installed for the other license. When I plugin the dongle on Raspberry and start the Runtime from Raspberry Pi Update in CODESYS I receive the message that I'm on Demo mode because the license is missing. I double checked that the license is activated in the dongle, through the WebAdmin of CodeMeter and the second license runs properly without any issue. I have already try to change the dongle from HID to MSD device and backward but the the Runtime cannot recognize the Dongle. I have also try to stop and start the Runtime through CODESYS without success. Is there anything else I can do to fix this issue?
Last updated: 2024-04-22
Post by salvatorethomas on Port instantiation of serial interface in WAGO PLC using Modb_L05.lib in CoDeSys v2.3
CODESYS Forge
talk
(Post)
Hi — good description of the problem. A few suggestions / questions that might help narrow this down: Since your first serial port (COM2) works fine but the second (COM4 + MODBUS_EXT_MASTER) never opens, check whether the two ports are truly independent — some WAGO modules share internal resources, so COM4 might conflict with other functions or modules. Make sure that the physical wiring and module configuration for the second port (baud rate, flow control, RS-485 vs RS-422, etc.) exactly match what the library expects — a mismatch in flow control or wiring could prevent port opening even if the LED signals seem OK. Try using a plain SERIAL_INTERFACE on COM4 first (like you did for COM2) without Modbus logic — if that opens, you know the hardware + port config is fine, so the issue is more likely with modb_L05.lib. If the port opens but Modbus still fails, enable debug/logging (if available) to inspect whether the port opening fails or the subsequent Modbus negotiation fails. If you like — I can share a minimal example project I used with WAGO + COM4 + Modbus that worked; you could adapt that to test your setup. Wacky Flip
Last updated: 2025-12-01
Post by mrkm-dic on UC20-M4000 Redundancy – Application is not automatically synchronized and redundancy breaks after online change
CODESYS Forge
talk
(Post)
Hello, I am currently testing redundancy using two UC20-M4000 controllers with CODESYS Control SL. The basic redundancy functionality (Active/Passive switching and failover) works, but I am experiencing problems when updating the application. Environment Controller: Weidmüller UC20-M4000 OS: u-OS Runtime: CODESYS Control SL 4.12.1.0-1 Redundancy link: dedicated Ethernet connection between the two controllers Time synchronization: NTP configured, time difference between controllers is about 1–2 seconds Current behavior Application synchronization When I download a modified application to PLC1 (Active controller), the application is not automatically copied to PLC2 (Passive controller). However, when I perform a path swap, the application download to PLC2 starts automatically. My expectation was that the Passive controller would automatically receive the updated application after downloading to the Active controller. Online change When performing an online change, redundancy is lost and the controllers switch to Standalone mode. Typical log messages include: RedundancySynchronize called Redundancy failover itself works correctly. The application boot project exists on both controllers (Application.app and Application.crc). Network interfaces are up and correctly configured. Question Is this behavior expected when updating the application in a redundant UC20-M4000 setup? Should the Passive PLC automatically receive the updated application, or is manual synchronization required? Any advice or recommended configuration for stable redundancy during online change and application download would be greatly appreciated. Thank you.
Last updated: 2026-03-16
Post by kiranbsiddaiah on CodeSys OPC UA client Unable to Connect To OPC UA sever through Username and password
CODESYS Forge
talk
(Post)
Hi, I'm using codesys v3.5 sp21 software. I have downloaded the sample opc ua client project from https://content.helpme-codesys.com/en/CODESYS%20Examples/_ex_uacapi_example.html and i tested connecting to "prosys opc ua simulation server". Through Anonymous connection it is connecting to server and can read data. Later tried to connect using username and password. First got a SECURITY_CHECKS_FAILED error, trusted the client certificate in the server and this issue resolved. Next got an INVALID_CERTIFICATE error, trusted the server certificate in the client and this issue resolved. After these two error it is not establishing the connection and not giving any error messages. UAAsyncProp: UA.AsyncProperty := (tnTaskName:='UAClientTask', usiTaskPrio:=20, udiTaskInterval:=10000); UAPolicy: UA.SecurityPolicy := (sPolicy:=UA.OpcUa_SecurityPolicy.OpcUa_SecurityPolicy_Aes128Sha256RsaOaep, eSecurity:=UA.SECURITY_MODE.SIGN_AND_ENCRYPT); //UAPolicy: UA.SecurityPolicy := (sPolicy:=UA.OpcUa_SecurityPolicy.OpcUa_SecurityPolicy_None, eSecurity:=UA.SECURITY_MODE.NONE); UAAuth: UA.UserNameAuth := (sUserName:=UAVars.sUser, sPassword:=UAVars.sPass); UAClient: UA.Client := ( itfAsyncProperty:= UAAsyncProp, //sClientName:= 'MyOPC UA client name', //default: ‘CODESYS OPC UA Client’ sURL:= UAVars.sURL, sSession:= UAVars.sSession, itfPolicy:= UAPolicy, itfAuth:=UAAuth, udiTimeout:= 100000 //,itfNamespaceArray:= UAVars.itfNamespaceArray //optional use ); ----------------------------------------------------------------------------------------------------------------------- Please let me know if any additional information required. Thank you...
Last updated: 2026-05-07
Post by nickpoon on SysProcessCreate stopped working after SP21?
CODESYS Forge
talk
(Post)
I'm going through the process of updating the CODESYS Project a machine to 3.5 SP21 (old version was 3.5 SP20). One function that stopped working when upgrading was SysProcessCreate. I need to run a .exe file that is located in C:\Program Files\MQTTStream. Some initial searching suggested that there are new security rules that prevent the SoftPLC from reading/writing files to outside of its Device folder (located here - C:\Windows\System32\config\systemprofile\AppData\Roaming\CODESYS\CODESYSControlWinV3x64\24FD6770) Relocating files helped fix my JSON file reader/writer functions (which were failing previously), but not the case for SysProcessCreate. I've even attempted to just run window's cmd.exe and with: pszCommandLine = 'cd /d C:\Windows\System32\config\systemprofile\AppData\Roaming\CODESYS\CODESYSControlWinV3x64\24FD6770\PlcLogic\MQTTStream & sift-proxy.exe --grpc_uri="https://grpc-api.siftstack.com" --api_key="xxxxxxxxxxxxxxxxxxx" mqtt-client --broker_ip=10.0.10.101 --broker_port=1883 --config_file="mqtt_telemetry_config.json" --username Plantd --password 1234 --stream_metrics --storage_path="sift-proxy-logs"' I have not been able to find a lot of documentation on this, and I suspect the new update may have created a bug for SysProcessCreate. Any help would be greatly appreciated
Last updated: 2026-02-02
Post by russells on Codesys ControlWinV3x64 with EtherCat Slave
CODESYS Forge
talk
(Post)
Hi there I am running Codesys ControlWinV3x64 (Patch 4) on my laptop for demonstration purposes but I am unable to get connection to the EtherCAT master and slave device. This is the process that I have followed: * Installed NPCap. * Added the xml file for the SMC slave device to the Device Repository. * Activated Control Win SysTray x64 and selected Start PLC. * Scanned the network for the local device (my laptop). * Added an EtherCAT master to the project and scanned the EtherCAT master for the Network and then selected the correct network. * Selected "Scan for devices" to identify the connected I/O. * Add the SMC EtherCAT slave manually because I was unable to scan it in. * Selected "Scan for devices". I have followed the steps described above but I can't scan in the EtherCAT slave or connect to it. I thought this situation was unique to the EtherCAT slave but I have also tried the same for an EtherNet/IP slave using the Ethernet Adaptor and EtherNet/IP scanner and I am also unable to scan in the device or activate the EtherNet/IP network. Any assistance will be appreciated.
Last updated: 2026-02-04
Post by ilya-vah on Table element issues
CODESYS Forge
talk
(Post)
Hello, First post here. I would like to clarify whether the following behavior is known or if it is a bugs. Issue 1 — First row not displayed when using Maximum array index with 1-based arrays Description: When displaying data from an array that is indexed starting from 1 (e.g., ARRAY[1..N]), and the number of displayed rows is limited using the Maximum array index property, the first row of the array is not shown in the visualization. Steps to reproduce: Create an array indexed from 1 (e.g., ARRAY[1..N]). Bind the array to a Table element. Limit the number of displayed rows using the Maximum array index property. Run the visualization. Actual result: The first array element (index 1) is not displayed in the table. Issue 2 — Tooltip string placeholder cannot be bound to string variable from array Description: It is not possible to use a string placeholder in the tooltip that is bound to a string variable from the array. Steps to reproduce: Use a table bound to an array containing string variables. Configure a tooltip using a string placeholder referencing a string field from the array. Run the visualization. Actual result: Tooltip doesn't show any text. A test project demonstrating both issues is attached. Thank you for your time and support.
Last updated: 2026-02-16
Post by yannickasselin on CloseTargetVisu
CODESYS Forge
talk
(Post)
To shutdown the TargetVisu: Add the VisuElemBase library to your project then call VisuElemBase.Visu_PRG.RemoveAllTargetVisuClients(); Exemple: PROGRAM PLC_PRG VAR xShutdownTargetVisu: BOOL; END_VAR ---------------------------------- IF xShutdownTargetVisu THEN xShutdownTargetVisu := FALSE; VisuElemBase.Visu_PRG.RemoveAllTargetVisuClients(); END_IF I tried calling RemoveAllTargetVisuClients() directly from a button mouse click event but it makes the Visu crash. So better using the code above and just set xShutdownTargetVisu to TRUE from the button. Works fine for me. To start the TargetVisu: From a cmd prompt. This will start the TargetVisu C:\Program Files\CODESYS\CODESYS Control RTE3>VisualClientController.exe --application=Application --flags=1 You can then place a .bat file on the desktop and put this inside: CD "C:\Program Files\CODESYS\CODESYS Control RTE3" VisualClientController.exe --application=Application --flags=1 exit Double clicking the .bat file will start the TargetVisu. You may need to replace the Application name by your own application name. Good to know: In the cmd above, if you replace --flags=1 by --flags=2, it will shutdown the TargetVisu.
Last updated: 2026-03-11
Post by charleskirkland on Connect to Azure IoT Hub
CODESYS Forge
talk
(Post)
It sounds like your TLS setup is basically correct, since the handshake works via OpenSSL, so the issue is likely on the CODESYS side rather than the certificates themselves. From what I’ve seen with the Azure IoT Hub Client SL library, you should double-check that the SAS token is actually being generated and passed correctly to the function blocks (especially wsDeviceSaS) and that the MQTT/HTTPS FB is really triggered cyclically-otherwise the controller won’t initiate the connection at all. Also, make sure DNS, time (NTP), and full certificate chain trust are properly configured on the controller, since IoT Hub authentication depends on them even when using SAS tokens. Another thing worth checking is the library/runtime version-there are reports that certain versions changed behavior and caused connection issues. I’d recommend starting with the official demo project (AzureMQTTDemo) and comparing it step by step with your setup to see what’s missing or not triggered. Speed Stars
Last updated: 2026-04-27
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.