Skip to main content

Overview

The MQTT Input Connector enables Condense to subscribe to MQTT topics and stream incoming messages into Apache Kafka for real-time processing. It supports secure communication using TCP, TLS, and Mutual TLS (mTLS), along with multiple authentication methods and configurable Quality of Service (QoS) levels. The connector is ideal for ingesting IoT telemetry, sensor data, industrial equipment events, and other MQTT-based messaging into streaming applications.

Key Features

The MQTT Input Connector provides:
  • Subscribe to MQTT topics in real time
  • Stream MQTT messages into Kafka topics
  • Supports MQTT v3.1.1
  • Configurable QoS levels
  • TCP, One-Way TLS, and Mutual TLS support
  • Username/password and certificate-based authentication
  • JSON, String, and Binary payload support
  • No-code deployment through the Condense UI

Supported Authentication


SSL/TLS Support


Supported Payload Formats

  • JSON
  • String
  • Binary

Typical Use Cases

The MQTT Input Connector is commonly used for:
  • IoT sensor ingestion
  • Vehicle telemetry
  • Industrial automation
  • Smart building monitoring
  • Fleet management
  • Device-to-cloud communication

Prerequisites

Before configuring the connector:
  • An accessible MQTT broker
  • MQTT topic(s) to subscribe to
  • Kafka topic to publish incoming events
  • Authentication credentials (if required)
  • TLS certificates (if using secure communication)

How to Configure the MQTT Input Connector

Step 1. Navigate to Connectors

  1. Log in to Condense.
  2. Navigate to Connectors.
  3. Click Create Connector.
  4. Select MQTT Input Connector.
Add Screenshot: Connector Selection

Step 2. Configure Broker Details

Provide:
  • Connector Name
  • Broker URL
  • Broker Port
  • Client ID
  • MQTT Topic
Add Screenshot: Broker Configuration

Step 3. Configure Authentication

Select:
  • None
  • Username & Password
  • Client Certificate
Enter the required credentials.
Add Screenshot: Authentication Configuration

Step 4. Configure SSL/TLS

Choose:
  • TCP
  • One-Way TLS
  • Mutual TLS
Upload certificates where applicable.
Add Screenshot: TLS Configuration

Step 5. Configure Processing

Configure:
  • QoS Level
  • Kafka Topic
  • Payload Format
  • Batch Settings (optional)

Step 6. Deploy

  1. Review the configuration.
  2. Click Deploy Connector.
  3. Monitor deployment from the Pipelines page.

Editing the MQTT Input Connector

  1. Navigate to Pipelines.
  2. Select the deployed MQTT Input Connector.
  3. Click Edit Configurations.
  4. Update the required settings.
  5. Click Deploy Connector.

Deleting the MQTT Input Connector

  1. Navigate to Pipelines.
  2. Select the connector.
  3. Click Delete Connector.
  4. Confirm deletion.

Best Practices

  • Use TLS for production deployments.
  • Use Mutual TLS for sensitive environments.
  • Configure QoS according to delivery guarantees.
  • Use dedicated MQTT topics for different device groups.
  • Monitor broker connectivity.

Frequently Asked Questions (FAQs)

Which MQTT protocol version is supported?

The connector supports MQTT v3.1.1.

Which brokers are supported?

The connector can be used with MQTT brokers such as EMQX, Eclipse Mosquitto, HiveMQ, and other MQTT v3.1.1-compatible brokers.

Which QoS levels are supported?

QoS 0, QoS 1, and QoS 2 are supported based on the broker configuration.

Does the connector support TLS?

Yes. TCP, One-Way TLS, and Mutual TLS are supported.

Can I subscribe to multiple topics?

Yes. Configure the required MQTT topic subscriptions based on your broker configuration.

Which payload formats are supported?

JSON, String, and Binary.