> ## Documentation Index
> Fetch the complete documentation index at: https://docs.condense.io/llms.txt
> Use this file to discover all available pages before exploring further.

# MQTT (Output, Stream)

# Overview

The MQTT Output Connector enables Condense to publish Kafka events to MQTT brokers in real time. It consumes messages from Kafka topics and delivers them to MQTT topics, allowing downstream IoT devices, edge gateways, and MQTT-enabled applications to receive streaming data.

The connector supports secure communication using TCP, TLS, and Mutual TLS (mTLS), configurable QoS levels, and multiple authentication mechanisms.

***

# Key Features

The MQTT Output Connector provides:

* Publish Kafka events to MQTT topics
* Supports MQTT v3.1.1
* Configurable QoS levels
* TCP, One-Way TLS, and Mutual TLS support
* Username/password and certificate authentication
* JSON, String, and Binary payload support
* No-code deployment through the Condense UI

***

# Supported Authentication

| Authentication      | Supported |
| ------------------- | :-------: |
| None                |     ✅     |
| Username & Password |     ✅     |
| Client Certificate  |     ✅     |

***

# SSL/TLS Support

| Mode                     | Description                              |
| ------------------------ | ---------------------------------------- |
| TCP                      | Plain MQTT communication                 |
| One-Way TLS              | Validates the broker certificate         |
| Two-Way TLS (Mutual TLS) | Validates broker and client certificates |

***

# Supported Payload Formats

* JSON
* String
* Binary

***

# Typical Use Cases

The MQTT Output Connector is commonly used for:

* Device command delivery
* Cloud-to-device messaging
* IoT notifications
* Smart device control
* Industrial automation
* Real-time event distribution

***

# Prerequisites

Before configuring the connector:

* An accessible MQTT broker
* MQTT topic for publishing
* Kafka topic containing source messages
* Authentication credentials (if required)
* TLS certificates (if secure communication is used)

***

# How to Configure the MQTT Output Connector

## Step 1. Navigate to Connectors

1. Log in to Condense.
2. Navigate to **Connectors**.
3. Click **Create Connector**.
4. Select **MQTT Output Connector**.

> **Add Screenshot:** Connector Selection

***

## Step 2. Configure Broker Details

Provide:

* Connector Name
* Broker URL
* Broker Port
* Client ID
* MQTT Publish Topic

> **Add Screenshot:** Broker Configuration

***

## Step 3. Configure Kafka Source

Specify:

* Kafka Topic
* Payload Format

***

## Step 4. Configure Authentication

Select:

* None
* Username & Password
* Client Certificate

Enter the required credentials.

***

## Step 5. Configure SSL/TLS

Choose:

* TCP
* One-Way TLS
* Mutual TLS

Upload certificates where applicable.

***

## Step 6. Configure Processing

Configure:

* QoS Level
* Batch Settings (optional)
* Retry Policy

***

## Step 7. Deploy

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

***

# Editing the MQTT Output Connector

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

***

# Deleting the MQTT Output Connector

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

***

# Best Practices

* Use TLS for production workloads.
* Use Mutual TLS for secure deployments.
* Select the appropriate QoS level for your use case.
* Organize MQTT topics by application or device type.
* Monitor broker availability and connector health.

***

# 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 EMQX, Eclipse Mosquitto, HiveMQ, AWS IoT Core, and other MQTT v3.1.1-compatible brokers.

***

### Which QoS levels are supported?

QoS 0, QoS 1, and QoS 2 are supported.

***

### Does the connector support TLS?

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

***

### Can Kafka events be published to MQTT topics?

Yes. The connector consumes records from Kafka topics and publishes them to MQTT topics.

***

### Which payload formats are supported?

JSON, String, and Binary.
