The OPC UA Node should read the current value from the PLC variable upon Runtime startup. The PLC's internal memory state should not be overwritten by the OPC UA "Initial Value" field unless it's intended to be the primary source of truth.
The "Initial Value" field in the OPC UA Node configuration dialog (in the Editor) always overwrites the PLC variable's value when the Runtime starts. This causes variables, such as temperature setpoints, to reset to a fixed value (typically 0.0) every time the controller reboots or the runtime starts, losing any value that was previously set.
Create a global variable in OpenPLC Editor (e.g., Setpoint of type REAL).
Go to the OPC UA Server configuration tab.
Add a new Node and link it to the Setpoint variable.
Set an "Initial Value" in the Node dialog (e.g., 0.0).
Compile and start the Runtime.
Observe that the PLC variable is forcibly reset to the value specified in the OPC UA configuration upon startup.
Possible Solution (Not obligatory)
The OPC UA server initialization should probably prioritize the current state of the PLC variable or allow the "Initial Value" field to be empty/ignored, so the Node simply reflects the PLC's state at startup.
Context
I am trying to manage temperature setpoints via OPC UA. Because of this behavior, my setpoints are lost and reset to 0 every time the Runtime restarts, which is critical for maintaining process parameters.
Your Environment
- Version : OpenPLC Editor 4.1.4 (Release: 2026-02-27)
- Runtime: ghcr.io/autonomy-logic/openplc-runtime:latest | ID: sha256:b35b4fdc0a0e116cf818dab43175c1ec1c6ddd6142bb8c7408f7e9064a8390f6 | Created: 2026-03-18T12:44:30.782701434Z
- Operating System and version : editor: Win11, runtime: debian 12
The OPC UA Node should read the current value from the PLC variable upon Runtime startup. The PLC's internal memory state should not be overwritten by the OPC UA "Initial Value" field unless it's intended to be the primary source of truth.
The "Initial Value" field in the OPC UA Node configuration dialog (in the Editor) always overwrites the PLC variable's value when the Runtime starts. This causes variables, such as temperature setpoints, to reset to a fixed value (typically 0.0) every time the controller reboots or the runtime starts, losing any value that was previously set.
Create a global variable in OpenPLC Editor (e.g., Setpoint of type REAL).
Go to the OPC UA Server configuration tab.
Add a new Node and link it to the Setpoint variable.
Set an "Initial Value" in the Node dialog (e.g., 0.0).
Compile and start the Runtime.
Observe that the PLC variable is forcibly reset to the value specified in the OPC UA configuration upon startup.
Possible Solution (Not obligatory)
The OPC UA server initialization should probably prioritize the current state of the PLC variable or allow the "Initial Value" field to be empty/ignored, so the Node simply reflects the PLC's state at startup.
Context
I am trying to manage temperature setpoints via OPC UA. Because of this behavior, my setpoints are lost and reset to 0 every time the Runtime restarts, which is critical for maintaining process parameters.
Your Environment