Post by lzml on HTML5 visualization controls disabled on CODESYS Control for Linux SL - overlay not supported?
CODESYS Forge
talk
(Post)
Thanks for the suggestion - I updated everything via the CODESYS Installer and restarted, but I'm still hitting the same error. What I did - Updated via Tools > CODESYS Installer - Visualization system libraries (VisuElems, VisuElemsAlarm, VisuInputs, VisuNativeControl, etc.): 4.7.0.0 -> 4.10.0.0 - CODESYS Control for Linux SL: 4.15.0.0 -> 4.21.0.0 (based on CODESYS SDK 3.5.22.20) - Restarted CODESYS Development System Checked project environment (Project > Project Environment) after restart - Compiler version: 3.5.22.0 - Library versions: all up to date - Visualization Profile: CODESYS Visualization 4.10.0.0 - SoftMotion version: 4.20.2.0 Result: compiling with Device = CODESYS Control for Linux SL still fails with the same error: "Overlay is not supported for your target visualization device." The custom HTML5 control is still disabled/missing from the Toolbox with this Device selected (same as before), and still appears normally when I switch the Device to a Windows target. Is there anything else specific I should check (e.g. a setting on the Device description itself, a different SL package/edition, or is WebVisu overlay for custom HTML5 controls simply not implemented yet for CODESYS Control for Linux SL regardless of package version)? Any pointer appreciated.
Last updated: 2026-08-05
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 patrik on Wish: CODESYSControl.cfg - again
CODESYS Forge
talk
(Post)
Really good post. I hope that it gets seen by CoDeSys staff. I often find the documentation lacking when it comes to using CoDeSys in more complex ways. If using standard "basic PLC functionality", then it's fine and functions are documented in a sufficient way. Once you go outside of that bubble then I find the documentation not enough. CODESYSControl.cfg is a good example of this. And why isn't more of this integrated in the IDE. like changing port of the webserver. Why is it hidden in this file and not accessible through the IDE. It feels like a layer of complexity purposely left in so you don't change it if you don't know what you are doing. Like the argument is if you have the know-how to find the file you have the know-how to edit it. I find the documentation lacking when it comes to more complex libraries too. Like the element collections library. there is parameters I still don't quite know what they do. I can't find any documentation about them. There is an example project to download from CoDeSys so you can see how you are supposed to set your factories up. I leave some parameters like it is in the example. Should I? I don't know. Does it work. Yes. But I could perhaps create memory leaks if I get something wrong and I don't see that until way later. In the create method of your element factory you have a function called __vfinit and you just have to accept that it works. Why can't I get insight in what it does through documentation? Don't CoDeSys want us to know how these work so we can't use them to accidentally break something? I find the error logging lacking too. I've had the CoDeSys service crash but it doesn't say why. I've seen windows noticing the crash but no error code was sent or error message. Also in my current issue where the application fails to start after power outage. I can see in the log that it fails to load retain in the application as one log entry and application failing to start as another. But why? Why does loading the retain fail? give me more information! Is it just a skill issue with me? I don't know. If it is then I'd still want CoDeSys to step up their game when it comes to documentation. I'm sorry if a lot of frustration comes though in this post. I really like the product and what I can do with it compared to other PLC brands.
Last updated: 2024-11-21
Post by spiessli on Raspberry Pi 4 with Legacy Drivers and Codesys 3.5.19 Patch 4
CODESYS Forge
talk
(Post)
Thanks for the suggestion, I have tried it eagerly: I have updated all packages to latest version with Codesys Installer and installed newest runtime and gateway on Raspberry Pi. Unfortunately, the error is still there. As soon as I add the SM_Drive_Servo to the device tree, I get the error below when generating the code. Reverting SM3_Basic to version 4.14 makes the error disappear. ------ Übersetzungslauf gestartet: Applikation: Device.Application ------- Code typisieren... Code erzeugen... [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0032: Typ 'Unbekannter Typ: 'ConfigGetParameterValueLREAL(pParam, 0)'' kann nicht in Typ 'LREAL' konvertiert werden [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0046: Bezeichner 'ConfigGetParameterValueLREAL' nicht definiert [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0035: Programmname, Funktion oder Funktionsbausteinstanz an Stelle von 'ConfigGetParameterValueLREAL' erwartet [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0032: Typ 'Unbekannter Typ: 'ConfigGetParameterValueLREAL(pParam, 0)'' kann nicht in Typ 'LREAL' konvertiert werden [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0046: Bezeichner 'ConfigGetParameterValueLREAL' nicht definiert [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0035: Programmname, Funktion oder Funktionsbausteinstanz an Stelle von 'ConfigGetParameterValueLREAL' erwartet [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0032: Typ 'Unbekannter Typ: 'ConfigGetParameterValueLREAL(pParam, 0)'' kann nicht in Typ 'LREAL' konvertiert werden [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0046: Bezeichner 'ConfigGetParameterValueLREAL' nicht definiert [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0035: Programmname, Funktion oder Funktionsbausteinstanz an Stelle von 'ConfigGetParameterValueLREAL' erwartet [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0032: Typ 'Unbekannter Typ: 'ConfigGetParameterValueLREAL(pParam, 0)'' kann nicht in Typ 'LREAL' konvertiert werden [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0046: Bezeichner 'ConfigGetParameterValueLREAL' nicht definiert [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0035: Programmname, Funktion oder Funktionsbausteinstanz an Stelle von 'ConfigGetParameterValueLREAL' erwartet [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0032: Typ 'Unbekannter Typ: 'ConfigGetParameterValueLREAL(pParam, 0)'' kann nicht in Typ 'LREAL' konvertiert werden [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0046: Bezeichner 'ConfigGetParameterValueLREAL' nicht definiert [FEHLER] sm3_drive_servo, 4.10.0.0 (codesys): GetStandardConfigParams [AXIS_REF_SERVO]: C0035: Programmname, Funktion oder Funktionsbausteinstanz an Stelle von 'ConfigGetParameterValueLREAL' erwartet Übersetzung abgeschlossen -- 15 Fehler, 0 Warnungen : Kein Download möglich
Last updated: 2023-12-20
Post by axberry on CODESYS Control for Raspberry Pi 5 - "Hardware version or firmware version not supported" on Rev 1.1, persists across multiple runtime versions and OS images
CODESYS Forge
talk
(Post)
Hi, I'm trying to run CODESYS Control for Raspberry Pi SL on a Raspberry Pi 5, and the runtime consistently fails to start with the following error when launched manually: ooops... this runtime was built for RASPBERRYPI. Hardware version or firmware version not supported! (-18, 0x00000BB8, 0xFFFFFFFB) Hardware: Raspberry Pi 5 Model B Rev 1.1 Revision code: d04171 CPU: aarch64, BCM2712 Serial number is correctly exposed via /proc/cpuinfo and /proc/device-tree/serial-number /proc/device-tree/model correctly reports "Raspberry Pi 5 Model B" What I've tried (all resulting in the same error): CODESYS Control for Raspberry Pi SL 4.11.0.0 (SDK 3.5.19.61) — the version that introduced Pi 5 support CODESYS Control for Raspberry Pi SL 4.21.0.0 (SDK 3.5.22.20) — latest available Raspberry Pi OS Bookworm (64-bit) with kernel 6.12.93+rpt-rpi-2712 (June 2026 build) Fresh install on Raspberry Pi OS Bookworm (64-bit) with an older image from November 24, 2025 — same error, ruling out a kernel-version regression Bootloader/EEPROM confirmed up to date (rpi-eeprom-update reports "up to date") Clean purge and reinstall of the codesyscontrol package each time (verified via dpkg -l, no leftover files) Verified /etc/codesyscontrol/3S.dat correctly symlinks to /etc/codesyscontrol/3S_aarch64.dat The service starts (systemctl status briefly shows active (running) with a real PID under /opt/codesys/bin/codesyscontrol.bin), but crashes shortly after and the process disappears — port 11740 never opens. Since this happens identically across two different runtime versions and two different OS images (5+ months apart), it doesn't seem to be a kernel/firmware timing issue. Could this be specific to the Rev 1.1 board revision, or is there a known issue with the hardware detection logic in the SL runtime that I should be aware of? Happy to provide full debug logs (-d flag output) or journalctl output if useful. Thanks in advance!
Last updated: 2026-08-10
Post by ppix on Establishing TLS Connection with MQTT Broker using MQTT Client SL Package
CODESYS Forge
talk
(Post)
I’m currently working on establishing a TLS connection with an MQTT broker using the MQTT Client SL package in CODESYS. While I’ve successfully established communication with the broker without TLS, I'm encountering issues when trying to enable TLS. In the 'MQTT Explorer' application, I can easily upload the server certificate (.crt), client certificate (.crt), and client key (.key). However, in CODESYS, I can’t find a way to upload my client key (.key file). Here's a summary of my current setup: Certificates: I have uploaded both the client and server certificates to the certificate store under the 'Trusted Certificates' folder in the security screen. TLS Context Initialization: Despite setting the _sCommonName as the name of my client certificate, a new self-signed certificate is created and placed within the device’s certificates. I then need to manually move this certificate to the trusted certificates folder. This results in three certificates in my trusted certs folder: client cert, server cert, and the newly created cert. _ciDefaultCertInfo : MQTT.NBS.CERT_INFO := (psInfo := ADR(_sCommonName), udiSize := TO_UDINT(LEN(_sCommonName))); // CN of the certificate (common name) _sCipherList : MQTT.NBS.CIPHER_LIST := STRUCT(psList := ADR('HIGH'), udiSize := 4); // Cipher string see https://www.openssl.org/docs/man1.1.1/man1/ciphers.html _tlsContext : MQTT.NBS.TLSContext := ( sUseCaseName := _sCommonName, // A certificate is stored in the certificate store with the use case name. You can choose any name. Here we use the common name. ePurpose := MQTT.NBS.PURPOSE.CLIENT_SIDE, // For client certificates set this to NBS.PURPOSE.CLIENT_SIDE sTLSVersion := '1.3', // The TLS version sCipherList := _sCipherList, // Set the cipher list sHostname := sHostname, // The hostname of the broker udiVerificationMode := 2, // 2 => Active Peer verification ciCertInfo := _ciDefaultCertInfo, // Set the cert info itfCertVerifer := 0); // 0 => No Verifier mqttClient : MQTT.MQTTClient := (xUseTLS:=TRUE, itfTLSContext := _tlsContext, itfAsyncProperty := _asyncProperty); Additional Details: In the client FB, I’ve set uiPort:= 8883, xUseTLS:= TRUE, and configured itfTLSContext as mentioned above. The certificates are encrypted with SHA256RSA. sHostname is the IP address of my broker. I’ve attached a copy of the client FB, which shows straight lines where variables are assigned and boxes where they are not. I am currently trying this on the only 2 compatible versions of COSDESYS with my controller (V3.5.15.20 and V3.5.18.40) My Question: How do I correctly set up this mTLS connection? What might I be missing? Any guidance or suggestions would be greatly appreciated, especially considering I’ve already successfully established a non-TLS connection with the same broker. Thank you in advance for your help!
Last updated: 2024-06-19
Post by mozed on Connection to device closed
CODESYS Forge
talk
(Post)
Hello I am using an OpusA3 with version 3.5 SP17 Patch 3 as part of a project. I had no real problem before I encountered a problem that blocked me. The detection of the OpusA3 from Codesys is done correctly. The gateway is well configured and if I ping the gateway or the OpusA3 I receive the response correctly. The problem is that when I try to connect, the Opus screen freezes and a few moments later Codesys displays an error message ("connection to device closed"). I tried to change PC, to update the runtime, to change OpusA3 but the problem remains the same. I'm a little lost knowing that before it worked without problem. I went back to a previous version of the project (where it worked correctly) but the message still appears. Do you have any clues to solve the problem? Sincerely,
Last updated: 2023-08-23
Post by tvm on Web Client (HMI) Disconnects from Webvisu (Weidmuller u-OS)
CODESYS Forge
talk
(Post)
ok, that's different than our issue then. We're using Schneider Electric M262 PLCs, and we've had it where certain web browsers cause the web server to only allow https connections, but it's not recoverable with a refresh. It usually requires a power cycle or even a full firmware flash. Your issue might have more to do with the timing. I don't know if it helps you, but we normally run our visu task at 200mS, with an update rate of 200mS. Seems to work. I went through this: https://faq.codesys.com/pages/viewpage.action?pageId=112525371 but it really seems like trial and error.
Last updated: 2023-09-06
Post by derpaul on PFC200 Update to 4.9.0.0 - No Connection
CODESYS Forge
talk
(Post)
Hallo Today I decided to perform an Update on my PFC200 but after the Update the Device was not reachable anymore. I tried reseting to factory reset. Software reset and so on, but nothing helps... In my Router I can see it, I cann SSH into the PFC200 but it is not reachable. Then I try to go back to 4.8.0.0 But now I get this error: [INFORMATION] Befehl SSH auf root@192.168.1.17 ausführen: Laufzeitsystem stoppen [FEHLER] Fehlerausgabe: /etc/init.d/codesyscontrol: line 34: /opt/codesys/scripts/init-functions: No such file or directory [INFORMATION] Standardausgabe: /etc/init.d/codesyscontrol: line 34: /opt/codesys/scripts/init-functions: No such file or directory Please help, I can't get this thing working... Regards
Last updated: 2023-09-27
Post by derpaul on PFC200 Update to 4.9.0.0 - No Connection
CODESYS Forge
talk
(Post)
Hallo Today I decided to perform an Update on my PFC200 but after the Update the Device was not reachable anymore. I tried reseting to factory reset. Software reset and so on, but nothing helps... In my Router I can see it, I cann SSH into the PFC200 but it is not reachable. Then I try to go back to 4.8.0.0 But now I get this error: [INFORMATION] Befehl SSH auf root@192.168.1.17 ausführen: Laufzeitsystem stoppen [FEHLER] Fehlerausgabe: /etc/init.d/codesyscontrol: line 34: /opt/codesys/scripts/init-functions: No such file or directory [INFORMATION] Standardausgabe: /etc/init.d/codesyscontrol: line 34: /opt/codesys/scripts/init-functions: No such file or directory Please help, I can't get this thing working... Regards
Last updated: 2023-09-27
Post by ofey on Modbus TCP communication
CODESYS Forge
talk
(Post)
Hi! I tried setting up the PLC I'm working with (Beijer GN-9373) to connect to a modbus master running on a laptop. I have an ethernet connection (via USB-C to ethernet) between the laptop and the controller. I have tried following tutorial on how to set this up. I have added an ethernet device with the IP-address of the PLC. Further I added a ModbusTCP_Slave_Device with default settings. I get the error "Failed to open TCP Port: 1" when I try to go online with the PLC. Earlier I tested the exact same set up with the soft PLC from codesys. I can then read/write values correctly with the Modbus master i have running on the laptop. Hope anybody can help me with this, thanks in advance!
Last updated: 2023-10-06
Post by ewi04 on Recipe Manager - RecipeManCommands, load & write wrong values, Bug?
CODESYS Forge
talk
(Post)
Hallo, I have a strange problem with the recipe manager. ISSUE: When using RecipeManCommands not all values are loaded correctly. Saving a recipe with CreateRecipe(), ReadAndSaveRecipe() or ReadAndSaveRecipeAs() works without any problems. BUT: LoadRecipe(), WriteRecipe() or LoadFromAndWriteRecipe() do not load the data correctly. It is Interesting that we have a different error pattern with LoadRecipe() than with WriteRecipe() or LoadFromAndWriteRecipe(). LoadRecipe() does not load all data and WriteRecipe() or LoadFromAndWriteRecipe() overwrites some data or assigns it incorrectly. And it is also strange that LoadRecipe() writes the values to the PLC. Normally it doesn’t do it. It makes no difference whether the memory type is textual or binary. I have an object consisting of STRUCTs which is inserted in the recipe definition. Environment: Codesys V3.5 SP19 Patch 4 (64Bit), Recipe Management 4.2.0.0 *Add a project (reduced to the problem)
Last updated: 2023-11-15
Post by pazderai on CanOpen write issue
CODESYS Forge
talk
(Post)
Thank you for an answer. Unfortunatelly, it doesn't work. The slave needs command byte as follows 0x22. It means expedited transfer where s-bit is not set, therefore data length is not specified. If I use segmented mode by CiA405.SDO_WRITE_DATA it produce command byte as follows 0x21 which is unfortunately supported by the slave and it returns with error 0x05040001 - SDO Abort Code -Client/server command specifier not valid or unknown. I can use CAN API low level to overcome this problem where it is possible to set 0x22 as a command byte, but than I can use user interface to set the communication probably, because I thing that machine expert uses library CiA405.SDO_WRITE for setting the slave. Or am I wrong?
Last updated: 2024-07-16
Post by toffeebonbon on EL7041-0052 - does it run with EL7041 SoftMotion?
CODESYS Forge
talk
(Post)
I let this project rest for a while and picked it up last week. I have been in contact with the support from beckhoff and got the information that the terminals were identical (communication wise). As the Log of the Axis (not the drive's log) shows the error when trying to write into the register 0x8012 and set the value for an encoder to a value that is the default - at least according to the manual - I was wondering if it is possible to "not write that value" to skip that part? Or am I misunderstanding the way the library communicates with the drive?
Last updated: 2024-07-24
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 opineiro on Stack overflow with really simple function
CODESYS Forge
talk
(Post)
Hi, I have an issue with a function which sends a message through API Rest. I'm using a function from httpCLient library. I have tested this function inside a program and it works fine. But when I want to use it inside a function (so I can call it simultaneously from 2 different points on the main program) it gives a stack overflow error. In detail it says: "C0297 Stack Overflow on Main Task. Stack sizes... Call hierarchy:" I have simplified as much as I can the function, but I'm hitting a wall with this. Anybody has an idea of what's wrong? Thanks!
Last updated: 2024-09-16
Post by jari-koivuluoma on Newly created texlists wont appear in the selection dropdown
CODESYS Forge
talk
(Post)
When I create a new textlist in Codesys 3.5 SP19 Patch 5, it wont appear in the dropdown menu at Rectangle element > Dynamic texts > Text list. If I just type the name of the textlist to the field (in quotes), I get an error saying that some file is missing. Any good ideas what to do and what is going on. I recently updated to that version and I only now noticed this when I needed to add a new textlist so Im quite screwed with this not being able to add text lists. While im typing this, I tried copying an existing list and modifying it and it seems to show. Any ideas?
Last updated: 2024-09-19
Post by pierre on difference between stub file and source file in scriptengine
CODESYS Forge
talk
(Post)
I included the stub files of scriptengine (codesys python api) in a directory scriptengine of a project. I tried to include librarymanager like that: from scriptengine import librarymanager visual studio code detected an error. It said librarmanager could not be found. Indeed in the stub file, this was library_manager. But if I change it in my code, the plugin doesn t work anymore. I found an easy solution to this problem. I ve just changed the copied stub files.(library_manager -> librarymanager) But I think it would be better if you update it yourself in the future.
Last updated: 2024-09-20
Post by pierre on difference between stub file and source file in scriptengine
CODESYS Forge
talk
(Post)
I included the stub files of scriptengine (codesys python api) in a directory scriptengine of a project. I tried to include librarymanager like that: from scriptengine import librarymanager visual studio code detected an error. It said librarmanager could not be found. Indeed in the stub file, this was library_manager. But if I change it in my code, the plugin doesn t work anymore. I found an easy solution to this problem. I ve just changed the copied stub files.(library_manager -> librarymanager) But I think it would be better if you update it yourself in the future.
Last updated: 2024-09-20
Post by jacobwago on v3.5 SP19 - Modbus TCP Devices - Channel Limit?
CODESYS Forge
talk
(Post)
Hello, I have experienced the same issue as described above but for the Modbus Serial configurator. Looking for a solution. In v3.5 SP19 Patch 7 the Modbus Serial Master Slave configurator has a "virtual" limit of 10 channels. In v3.5 SP18 Patch 5 this virtual limit does not exist. I can successfully copy back and forth from 18 to 19 with out any build error. However, this is not a good solution for our customers. What is even more confusing is that the IoDrvModbus library is the same version (4.3.0.0) for both SP18 and SP19. Please help in providing a fix to the virtual channel limit of 10 in SP19. Thanks,
Last updated: 2024-09-29
Post by rmaas on TargetVisu for Linux SL not starting
CODESYS Forge
talk
(Post)
Hello, I am trying to get TargetVisu for Linux working but i am having some troubles. The problem is that after installation it is not starting automatically on boot and i cannot start it from the update Targetvisu tool. When i try i get the following error (see attached screenshot) The file /opt/codesysvisualization/scripts/codesysvisualization_start.sh is missing... Steps performed: - installed fresh Debian 12.7 on virtual machine - installed all required libraries as described here: https://content.helpme-codesys.com/en/CODESYS%20Control/_rtsl_target_visu_for_linux.html - then installed the TargetVisu for Linux SL 4.13.0.0 using the Codesys IDE Does someone know how i can fix this? Best Regards, Rinie
Last updated: 2024-10-02
Post by pistola on Case Function - Multiple Conditions, Is it possible?
CODESYS Forge
talk
(Post)
Looking at the help (https://content.helpme-codesys.com/en/CODESYS%20Development%20System/_cds_st_instruction_case.html). I don't think it is possible but I figured I'd ask. I'm looking at have a case that evaluates two variables, instead of having multiple If Else statements I was hoping I could just use a case. Example * Case Var1 & Var 2 of 10 & 10: Instruction Code 10 & 20: Instruction Code 20 & 20: Instruction Code End_Case Obviously I tried typing as noted above and Codesys threw an error. But I was wondering if there was a different way of programming to make something like this work? If not I'll just use a bunch of If Else Statements, Thanks.
Last updated: 2024-11-03
Post by sigurdrb on Codesys and error messages, warnings exceptions etc.
CODESYS Forge
talk
(Post)
Hi, I tried some different libraries (CmpApp etc.) to find some global variables that I could read out as a variable in the codesys environment. Do any one of you know which libraries are best suited for this, and how I can read it out? My goal is to send messages, warnings etc. to the system that communicates to the PLC. Currently if something goes wrong I need to see the logfiles, or go online with the controller. I think I could save a lot of time if I could read the errors from our user interface that is connected to the PLC by TCP/IP.
Last updated: 2024-11-06
Post by lsislsis on SIGABRT Error
CODESYS Forge
talk
(Post)
2024-11-08T13:39:07.354Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state* We recommend a reboot of the controller now! 2024-11-08T13:39:07.354Z, 0x00000111, 8, 260, 3, #### Exception: More than 2 exceptions in CH_COMM_CYCLE: Stop logging 2024-11-08T14:36:33.126Z, 0x0000100d, 1, 0, 0, Demo mode expired. 2024-11-08T15:35:49.253Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state We recommend a reboot of the controller now! 2024-11-08T15:42:54.664Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state We recommend a reboot of the controller now! *
Last updated: 2024-11-08
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.