MQTT Plug-in Configuration
This page describes the configuration of the MQTT broker connection. The actual message processing is then handled by the MQTT Transfer Object, MQTT Subscribe, or the MQTT Storage Read Transfer Object.
The MQTT plug-in provides the connection to the broker. If you want to receive MQTT messages and trigger connections with them, you must also use MQTT Subscribe. To publish messages, use the MQTT Transfer Object.
Up to version 5.4, the MQTT implementation could be selected in the Expert Settings → Implementation section. The following options were available:
Legacy AutomaticLegacy Strider MqttLegacy MQTTnetMQTTnet(recommended)
Starting with version 5.5, a migration notice is displayed for old configurations, recommending a switch to MQTT .NET V2.
Starting with version 5.6, only MQTT .NET V2 is available.

Router settings
| Field | Description |
|---|---|
| Name | Assign a unique name to the MQTT connection. |
| Cloud Profile | Select the desired profile: MQTT Standard, AWS, Azure IoT, Wago Cloud. |
You can check the current connection using Test Connection.
Cloud Profiles
The cloud profiles extend the standard configuration with additional tabs:
For more information on using MQTT and the cloud profiles, see our knowledge base:
Connection Options

Connection Details
| Field | Description |
|---|---|
| Broker Connection | Enter the address of the MQTT broker. The screenshot shows my.broker.com as an example. |
| Port | TCP port of the broker. When Enable TLS/SSL is activated, 8883 is typically preset; without TLS/SSL, 1883 is usually used. |
| MQTT Version | Selection of the protocol version. In the screenshot, MQTT 3.1.1 is selected as an example. |
| Quality of Service Type | Selection of the standard QoS: 0 – at most once, 1 – at least once, or 2 – exactly once. |
For details on latency, network round trips (RTT), and internal synchronization during publish operations, see MQTT Performance.
Authentication
| Field | Description |
|---|---|
| Username | Username for logging in to the broker. |
| Password | Selection of a secret. Use the buttons to create, edit, or delete a secret. |
| Client ID | Unique client ID. Supports the placeholders ${hostname}, ${hostname:lower}, #[INSTANCE], #[INSTANCE:<numerischer wert="">], and #[RAND:<numerischer wert="">]. This allows you to automatically generate different IDs per instance during connection pooling or project synchronization. A preview of the generated client ID is displayed below the input field. |
| Buttons | Random generates a random ID. Client ID Template inserts the default template into the input field. |
Enable TLS/SSL
| Field | Description |
|---|---|
| Enable TLS/SSL | Enables the encrypted connection to the broker. If this option is enabled, the TLS/SSL settings are displayed below. |
| SSL Protocols | Selection of supported protocols, for example TLSv1, TLSv1.1, TLSv1.2, or TLSv1.3. Multiple protocols can be enabled. |
| Client Certificate | Selection of a client certificate for logging in to the broker. Use the buttons to remove, add, view, or delete certificates. |
| Trusted Certificates | Specify which certificates are accepted, for example Router, Windows, or All (unsafe). |
Storage
| Field | Description |
|---|---|
| Enable MQTT Data Storage | When enabled, the last received MQTT message for each topic is saved to disk. This feature is required to use the MQTT Storage Read Transfer Object. |
| Pattern | A subscription is created for each added topic pattern. Supports the wildcards + and #. |
| Note | Free text describing the purpose or origin of a topic. |
When the MQTT Data Storage function is enabled, the OPC Router creates automatic subscriptions for all registered topics. The received messages are stored persistently, but only the latest message per topic is retained. Older values are overwritten.
These stored values can be specifically retrieved using the MQTT Storage Read transfer object.
First Will
| Field | Description |
|---|---|
| Enable First Will | Enables the sending of a First Will when establishing a connection. |
| Retain First Will | Broker stores message for later delivery. |
| Topic | Target topic for the First Will. |
| Payload | Content of the First Will message. |
| Quality of Service | Service quality (0, 1 or 2). |
Last Will
| Field | Description |
|---|---|
| Enable Last Will | Enables sending a message if the connection is lost. |
| Retain Last Will | Broker saves message for later delivery. |
| Send Last Will on Connection Loss | Sends Last Will even upon manual disconnection. |
| Topic | Target topic for the Last Will. |
| Payload | Content of the Last Will message. |
| Quality of Service | Service quality (0, 1, or 2). |
Advanced
Connection Pool
| Field | Description |
|---|---|
| Enable Connection Pool | When enabled, a single connection is used for subscriptions and multiple connections for publish operations. Useful for high message volumes. |
| Min. Connections | Minimum number of connections. |
| Max. Connections | Maximum number of connections. |
| Timeout Limit | Time in minutes after which inactive connections are closed. |
Subscription / Trigger
| Field | Description |
|---|---|
| Wait for Transfer | The router responds to the broker only after the transfer has completed or failed. |
| Enable Message Deduplication | Prevents multiple triggers for identical messages within a time window. |
| Time Window for Deduplication | Time in seconds during which identical messages are ignored. |
Session Options
| Field | Description |
|---|---|
| CleanSession | Starts a new session without saved messages (disable for persistent sessions). |
| Keep alive (s) | Ping interval in seconds. |
| Timeout (ms) | Wait time in milliseconds for reconnection. |
Use the MQTT Performance page if you want to optimize QoS, RTT, or connection pooling for throughput and latency.