Post by timvh on When Keyboard Key is in Hold, then Webvisu is extreme slow and latent
CODESYS Forge
talk
(Post)
I'm not really sure what you are trying to do, but maybe you are referring to using the CmpCharDevice library? When you "open" the connection to a device, you can pass flags. What helped me is to set the non-blocking flag. I'm not sure if this is what you are referring to, but maybe it helps: dFlags: DINT := CmpCharDevice.ACCESS_MODE.O_RDONLY + DINT#4000; // see details for flags: http://linux.die.net/man/2/open, + DINT#4000 is for non-blocking hDevice := CmpCharDevice.CDOpen(szFilename, dFlags, Result);
Last updated: 2023-09-20
Post by timvh on Management of a PLC network from a remote station
CODESYS Forge
talk
(Post)
Maybe the CODESYS HMI is a good solution. https://store.codesys.com/en/codesys-hmi-sl-bundle.html Run this on the remote main control station. In the HMI application you can add the data source manager and to this manager you can add Data sources. A data source has a reference to the PLC you want to connect to and can get access to the variables of the PLC application. You can then use these variables in the visualization of the HMI application.
Last updated: 2023-12-04
Post by mikek10 on Some 'pathetic' errors in SoftMotion program
CODESYS Forge
talk
(Post)
I was answering your last paragraph Meanwhile, I would like to understand why the motion FB instances must still be called even after the Execute is set to FALSE, especially in view of the fact that the next instruction is programmed to abort the previous one, with BufferMode set to 'Aborting'. All these unnecessary FB calls are an unnecessary overhead on the CPU anyway. Is there any precise rule about when to cease calling the various instances? (It should precisely be the 'done' status that says this one has finished its work).
Last updated: 2024-07-18
Post by aliazzz on Unable to deploy Virtual Control SL on ARM64 (Raspberry Pi5)
CODESYS Forge
talk
(Post)
An interesting remark for CODESYS Support. I found this after looking through the Runtime Deploy Tool messages when I connect to an AMD64 architecture Successfully Connected to Target ( {MyIP} - AMD64 ) when I connect to an ARM64 architecture (Raspberry Pi5) Successfully Connected to Target ( {MyIP} - ) As clearly seen in the attached .png, the AMD64 target is detected, while the ARM64 target architecture is not detected (displayed). I assume that this is the reason why the pulldown menu isn't populated correctly.
Last updated: 2024-07-28
Post by micik on ERR_OK not recognized
CODESYS Forge
talk
(Post)
Hello, if I try to use ERR_Ok in my code to check whether the file is open correctly or not, I get an error "Identifier ERR_OK not recognized", I can use plain 0 (zero) instead. But in general, is this a proper way to check for success of file operation since the 4th parameter is a poinmter to RTS_IEC_RESULT, and normally I would expect this to be used somehow. _hFile := SysFileOpen(_sFileName, am:=SysFile.ACCESS_MODE.AM_WRITE, ADR(_result)); IF _result <> 0 THEN udDiag := 100; RETURN;
Last updated: 2024-08-17
Post by richiemuia on Static Analysis, Loading Files via script.
CODESYS Forge
talk
(Post)
I've seen that you can use cmds like below to run SA from scripts. system.commands["staticanalysis", "run"].execute() But I would like to run different SA configuration files to create separate logs and cant find anywhere in the scripting engine if this is supported. This stems from if I turn on everything, SA stops reporting issues in the message log when the list gets over 600ish issues. Once we have done an initial clean up of code this wont be an issue, but I'm trying to get a baseline to track improvement.
Last updated: 2024-08-21
Post by richiemuia on Static Analysis, Loading Files via script.
CODESYS Forge
talk
(Post)
I've seen that you can use cmds like below to run SA from scripts. system.commands["staticanalysis", "run"].execute() But I would like to run different SA configuration files to create separate logs and cant find anywhere in the scripting engine if this is supported. This stems from if I turn on everything, SA stops reporting issues in the message log when the list gets over 600ish issues. Once we have done an initial clean up of code this wont be an issue, but I'm trying to get a baseline to track improvement.
Last updated: 2024-08-21
Post by durallymax on Access Variable Visu Dialog
CODESYS Forge
talk
(Post)
Is there a way to access the variable in the called dialog? Example: Text Field element with PLC_PRG.myVar as Text variable. OnMouseClick configured to write variable with keypad pop-up. OnValueChanged configured to Execute ST RND(PLC_PRG.myVar,2); Rather than change myVar with each copy of this Text Field, is there a way to access whatever the configured text variable is? Generally try to stay away from ST in visu, but was curious regardless.
Last updated: 2024-11-14
Post by arwie on Use MC_Home without enabling the drive for homing method 35
CODESYS Forge
talk
(Post)
Is it possible to use MC_Home without enabling the drive (MC_Power)? On the drive the homing method 35 (Homing on current position) has to be executed. The drive has to stay disabled due to safety. This is explicitly allowed by the drive. Unfortunately MC_Home reports the error SMC_REGULATOR_OR_START_NOT_SET when executed. Are there other options to start homing, if not with MC_Home?
Last updated: 2025-06-25
Post by camjam on BOOL variable in OPC UA and modbus simultaneously
CODESYS Forge
talk
(Post)
I have come across this. The only way i could get it to work would be to define a word that is also the same address as the Bools. eg %MX600.0 through to %MX600.15 would be individually defined in the variables and them have another variable word defined at %MW300. You still need to break out the word in what ever program you are using to read/write the OPCUA tags.
Last updated: 2025-08-18
Post by jzhvymetal77 on Special Chars in Visualizationfor QR code string
CODESYS Forge
talk
(Post)
In Visualization, is there any way to make special characters in a string display properly in a Text object? I wrote a function block to create QR codes at runtime. My code uses β$DB,β which in ASCII should render as a solid block. The code works, but to display it in Visualization I had to create multiple rectangles with visibility bound to a BOOL array. That works, but since each BOOL must be exposed as a separate variable, it consumes most of the available monitoring resources. See Attached image.
Last updated: 2025-09-29
Post by jzhvymetal77 on Special Chars in Visualizationfor QR code string
CODESYS Forge
talk
(Post)
In Visualization, is there any way to make special characters in a string display properly in a Text object? I wrote a function block to create QR codes at runtime. My code uses β$DB,β which in ASCII should render as a solid block. The code works, but to display it in Visualization I had to create multiple rectangles with visibility bound to a BOOL array. That works, but since each BOOL must be exposed as a separate variable, it consumes most of the available monitoring resources. See Attached image.
Last updated: 2025-09-29
Post by eschwellinger on Licensing info not available.
CODESYS Forge
talk
(Post)
yes and no ... if you run the license server on the host (to serve licenses to the docker instances / vplcs then there is no runtime which could check the licenses on the host. Therefore you need the CODESYS WBM to activate or check the licenes or you could use in CODESYS IDE the licensemanager ( not the one for the device licenses) but you have the the IP of the license server that he know where to search for the licenses ..tool options i guess to add it, will add a screenshot later.
Last updated: 2025-10-01
Post by apurv on Cannot pass array of constant size to a function as a reference
CODESYS Forge
talk
(Post)
I have a Array of constant size defined like this Var Constant MAX_SIZE :UINT := 10; End_var VAR array : ARRAY[0..MAX_SIZE] OF INT; END_VAR Now I want to pass this array to a function by reference, Function fun : INT VAR_IN_OUT CONSTANT MAX_SIZE : UINT; END_VAR VAR_INPUT array : REFERENCE TO ARRAY[0..MAX_SIZE] OF INT; END_VAR but when I run this it gives strange Errors Error : Cannot Convert type 'ARRAY [0..MAX_SIZE] OF INT' to type 'ARRAY[0..MAX_SIZE] OF INT'
Last updated: 2024-01-07
Post by haydermsalih on OSCAT Network LIBRARY: FTP_CLIENT
CODESYS Forge
talk
(Post)
Hello I am using FTP_CLIENT to donwnload/Upload a text or CSV file from FTP server. UpLoading from PLC to FTP server is working without any problem but when I try to download from FTP server I get an error. The FTP_CLIENT Block allows me to add URL but I do not where I can specify the direcory to save the downloaded file... is there anyone has an experience with downloading from FTP server using FTP_CLIENT block. Thanks in advance Hayder
Last updated: 2024-01-24
Post by durstloescher on Codesys Input Detector
CODESYS Forge
talk
(Post)
Good morning, I am currently working on implementing a display dimmer. I want the display to dim after X minutes. This works so far. The implementation is done via the Linux subsystem, to which a command is sent to dim the display. However, my problem is resetting the timer when input is received. I want the dimming timer to be reset with each click/touch. Unfortunately, I can't find a suitable solution for this. Are there any ways to do this? Codesys v3.5 SP19 Patch 2
Last updated: 2024-02-15
Post by andy-yemm on Assertion Failed
CODESYS Forge
talk
(Post)
I had similar assertion failed error messages today. I am fairly new to Codesys. I tried using SFC for the first time, I usually use ST. Anyway I had errors in some of my transitions. I copied and pasted transition code and forgot to change the target of the code. I started getting lots of the assertion errors but now I have sorted out the problems and it compiles OK the assertion error messages seem to have stopped. There do not seem to be any other responses to your post, did you resolve your problem?
Last updated: 2024-03-19
Post by marcolim on RPC failed 0x16c9a085
CODESYS Forge
talk
(Post)
Hello Matteo, I think the problem is about configuration of firewall (windows firewall usually). You can disable temporary the firewall to check if the communication works. Eventually you can: Go to the control panel -> Windows Defender Firewall -> Allow an app or feature Enable the options to change the settings. Scroll down in the application list to CODESYS and CODESYS ControlService. If you donβt see this application add it to the list. Make sure that all the checkboxes are checked (Domain, Private and public).
Last updated: 2024-04-01
Post by dkugler on Codesys SVN
CODESYS Forge
talk
(Post)
Don't set on SVN. The service phase has started in March 2024 and will be discontinued in 2027. We actually use SVN and have to switch to GIT in the future. As I informed, there is no way of getting a single SVN or GIT licence. I' dont understand, why Codesys forces us customers to pay for an expensive Professional Edition paket from year to year using only one part of it! If you find a way to buy a single licence, let me know.
Last updated: 2024-04-29
Post by durallymax on VAR_INFO from inside of a FB to get info on the instance.
CODESYS Forge
talk
(Post)
The help link appears to be broken. When I implemented something similar I had to add {attribute 'reflection} above the declaration of the FB with {attribute 'instance-path'} above the string VAR that would contain the path. Then wrote a function to trim off however much I wanted removed by searching for periods, then formatting it with spaces at the periods and removing brackets on arrays while also breaking up the PascalCase to present it a bit nicer for the end-users.
Last updated: 2025-12-12
Post by mostafa-beshr on implementing continuous movement in Codesys
CODESYS Forge
talk
(Post)
Hi everyone, Iβm working on implementing continuous movement in Codesys, but I've run into some trouble. I've tried using ALL SM3 Basic and SML without success. Iβm specifically looking for a library that supports continuous updates and can fetch values from a server in real time. Does anyone know of a library or approach that fits these requirements? Any advice or suggestions would be greatly appreciated! i read plcopen documentaion as well as codesys Thank you!
Last updated: 2024-09-11
Post by mostafa-beshr on implementing continuous movement in Codesys
CODESYS Forge
talk
(Post)
Hi everyone, Iβm working on implementing continuous movement in Codesys, but I've run into some trouble. I've tried using ALL SM3 Basic and SML without success. Iβm specifically looking for a library that supports continuous updates and can fetch values from a server in real time. Does anyone know of a library or approach that fits these requirements? Any advice or suggestions would be greatly appreciated! i read plcopen documentaion as well as codesys Thank you!
Last updated: 2024-09-11
Post by mostafa-beshr on implementing continuous movement in Codesys
CODESYS Forge
talk
(Post)
Hi everyone, Iβm working on implementing continuous movement in Codesys, but I've run into some trouble. I've tried using ALL SM3 Basic and SML without success. Iβm specifically looking for a library that supports continuous updates and can fetch values from a server in real time. Does anyone know of a library or approach that fits these requirements? Any advice or suggestions would be greatly appreciated! i read plcopen documentaion as well as codesys Thank you!
Last updated: 2024-09-11
Post by swe-hob on call of a method of a function block in another program
CODESYS Forge
talk
(Post)
Hi, Let's assume following: PRG_1 fb_1 : fbExample1; fb_1.method_1 do something... PRG_2 fb_2 : fbExample2; fb_2.method_2 if xTest then PRG_1.fb_1.method_1(); end_if; Is there a reason why runtime hangs when I call the method_1 in PRG_1 from a method in PRG_2? Both programs run in the same task. No chance that any other program calls the method. What I practically do there is that in the program PRG_2 I add a structed object into a buffer. In PRG_1 I just process the items in the buffer.
Last updated: 2024-06-03
Post by swe-hob on call of a method of a function block in another program
CODESYS Forge
talk
(Post)
Hi, Let's assume following: PRG_1 fb_1 : fbExample1; fb_1.method_1 do something... PRG_2 fb_2 : fbExample2; fb_2.method_2 if xTest then PRG_1.fb_1.method_1(); end_if; Is there a reason why runtime hangs when I call the method_1 in PRG_1 from a method in PRG_2? Both programs run in the same task. No chance that any other program calls the method. What I practically do there is that in the program PRG_2 I add a structed object into a buffer. In PRG_1 I just process the items in the buffer.
Last updated: 2024-06-03
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.