Post by yannickasselin on MQTT QoS 1 & 2
CODESYS Forge
talk
(Post)
Hello, I am using Codesys sp20p3 and IIoT library 1.11. I am trying to test QoS 1 & 2 and I have some issues. I am using mosquitto as the broker. I am also using some other MQTT clients like Node-Red and TwinCAT. They all work as expected for every QoS levels. I only have issues with Codesys MQTT client. In the Codesys client, if I subscribe to a topic as QoS 1 or 2, and a client publishes to this topic, I receive the message. But if I disconnect the Codesys client from the network and a client publishes to the subscribed topic, when I reconnect Codesys client to the network, I don't receive the messages as expected. Also there does not seem to be an auto-reconnect feature. So I have to manually set the mqttClient.xEnable bit to FALSE then back to TRUE in order to reconnect to the broker, then I also have to set the subscribe.xEnable to FALSE and back to TRUE in order to re-subscribe to the topic, but even then, I don't receive the messages that were published while I was disconnected. What am I doing wrong? I set the cleanSession bit to FALSE and I give my client a clientID. With the TwinCAT MQTT Client, I do the same thing and everything works as expected. It even auto-reconnects to the broker. I would expect Codesys MQTT Client to be as reliable as TwinCAT. Maybe I am doing something wrong? I also noticed that when trying to publish a QoS 1 or 2 message while disconnected from the broker, it does not work. In TwinCAT, I am still able to publish. The messages are stored in the client and published once reconnected to the broker. I would expect to be able to do the same thing in Codesys. Is this all possible? Am I doing something wrong? Thank you
Last updated: 2024-10-26
Post by hki75 on FILE_OPERATION_DENIED
CODESYS Forge
talk
(Post)
mmm.. I moved my file to /var/opt/codesys/PlcLogic directory but I still getting FILE_OPERATION_DENIED.. Did I miss something? file rights are 0755
Last updated: 2023-09-27
Post by davidbo on VisuElems.cmpDynamictext.DynamicTextGetTextW returns pointer to empty string
CODESYS Forge
talk
(Post)
I know it is old and I am using 3.5 18, but I cannot extract a txt string as seen:
Last updated: 2025-02-07
Post by tomhara on Change Adapter for local gateway
CODESYS Forge
talk
(Post)
Hello. Can I ask how can I change the localhost ethernet adapter. I need to change it to OpenVPN adapter. Thanks
Last updated: 2025-02-27
Post by reinier-geers on Codesys
CODESYS Forge
talk
(Post)
Ive installed DIA from Delta. But because of problems with codesys i removed it. Now i have no gateway. How can i solve this ?
Last updated: 2024-01-14
Post by masmith1553 on no_assign C0540 message
CODESYS Forge
talk
(Post)
I am receiving warnings for no assign warning messages after I updated my project from SP18 to SP19. How do I fix these warnings?
Last updated: 2024-01-25
Post by mmpl on Array of UDT Compare
CODESYS Forge
talk
(Post)
Hi I am trying to compare value of Array. I am getting an error. I attached picture. Please help.
Last updated: 2024-04-08
Post by correo0269 on SSD1206
CODESYS Forge
talk
(Post)
Hello, I want to use the LCD display ssd1306 with i2c but I can not add that device. Someone know how I can add the display?
Last updated: 2024-04-11
Post by transmin01 on EL6751 Canopen_Manager issue
CODESYS Forge
talk
(Post)
Hi, I have a Beckhoff EL6751 EtherCAT / CANopen gateway which fails on the Canbus when the CANopen_Manager is added. Currently no devices are connected to the EL6751. If I add a device, I get the same issue. If I add a device and connect the bus, I get the same issue. Is there something I am doing wrong? Regards Trevor
Last updated: 2023-09-12
Post by gepert on parker servo and position
CODESYS Forge
talk
(Post)
Gentleman OMG, I made a huge mistake when i tried and moved shaft by hand i hold cover(as on photo) in my fingers. I was convinced that shaft has key but it there is not key. So when i turn cover it slide on shaft. When i take off cover and drive is in standstill, shaft does not move. So everything works perfectly
Last updated: 2024-08-07
Post by winki on Scan Network on gateway created with Control Sl
CODESYS Forge
talk
(Post)
Hello, I am new on CODESYS environement. I am used to BECKHOFF env. I would like to use codesys on debian distribution. I followed this tutorial : https://www.youtube.com/watch?v=TVF0LV279_4 But I am stuck on selected the device. I do not understand, everything is running correctly Someone have an idea ? Loic
Last updated: 2024-10-16
Post by spiritcore on Server not adding PLC
CODESYS Forge
talk
(Post)
I added new Gateway and I can see it connected. When I scan the server for PLC, it finds the PLC but when I click the Add To Server button, it shows "PLC was added." in the status. But I can't find the PLC in the list. I tried removing the gateway and re-configure everything again but it didn't solve. Any ideas?
Last updated: 2025-02-17
Post by sking on ModbusTCP/slave
CODESYS Forge
talk
(Post)
i can not find the solution, i have 2 modbus tcp slave and i want to know how to do when one is activated the other one is desactivated. that means when i run the project, with a bouton click on my web visu i can choose wich modbus slave i want to activate. can someone have a solution plz ? thank you :)
Last updated: 2025-04-01
Post by bilalchaudhry33 on IFM Controller CR7XXs
CODESYS Forge
talk
(Post)
HI, I am new to Embedded and telematic field . I am using codesys to program IFM controller and try to communicate two IFM controller over the CAN bus. I need some help and link tu tutorial I have no idea about codesys . I want to do in ST. I am using CAN RAW library from IFM . On following SS there is red triangle on CAN as well.
Last updated: 2025-09-24
Post by ulad on SPI Communication
CODESYS Forge
talk
(Post)
Hello. I created a project that uses SPI. This project is working well. I can see with an oscilloscope that the SPI pins are actually changing. But when I resave this project in the IDE and open it later in the system, I see a constant error. What do I need to fix? What am I doing wrong? Thank you.
Last updated: 2023-12-23
Post by hfelek on *SOURCEPOSITION* App = [Application] area=0, offset = 0 on default example
CODESYS Forge
talk
(Post)
Hello, I am trying to run CmpTemplate component provided by Codesys for version 3.5.17. I call MyExternalFunction from the component but I get error as shown below. I see component is loaded successfully on runtime logs. I feel like I am missing something basically.
Last updated: 2024-01-15
Post by stiller on OPC-UA ApplicationUri / ProductUri
CODESYS Forge
talk
(Post)
Thank you for your answer! I'm not sure, but it seems this is not what I am looking for. I attached three pictures. The first one is from the Codesys IDE. I use an Information Model to generate an OPC-UA server. I connected via UA-Expert, and there I see the URIs I would like to change.
Last updated: 2024-05-10
Post by jonasz on Device diagnosis ( EtherCAT IO card )
CODESYS Forge
talk
(Post)
Hi, I'll link to the topic not wanting to start a new one. In the application I am building, I wanted to use the diagnostics described in the CAA Device Diagnosis library. In principle, everything is ok, except for the elements related to ModbusTCP. Despite the fact that ModbusTCP is taken into account in the documentation, it is not recognised via the interfaces. FUNCTION_BLOCK NET_HW_DIAG VAR_INPUT END_VAR VAR_OUTPUT END_VAR VAR (* Referencja do struktury z danymi dla HMI ASTRAADA.*) Visu: REFERENCE TO VISU; (* Wskaźnik na mastera EtherCAT.*) pEtherCATMaster : POINTER TO IoDrvEtherCAT; (* Wskaźnik na slave EtherCAT.*) pEtherCATSlave : POINTER TO EtcSlave; (* Interfejs dla węzła w drzewie urządzeń.*) _itfNode: DED.INode; (* Ogólny interfejs magistrali. Zapewnia podstawowe informacje o magistrali polowej.*) _itfBus: DED.IBus; (* Interfejs urządzenia. Zapewnia rozszerzone informacje o urządzeniu (magistralowym).*) _itfDevice2: DED.IDevice2; (* Ogólny interfejs magistrali. Zapewnia podstawowe informacje o magistrali polowej.*) _itfStack: DED.IStack; (* Numer węzła w drzewie urządzeń.*) uiNodes: UINT; (* Operator jest rozszerzeniem normy IEC 61131-3. W czasie wykonywania operator wykonuje konwersję typu odwołania do interfejsu na inny typ. Operator zwraca wynik BOOL. Wartość TRUE oznacza, że CODESYS pomyślnie wykonał konwersję. *) xQueryResultBus: BOOL; xQueryResultDevice2: BOOL; xQueryResultStack: BOOL; (* Struktura danych dotyczących węzłów w drzewie urządzeń.*) NetHwDiag: NW_HW_STAT; ModbusTcpClientDeviceInfo: IoDrvModbusTCP.DED.DEVICE_INFO; ModbusTcpClientDeviceState: IoDrvModbusTCP.DED.DEVICE_STATE; ModbusTcpDeviceInfo: IoDrvModbusTCP.DED.DEVICE_INFO; ModbusTcpDeviceState: IoDrvModbusTCP.DED.DEVICE_STATE; END_VAR (* Pobranie wskaźników dla pierwszego mastera i pierwszego slave w sieci EtherCAT.*) pEtherCATMaster := g_pFirstMaster; pEtherCATSlave := pEtherCATMaster^.FirstSlave; (* Diagnostyka sieci EtherCAT.*) pEtherCATMaster := g_pFirstMaster; pEtherCATSlave := pEtherCATMaster^.FirstSlave; NetHwDiag.xConfigFinished := pEtherCATMaster^.xConfigFinished; NetHwDiag.xDistributedClockInSync := pEtherCATMaster^.xDistributedClockInSync; NetHwDiag.xError := pEtherCATMaster^.xError; NetHwDiag.xSyncInWindow := pEtherCATMaster^.xSyncInWindow; NetHwDiag.sLastMessage := pEtherCATMaster^.LastMessage; NetHwDiag.LastError := pEtherCATMaster^.LastError; (* Diagnostyka drzewa urządzeń.*) uiNodes := 0; _itfNode := DED.GetRoot(); REPEAT NetHwDiag.asDeviceName[uiNodes] := DED.GetDeviceNameString(itfNode := _itfNode); xQueryResultBus := __QUERYINTERFACE(_itfNode,_itfBus); IF xQueryResultBus THEN _itfBus.GetBusInfo(buiInfo := NetHwDiag.aBusInfo[uiNodes]); NetHwDiag.aBusState[uiNodes] := _itfBus.GetBusState(); END_IF xQueryResultDevice2 := __QUERYINTERFACE(_itfNode,_itfDevice2); IF xQueryResultDevice2 THEN _itfDevice2.GetDeviceInfo(deiInfo := NetHwDiag.aDeviceInfo[uiNodes]); NetHwDiag.aDeviceState[uiNodes] := _itfDevice2.GetDeviceState(); IF pEtherCATSlave <>0 THEN pEtherCATSlave^(); IF pEtherCATSlave^.SlaveAddr = NetHwDiag.aDeviceInfo[uiNodes].idSystem THEN NetHwDiag.aAlStatus[uiNodes] := pEtherCATSlave^.ALStatus; pEtherCATSlave := pEtherCATSlave^.NextInstance; END_IF END_IF ELSE xQueryResultStack := __QUERYINTERFACE(_itfNode,_itfStack); IF xQueryResultStack THEN _itfStack.GetDeviceInfo(deiInfo := NetHwDiag.aDeviceInfo[uiNodes]); NetHwDiag.aDeviceState[uiNodes] := _itfStack.GetDeviceState(); END_IF END_IF uiNodes := uiNodes + 1; _itfNode := DED.GetNextNode(_itfNode); UNTIL _itfNode = 0 END_REPEAT (* Diagnostyka Modbus.*) Modbus_TCP_Client.GetDeviceInfo(deiInfo := ModbusTcpClientDeviceInfo); ModbusTcpClientDeviceState := Modbus_TCP_Client.GetDeviceState(); PAC_3200T.GetDeviceInfo(deiInfo := ModbusTcpDeviceInfo); ModbusTcpDeviceState := PAC_3200T.GetDeviceState(); Of course, you can take the easy way out and refer directly to the devices, but I wanted a reusable component. Any constructive help is very welcome Best regards Jonasz
Last updated: 2025-07-15
Where do I find documentation on the libaries in V3.3 ?
CODESYS Forge
talk
(Thread)
Where do I find documentation on the libaries in V3.3 ?
Last updated: 2010-02-08
How Could I SIMULATED My PLC_PRG Without Any Device
CODESYS Forge
talk
(Thread)
How Could I SIMULATED My PLC_PRG Without Any Device
Last updated: 2023-06-30
Problem when I use a shared library
CODESYS Forge
talk
(Thread)
Problem when I use a shared library
Last updated: 2023-11-03
Post by vformanek on OPCUA Datasource, can not login...
CODESYS Forge
talk
(Post)
Hello? I have a problem with datasource... I am trying to connect to a OPCUA server. I create a datasource, but I can not login into it. I need to use login credentials to login... Everything works fine in UAExpert, but in codesys I cant seem to get in properly using the login credentials... I have tried to configure the datasource initializer but seem to keep failing... Do I need to call it somewhere ? Will the find endpoints work with this configured to store my password ? !
Last updated: 2023-11-20
Raspberry 4 I²C with Arduino UNO R3
CODESYS Forge
talk
(Thread)
Raspberry 4 I²C with Arduino UNO R3
Last updated: 2023-12-04
Post by srouse on PFC200BUS not running
CODESYS Forge
talk
(Post)
I started a project in codesys for a WAGO 750-8212 PLC and I am working on getting online with the controller. I can log in to the controller and I can see and control all of the fieldbus couplers that I have. I am unable to get the internal bus working. It just says that the bus is not running and when I scan or devices nothing shows up. Am I missing something important in my device tree?
Last updated: 2024-07-10
How Could I Desactivated The Watchdog ?
CODESYS Forge
talk
(Thread)
How Could I Desactivated The Watchdog ?
Last updated: 2024-08-13
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.