Docs Portal
Connector Guides
API ReferenceConsole

MQTT Destination Connector

MQTT logo

The MQTT Destination connector publishes data from the Mapped graph to an MQTT broker. This connector acts as a data destination, streaming Mapped entities and their latest timeseries values to configurable MQTT topics. It supports MQTT protocol versions 3, 4, and 5, with flexible authentication options including username/password and TLS certificate-based authentication.

Use Cases

  • Real-time Data Distribution: Stream building automation data from Mapped to external systems via MQTT for real-time monitoring and control applications.
  • IoT Platform Integration: Publish Mapped graph data to IoT platforms and edge devices that consume MQTT messages for analytics and visualization.
  • Event-Driven Architectures: Enable downstream systems to react to changes in building data by subscribing to MQTT topics populated with Mapped entities and points.

Configuration

Auth Requirements

To configure the MQTT Destination connector, you need:

  • MQTT Broker URL: The endpoint of your MQTT broker (e.g., mqtt://broker.example.com:1883 or mqtts://broker.example.com:8883)
  • Base Topic: The MQTT topic where data will be published

Optional Authentication Credentials (at least one method recommended):

  • Username/Password: Basic authentication credentials for the MQTT broker
  • TLS Certificates: For secure MQTTS connections:
  • Client Key: Private key for client authentication
  • Client Key Passphrase: Passphrase for the client key (if encrypted)
  • Client Certificate: Client certificate for mutual TLS authentication
  • Server CA: Certificate Authority certificate to verify the broker's identity

Place Mappings

This connector does not require place mappings as it publishes existing data from the Mapped graph rather than ingesting data from an external source.

Advanced Options

Protocol Version

  • Options: 3, 4, or 5
  • Description: MQTT protocol version to use when connecting to the broker. Version 5 is set as the default and includes enhanced features like improved error reporting and session management.

Client ID

  • Unique identifier for this MQTT client connection. If not specified, a default identifier will be generated automatically based on the username and system information.

Reconnect Backoff (seconds)

  • The delay in seconds before attempting to reconnect to the MQTT broker after a connection failure. Configuring this helps manage reconnection behavior in unstable network conditions.

Keepalive

  • The interval in seconds for keepalive ping messages sent to the MQTT broker to maintain the connection. This ensures the broker knows the client is still active.

Graph Entities & Timeseries

Entities

This connector does not create entities in the Mapped graph. Instead, it reads existing entities and publishes them to MQTT topics.

Published Data Structure

The connector publishes all entities from the Mapped graph with the following structure:

Thing entities are published with these fields:

  • id: Entity identifier
  • name: Entity name
  • description: Entity description
  • firmwareVersion: Firmware version information
  • mappingKey: Mapping key for the entity
  • dateCreated: Creation timestamp
  • dateUpdated: Last update timestamp
  • model: Associated model information including manufacturer details
  • hasLocation: Related location entity references
  • hasPart: Child entity references
  • hasPoint: Associated timeseries points with latest values

Timeseries point data includes:

  • id: Point identifier
  • name: Point name
  • description: Point description
  • exactType: Specific point type
  • valueMap: Value mapping configuration
  • datatype: Data type of the point (BOOL, INT, DOUBLE, STRING, JSON)
  • unit: Unit of measurement
  • series: Latest timeseries value with timestamp and simplified value format

Published Point Data Types

The connector supports publishing the following datatypes:

Mapped DatatypePublished FormatDescription
BOOLBooleanTrue/false values
INTInteger32-bit integer values
DOUBLEFloat64-bit floating point values
STRINGStringText values
JSONJSON ObjectComplex structured data

Each published point includes:

  • timestamp: ISO 8601 formatted timestamp of the latest reading
  • simpleValue: The point value in its native format (automatically determined from the datatype)

Message Format

Published MQTT messages contain the complete entity structure in JSON format, with timeseries points including their latest simplified values for easy consumption by downstream systems.