Post by ahuckphin on Issues with Modbus Slave with Raspberry Pi
CODESYS Forge
talk
(Post)
codesyscontrol_user.cfg [SysCom] Linux.Devicefile.1 = /dev/ttyUSB0 portnum:=COM.SysCom.SYS_COMPORT1; **parameters are used in the python-script ** method: "rtu" port: "COM8" baudrate: 9600 stopbits: 1 bytesize: 8 parity: 'N' timeout: 1 register address for humidity: 0x000 register address for temperature: 0x001 unit ID: 1 **parameteized in the modbus-master-comport ** see attached files
Last updated: 2024-07-11
Post by fabrp on CPU + EtherCAT redundancy
CODESYS Forge
talk
(Post)
Hi TimvH, thanks for feedback. I also test the redundancy with Wago PFC 8212 but when I did it (firmware 28) it was not so much stable..Did you have some issue on master/slave switchover? are you using with EtherCAT remote I/O? I was looking for a most powerful hardware (PC based, x64) BR
Last updated: 2026-02-01
Post by naks on Dynamic Setting IP Address from IEC code
CODESYS Forge
talk
(Post)
Hi everyone, I was able to change the IP address of my Controller (wago 750-8212), but when i restart my Controller then the IP address resets to the original, are there any other settings i need to implement?
Last updated: 2024-07-08
I create python script Upload my script online to controller each time I get the password dialog
CODESYS Forge
talk
(Thread)
I create python script Upload my script online to controller each time I get the password dialog
Last updated: 2020-09-25
Post by reinier-geers on Compile error
CODESYS Forge
talk
(Post)
I know, But controller is Version 18.4. So i cant set to 19. I can try version 19. But will it run if i set the controller to 18.4
Last updated: 2024-02-26
Post by tokamk on Dynamic setting of the modbus tcp/ip slave ip address
CODESYS Forge
talk
(Post)
Hello, I'm working on a project which includes Panel-PC which communicates with a PLC through Modbus TCP/IP. On the PLC I have a CODESYS code which has Modbus slave objects. The Modbus slave objects have to have manually set IP address in order for them to work properly and the Ip address has to be the PC-Panels's IP. This project is going to a customer and they're using their own IP address realm. So, my question is that is it possible to configure these slaves in some other way, so that the customer doesn't need to modify the CODESYS project? I was thinking that would it be possible to set the IP address of these slaves from external source?
Last updated: 2024-02-15
Post by s1ack on Wago PFC200 Ethernet / IoDrvEthernet Issue?
CODESYS Forge
talk
(Post)
I changed the interfaces to br0 & br1 as they are designated on the Wago PFC200. That issue is resoved. However, on site I have very high system cpu usage, system as in Linux. Presently it is not known why - my bench system does not exhibit such high system usage. In the past this was due to IGMP network traffic every 250uSec from synchronized inverters.
Last updated: 2025-01-22
Post by s1ack on Wago PFC200 Ethernet / IoDrvEthernet Issue?
CODESYS Forge
talk
(Post)
It's suspected that the CPU loading is the Linux Kernal in the Wago PFC200 dealing with IGMP multicast traffic (@ 250 uSec) from inverters on site. The inverters use the ethernet network and IGMP to synchronize, the customer removed the switch that shipped with the system, and thus removed IGMP Snooping that was plug-and-play within the provided switch.
Last updated: 2025-01-24
Post by mwandy on Codesys Project Protection
CODESYS Forge
talk
(Post)
I'm having trouble finding clear answers on this. I'm looking for a way to make a Codesys project password protected so that if the project is distributed it can be used to log into a controller to view and debug logic. At this same time I want to prevent the project from being saved as well as edits being downloaded to the controller. Basically I want to make a whole project view-only. What is the beat way to achieve this? I have had minor success with access rights, which solves the problem with trying to login if the project doesn't match what is in the controller. However with this solution, edits can still be made and saved, possibly corrupting the core project, preventing future logins. Any suggestions?
Last updated: 2024-03-29
Post by akrawczyk on Dynamically enabling/disabling Modbus slave devices in runtime (performance issue with timeouts)
CODESYS Forge
talk
(Post)
Hi everyone, I'm working on a CODESYS-based project running on a Weintek cMT2078X HMI with a built-in CODESYS runtime. The system communicates with multiple Modbus RTU slave devices, arranged in a cascade. The number of connected units can vary between 2 and 8, depending on the installation. Each slave has 17 Modbus channels, which are polled cyclically every 5 seconds. The issue is that when fewer devices are physically connected (e.g. only 3 out of 8), the Modbus master still attempts to communicate with all configured slaves. This leads to massive delays due to timeouts (currently 200ms per channel). For one disconnected device, thatβs: 17 Γ 200ms = 3.4 seconds of delay per polling cycle, and this quickly multiplies with each additional missing slave. This behavior significantly degrades the system's performance and responsiveness. We attempted a workaround where we tried to trigger polling based on a variable in the PLC program, but this caused instability and even led to hardware hangs/freezes on the cMT2078X β likely due to clashes in how the Modbus polling engine and program logic interact at runtime. My main questions are: Is there a way in CODESYS to dynamically enable/disable Modbus slave devices at runtime, using a BOOL or INT variable (e.g. indicating number of active slaves)? Can devices or channels be conditionally polled or temporarily disabled without removing them from the device tree? Are there any best practices or examples for handling variable numbers of Modbus slaves in scalable systems like this? Would splitting communication across tasks or interfaces help reduce the impact of timeouts? Any advice, documentation references, or architectural suggestions would be extremely helpful. I'm looking for a robust way to dynamically scale slave polling without degrading system stability or performance. Thanks in advance!
Last updated: 2025-08-11
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 trprsmn on "Scan Network" doesn't find CR1140 device (ifm)
CODESYS Forge
talk
(Post)
Hi, I'm watching an ifm tutorial on how to setup an industrial controller in CODESYS. I'm using an 'ecomatDisplay43inch_64bit) controller. CODESYS Gateway and PLC are both runngin (systray). However if I click "Scan Network" I can't find my controller. The only thing it finds is a "desktop" it seems (I'm using a Windows 10 on a Mac Book using VMWare, so maybe it has something to do with that?). How can I fix this? Thanks in advance!
Last updated: 2024-09-11
Post by derpaul on Official MQTT-Client: MAX_RECEIVE_BUFFER_SIZE_EXCEEDED
CODESYS Forge
talk
(Post)
Hello, my PFC200 has run for a few month now without problems. But now it freezed 2 times a day. LEDs were green but the PLC was not reachable. After power off -> on. I found that the MQTT had an error: MAX_RECEIVE_BUFFER_SIZE_EXCEEDED. And MQTT hadn't reconnect since then. I tried a cold and a warm reset but nothing helped. How can I solve this? Regards, Paul
Last updated: 2023-09-21
Post by xnoop on MBTCP Slave configuration
CODESYS Forge
talk
(Post)
Hello, I use Codesys 3.5 SP18 Patch 4 (64 bit) My Codesys project is composed of several dozen of Modbus TCP Slaves. I want to configure each of them by define : - Modbus TCP Slave Configuration : Name, IPAddress, port - Channels - Mapping I can't afford to configure manually and I need to find automatic way What possibilities does the Codesys offer? 1. I know it possible to use python script to create Modbus TCP Master and Slave. But I don't find anyway to create Channels and Mapping through the API 2. I 've tested to set mapping with file.csv on a Modbus Tcp Slave, but no way to import channels definition from file 3. I 've tried to use PLCOpenXml file. For example I 've create a project with an Ethernet device. I've exported it in PlcOpenXml file. After delete the Ethernet device, I've imported the PlcOpenXml file without success. I've tried the same by creating Modbus TCP Slave. Could you help me to find to good way ? Thanks
Last updated: 2024-06-19
Correct CAN Driver for EL6751
CODESYS Forge
talk
(Thread)
Correct CAN Driver for EL6751
Last updated: 2023-09-20
ContinuousUpdate input for basic motion blocks?
CODESYS Forge
talk
(Thread)
ContinuousUpdate input for basic motion blocks?
Last updated: 2015-08-26
License for Raspberry Pi version.
CODESYS Forge
talk
(Thread)
License for Raspberry Pi version.
Last updated: 2016-10-24
LIbrary for ABB Automation builder
CODESYS Forge
talk
(Thread)
LIbrary for ABB Automation builder
Last updated: 2018-08-24
Check For Open Dialogs On Client
CODESYS Forge
talk
(Thread)
Check For Open Dialogs On Client
Last updated: 2023-09-26
Python script command for "Access Control"
CODESYS Forge
talk
(Thread)
Python script command for "Access Control"
Last updated: 2024-07-18
Confused by dwIpoTime input for SMC_Interpolator
CODESYS Forge
talk
(Thread)
Confused by dwIpoTime input for SMC_Interpolator
Last updated: 2024-07-22
Python API for GIT extensions
CODESYS Forge
talk
(Thread)
Python API for GIT extensions
Last updated: 2024-09-03
Missing function for ConfigGetParameterValueBool (SM3RaspiStepper)
CODESYS Forge
talk
(Thread)
Missing function for ConfigGetParameterValueBool (SM3RaspiStepper)
Last updated: 2024-09-30
TargetVisu for Linux SL not starting
CODESYS Forge
talk
(Thread)
TargetVisu for Linux SL not starting
Last updated: 2024-10-02
Temu Coupons for returning customers acq615756
CODESYS Forge
talk
(Thread)
Temu Coupons for returning customers acq615756
Last updated: 2024-10-26
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.