OPC UA Status Codes
This document describes the native status codes used in the OPC UA environment to evaluate data values. In the OPC UA context, the OPC Router can also provide these statuses as a Quality String or Quality ID, for example when triggers output metadata for monitored data points.
Basics
OPC UA does not use a small fixed set of numerical quality values like OPC DA, but rather a structured StatusCode. This contains a main status as well as additional sub-statuses and information bits.
This allows for much finer distinctions between statuses, for example:
- Value is fundamentally valid.
- Value is present, but only of limited reliability.
- Data source is not connected.
- No initial valid data is available for the node yet.
- The requested node is unknown to the server.
Typical Status Codes
The following table lists typical OPC UA status codes that frequently occur in projects.
| Status Code | Meaning |
|---|---|
Good | The value is valid and can be used without any apparent restrictions. |
Uncertain | The value is available but is only reliable to a limited extent. |
Bad | The value is invalid or cannot be used reliably. |
BadNodeIdUnknown | The requested node is unknown to the server. |
BadNodeIdInvalid | The specified node ID is formally invalid. |
BadAttributeIdInvalid | The requested attribute is not valid or available for the node. |
BadNotConnected | The underlying connection or data source is not connected. |
BadNoCommunication | Communication with the data source has been interrupted. |
BadWaitingForInitialData | No initial valid values are available for the data point yet. |
BadOutOfService | The node or data source is out of service. |
BadUserAccessDenied | The current user or session does not have permission to access. |
BadTypeMismatch | The requested or delivered data type does not match the expected definition. |
UncertainInitialValue | An initial value is available, but its significance is still limited. |
UncertainSubNormal | The value was determined from multiple sources, but there are not enough reliable sources available. |
Usage in OPC Router
In the OPC UA context, OPC Router can provide status information as a Quality-String or Quality-ID, for example in the metadata of triggers such as Data-Change or Multi-Datachange.
These values are distinct from the classic quality values described under OPC-DA Qualities. They represent a broader status space and are therefore described separately in this documentation.
This overview is intentionally not a complete reference of all OPC UA status codes. Depending on the server, information model, and access situation, additional status codes may occur.