--- title: "OPC UA Client | Configuration | N3uron KB V1.22" slug: "opc-ua-client-configuration" description: "OPC UA Client is a N3uron module designed to enable N3uron to make outgoing connections to any third-party compliant OPC UA server…" updated: 2026-10-09T06:28:24Z published: 2026-10-09T06:28:24Z canonical: "docs.n3uron.com/opc-ua-client-configuration" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.n3uron.com/llms.txt > Use this file to discover all available pages before exploring further. # Configuration > [!NOTE] > **Note:** > > Before starting configuration, a new module instance must be created. [**Click here for more information about creating Module instances**](/v122/docs/platform-create-new-module-instance). ## Client Setup ![OPC UA Client module instance in the N3uron Explorer panel](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20Client.png) The **OPC UA Client** module allows for unlimited connections to any number of OPC UA compliant servers. As shown in the above screenshot, new connections can be created by clicking on the burger menu icon. Each connection to a specific OPC UA server is named **Client**. See below for the steps required when connecting **N3uron** to an OPC UA server. ![](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/image(218).png) Each client requires the following parameters to be set: | **Setting** | **Description** | | --- | --- | | Enable data collection | Enables or disables data collection for this OPC UA Client instance. | | Subscription batch size | Indicates the batch size rate for adding subscriptions to the OPC UA server. The default value is **5000**. | | Subscription batch delay | Sets the delay between two subscription batches. The default value is **0**. | | Max. items per subscription | The maximum number of monitored items per subscription to the server. If there are more monitored items than this value, multiple subscriptions will be used. > [!WARNING] > **Note:** > > This feature is available from **N3uron** version **1.21.9**. | | Data change filter | Selects when events should be reported by the server. This affects all monitored items created by this client. The default value is **Status/Value**. The available options are: - **Status/Value:** Only changes in either the Status or Value of the selected node will be reported. - **Status/Value/Timestamp:** Changes in either the Status, Value, or Timestamp of the selected node will be reported. - **Expression:** Allows a custom expression to be used to define the data change filter. Intended to be used with [**Templates**](/v122/docs/platform-templates-overview). > [!WARNING] > **Note:** > > The **Data change filter** setting is available from **N3uron** version **1.22.4**. | | Override timestamps | When **enabled**, timestamps received from the server will be overwritten using the local time. | ![](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/image(219).png) ### **Connection** | **Setting** | **Description** | | --- | --- | | Discovery URL | Enter the URL for the OPC UA server's discovery endpoint, which is used to locate available connection endpoints and their configurations. The format should be as follows: **opc.tcp://IPAddress:port** or **opc.tcp://myServer:port**. > [!NOTE] > **Note:** > > If the server's endpoint and discovery URLs are the same, use the same URL in both fields. Some OPC UA servers separate the discovery and server endpoints, requiring different URLs. We recommend using the OPC UA Server Discovery utility, which automatically configures the Discovery URL, Endpoint URL, Security Mode, and Security Policy. > [!WARNING] > **Note:** > > This feature is available from **N3uron** version **1.21.11**. | | Endpoint URL | Enter an OPC UA endpoint URL for the specific OPC UA Server that N3uron should connect to. The format should be as follows: **opc.tcp://IPAddress:port** or **opc.tcp://myServer:port**. Example: **opc.tcp://192.168.0.1:3005**. The option to browse and discover an endpoint is available by clicking on the button of the **OPC UA Server discovery utility**. > [!NOTE] > **Note:** > > The Security mode and Security policy fields are automatically filled in when the endpoint is selected from the discovery interface. | | Endpoint must exist | If **Enabled**, the OPC UA Client will verify that the hostname specified in the "Server Certificate" is the same as the hostname provided in the "Endpoint URL" to permit the connection. The default value is **Disabled**. | | Security mode | Specifies the type of encryption used when exchanging messages between the **OPC UA Client** and **Server**. By default, it is set to **Sign & Encrypt**. The available options are: - **None:** There will be no security at all and should only be used for testing purposes. - **Sign:** This option is sufficient if data confidentiality is not a requirement. - **Sign & Encrypt:** This is the most secure option and therefore, the most recommended. - **Expression:** This option allows for a custom expression to be used to define the security mode. Intended to be used with [**Templates**](/v122/docs/platform-templates-overview). | | Security policy | Specifies which security mechanism should be used. By default, this is set to **Basic 128 & Rsa 15**. Supported algorithms are as follows: - **None** - **Basic 128 & Rsa 15** (deprecated since **OPC UA Specification Version 1.04**) - **Basic 256** (deprecated since **OPC UA Specification Version 1.04**) - **Basic 256 & Sha 256** - **Expression:** This option allows for a custom expression to be used to define the security policy. Intended to be used with [**Templates**](/v122/docs/platform-templates-overview). | | Requested session timeout | Sets the amount of time a session must be idle before it times out. In general, we recommend you use a high enough value so that the session never times out. The value entered should be at least double the sum of multiplying the publishing interval with the subscription keep-alive count value. The default value is **3,600,000ms**. | | Reconnect delay | Specifies the wait time before attempting to reconnect after a failed connection attempt, displayed in milliseconds. The minimum value is **1,000ms** and the default value is **5,000ms**. | ![](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/image(220).png) ![OPC UA Discovery Browser](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20OPC%20UA%20Discovery%20Browser%202.png) ### **Authentication** | **Setting** | **Description** | | --- | --- | | Enabled | When **Enabled**, users will need to introduce valid credentials to access the server. | | User | Specifies the user name to authenticate with the server. | | Password | Specifies the password used to authenticate with the server. > [!NOTE] > **Note:** > > All passwords will be encrypted for security reasons. | ### **Subscription** | **Setting** | **Description** | | --- | --- | | Publishing interval | Defines how frequently the OPC UA server will send notification packages and specifies the necessary elapsed time between notifications, displayed in milliseconds. The default value is **1,000ms**. | | Lifetime count | Number of publishing intervals until the subscription is deleted by the server if no publish request has been received. The default value is **60**. | | Max. keepalive count | When the server publishing timer surpasses the number of attempts specified here without any data to be sent, the subscription will send a keep-alive message to the client. The default value is **10**. | | Max. notifications per publish | Establishes the maximum number of notification events per publish request. This can be used to help reduce peaks in communication load when transmitting buffered data. The default value is **10,000**. A value of **0** means that the client specifies no limit and the server will use the maximum number of notifications per publish. | ## Certificates Once the configuration has been saved, the client and the server will exchange their corresponding certificates. These certificates must be trusted on both sides. By default, any certificate issued by a server is displayed as **Rejected** in N3uron and therefore, it must be manually trusted prior to establishing the connection. After trusting the certificate in N3uron, you will need to head to the server and trust the certificate issued by the OPC UA Client module instance. ![Trusting OPC UA certificates in N3uron](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20Trusting%20Certificates.png) > [!WARNING] > **Note:** > > Certificate replacement is **not supported** through the N3uron UI. However, users can perform this operation **manually**. > > To replace the certificate, users must overwrite the existing certificate file with the new certificate file that has **exactly** the same name. The key file must also be replaced with the **unencrypted** version of the key, which N3uron will encrypt when loading the new certification. > > After replacing both files, the module must be **restarted** for the changes to take effect. [Embedded content](https://www.youtube.com/embed/8RvzdR0_g-A) ## OPC Browser > [!WARNING] > **Note:** > > This feature is available from **N3uron** version **1.21.5**. The drag-and-drop feature for the OPC UA Browser allows you to easily add and organize tags by simply dragging them from the browser to the data model. ![Drag-and-drop of OPC UA tags into the data model](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Drag%20and%20Drop%20GIF(1).gif) To use the drag-and-drop feature for tags, follow these steps: 1. Select the **OPC UA Client instance**, expand the menu and click on **OPC Browser**. 2. From the drop-down menu, select the **Client** previously created. In this case, **Client01**. ![OPC UA Browser button](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20OPC%20UA%20Browser%20Button.png) Now, the server's address space will be displayed, including: **Objects**, **Types** and **Views**. ![OPC UA address space showing Objects, Types and Views](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20Objects,Types,Views.png) 1. From the OPC UA Browser, select the tags or folders and drag them to the data model. 2. Save the changes. ![Dragging the Ramp1 tag into the data model](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20Drag%20and%20drop%20Ramp1.png) ![Ramp1 tag added to the data model](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20Ramp1%20tag.png) ## Tag Configuration Once the client has been configured and the certificates are trusted, you can start creating tags that are linked to the OPC UA server. Below, you can see a tag configuration example, as well as a brief explanation of each available parameter in the **Source** section for the **OPC UA Client** module. ![OPC UA Client tag configuration example](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%208.3%20-%20Tag%20configuration.png) ### **Source** | **Setting** | **Description** | | --- | --- | | Enabled | When **Disabled**, tags won't be updated with the values received from the server, but instead, will essentially act as memory tags. When set to **Enabled**, the tag value will be continuously updated with the values received from the OPC UA Server. The default value is set to **Disabled**. | | Module type | Defines the driver type used to retrieve values. In this example, **OpcUaClient** must be selected from the drop-down menu. If **OpcUaClient** does not appear in the drop-down menu, it means that this functionality has not yet been installed on this machine and therefore, must be installed. | | Module name | Users should enter here the name of the **OPC UA Client** module instance that was previously created. | ### **Config** | **Setting** | **Description** | | --- | --- | | OPC UA Client | This section represents the link between the tag and its data source. Therefore, it must be filled in with the name of the [**Client**](/v122/docs/opc-ua-client-configuration#client-setup) that was previously created. In the above example, we used **Client01**. | | Node ID | Specifies the OPC item path. According to the OPC UA specification, the Node ID is made up of the **Namespace index (ns)**, an **Identifier Type** and the **Identifier**. The following table shows some examples: | | **Identifier** | **Type** | **Example** | | --- | --- | --- | | s | String | ns=2; s=MyTemperature | | i | Integer | ns=2; i=133 | | g | GUID | ns=2; g=123E4567-E89B-12D3-A456-426614174000 | | b | ByteString | ns=2; b=01020304050607 | By clicking on the button on the right, the **OPC UA Tag Browser** can be used to select the Node ID. ![OPC UA Tag Browser button](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20Tag%20browser%201.png) ![OPC UA Tag Browser selection window](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20OPC%20UA%20Tag%20Browser%202.png) ![OPC UA Tag Browser Node ID selection](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20Tag%20browser%203.png) #### **Data structure** | **Setting** | **Description** | | --- | --- | | Scalar | Specifies whether the type of data is a scalar value. | | Array | Specifies whether the type of data is an array value. The array can have any number of dimensions. | | Struct | Specifies whether the type of data is a struct or an array of structs. It is an object whose properties must be accessed in a nested way (prop1.prop2 or prop1[index].prop2). | | Convert to JSON string | The expected value can have any structure and this structure will be converted to JSON. For this to be valid, the tag type must be **string**. | ![Scalar data structure tag configuration](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20Tag%20Scalar.png) ![Array data structure tag configuration](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20Tag%20Array.png) ![Struct data structure tag configuration](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20Struct%20tag.png) ![Struct tag nested properties](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20Tag%20Struct.png) ![Convert to JSON string tag configuration](https://cdn.document360.io/54093ab5-6b22-4542-a265-04377931f11a/Images/Documentation/Figure%20-%20Tag%20JSON.png) #### **Options** | **Setting** | **Description** | | --- | --- | | Scan rate | Sampling interval request for the tag, displayed in milliseconds. The minimum value is **100ms** and the default value is **5,000ms**. | | Discard oldest | When **Enabled**, the oldest events will be deleted to allocate space for the latest events in the buffer. | | Queue size | Specifies the size of the buffer for storing received events. The default value is **10**. | [Embedded content](https://www.youtube.com/embed/3ETZYMEvfNw)