---
title: MQTT - v5 Generic
slug: bhdo/mqtt-v5-generic
createdAt: 2026-10-02T19:03:00.149Z
---

## Overview

The MQTT - v5 Generic integration enables Belden Horizon Data Operations to connect to an MQTT v5 broker via TCP or SSL.

## Supported versions

Compatible with MQTT Protocol version 3.1.0, 3.1.1, 5.0.0

## Supported communication

- Outbound (Publish data from Edge to MQTT Broker) - Yes
- Inbound (Subscribe data from MQTT Broker to Edge) - Yes

## Configurations

| **Field**            | **Details**                                                                                                                                                                            | **Required** |
| -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ |
| Name                 | Name of the connector instance.                                                                                                                                                        | Yes          |
| Connection Type      | Choose tcp for an unencrypted connection or ssl for a TLS-encrypted connection to the MQTT broker.                                                                                     | Yes          |
| Hostname             | DNS name of MQTT host.                                                                                                                                                                 | Yes          |
| Port                 | Port of MQTT host.                                                                                                                                                                     | Yes          |
| CA Certificate       | CA certificate used to verify the server, in PEM format. Can also be installed in the system-wide certificate store.                                                                   | No           |
| Certificate          | Client certificate for mutual TLS authentication with the MQTT broker. Paste the PEM-encoded certificate here.                                                                         | No           |
| Private key          | Private key corresponding to the client certificate. Must match the **Certificate** field above.                                                                                       | No           |
| Insecure Skip Verify | `InsecureSkipVerify` controls whether a client verifies the server's certificate chain and host name.                                                                                  | No           |
| Client ID            | Client ID is required by MQTT server. If left empty, the system uses `InstanceUUID`.                                                                                                   | No           |
| Username             | Username for authenticating with the MQTT broker.                                                                                                                                      | No           |
| Password             | Password for authenticating with the MQTT broker.                                                                                                                                      | No           |
| QoS                  | Quality of Service delivery guarantee: `0` = at most once, `1` = at least once, `2` = exactly once.                                                                                    | No           |
| Integration Topic    | MQTT topic path where data is published.                                                                                                                                               | Yes          |
| User Properties      | Custom key-value metadata attached to outgoing MQTT v5 packets. Passed through to the broker and available to subscribers.                                                             | No           |
| Throttling limit     | Set a limit on the number of outbound messages per second. If sending data to a server that has restrictions on the rate of incoming messages, this ensures that no messages are lost. | No           |

## Advanced configurations

| **Field**                         | **Details**                                                                                                             | **Required** |
| --------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ------------ |
| Parallel Publish Count            | Number of messages published in parallel. Higher values increase throughput and resource usage.                         | No           |
| Response Topic                    | MQTT v5 topic the receiver should publish its response to. Used in request-response messaging patterns.                 | No           |
| Payload Format Indicator          | Allowing the server to understand packet without having to operate on the actual data.                                  | No           |
| Content type                      | MIME type describing the format of the message payload. Informational - passed to subscribers.                          | No           |
| Topic Alias Maximum               | Decrease the size of the MQTT packet overhead by allowing the topic name to be abbreviated to a small integer.          | No           |
| LWT topic                         | MQTT topic the broker publishes the Last Will message to if this client disconnects unexpectedly.                       | No           |
| LWT payload                       | Message content published to the LWT topic on unexpected disconnection. Typically a status or alert string.             | No           |
| LWT payload type                  | Encoding of the LWT payload: `string` for plain text, `base64` for binary data.                                         | No           |
| LWT QoS                           | QoS level for the Last Will message: `0` = at most once, `1` = at least once, `2` = exactly once.                       | No           |
| LWT retained                      | When enabled, the broker retains the Last Will message and immediately delivers it to any new subscriber on that topic. | No           |
| Will Delay Interval               | Add the ability to specify a delay between the end of the connection and sending the will message.                      | No           |
| Session Expiry Interval (seconds) | The number that specifies how long a broker keeps a client's session information.                                       | No           |
| Message Expiry Interval           | Allow an expiry interval to be set when a message is published.                                                         | No           |
| Request Response Info             | Request the broker to return response information in the CONNACK packet.                                                | No           |
| Request Problem Info              | Request the broker to include human-readable reason strings and user properties in error packets.                       | No           |
| Keep Alive                        | Ensure that client remains connected to the broker and maintains an active session.                                     | No           |
| Connection Timeout                | How long to wait for the connection process to complete in seconds.                                                     | No           |

## Persistent storage configurations

| **Field**                     | **Details**                                                                                                                                                                                          | **Required** |
| ----------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ |
| Persistent storage            | If enabled, messages in the outbound queue are stored on disk. If there are interruptions in connection or power loss, messages are retained and eventually sent when the connection is restored.    | No           |
| Persistent storage size limit | Set the size limit for storing persisted data in GB.                                                                                                                                                 | No           |
| Queue mode                    | Select the sequence of data transfer: `FIFO` or `LIFO`. Selecting `FIFO` (First In First Out) sends the earliest message first. Selecting `LIFO` (Last In First Out) sends the latest message first. | No           |

## Format directives

| **Symbol** | **Definition**                                                                                                                                                         | **Context**             |
| ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------- |
| $          | Special character indicates a variable character follows. A variable represents some dynamic string value. Supported variables defined as follows:                     | -                       |
| $S         | Additional Alias definition                                                                                                                                            | from Connector Settings |
| $D         | Device Name                                                                                                                                                            | from DeviceHub Tag      |
| $N         | Tag Name                                                                                                                                                               | from DeviceHub Tag      |
| $R         | Raw Tag Type                                                                                                                                                           | from DeviceHub Tag      |
| $P         | Tag Description                                                                                                                                                        | from DeviceHub Tag      |
| $H         | Hostname                                                                                                                                                               | from OS                 |
| %          | Special character indicating a function character follows. A function represents some action to be taken on the next variable. Supported functions defined as follows: | -                       |
| %L         | Lowercase()                                                                                                                                                            | apply to next variable  |
| %U         | Uppercase()                                                                                                                                                            | apply to next variable  |

## Format directives notes

To use a special character in its literal form, enter symbol twice (`$$` -> `$`, `%%` -> `%`)
Example `"$$$D.%%$N" -> "$deviceABC.%tagXYZ"`
