Lightweight Messaging for Industrial IoT
Ignition MQTT Integration: Connect Your Industrial IoT Infrastructure
Ignition MQTT integration enables lightweight, publish-subscribe messaging across your entire industrial IoT infrastructure. Connect edge devices, sensors, and PLCs to a centralized MQTT broker using the Sparkplug B protocol for standardized, efficient data exchange.
Overview
Ignition MQTT integration leverages the lightweight MQTT protocol combined with the Sparkplug B specification to deliver a robust, standardized communication layer for industrial IoT. The MQTT Engine and MQTT Transmission modules from Cirrus Link Solutions provide native, bidirectional connectivity between Ignition and any MQTT-enabled device or broker.
By deploying a Unified Namespace (UNS) architecture with MQTT at its core, you can decouple data producers from consumers, enabling scalable and resilient data distribution across your entire enterprise. Edge nodes running Sparkplug B publish structured data to the broker, while Ignition MQTT Engine automatically discovers and subscribes to all available metrics.
Key Benefits
- Lightweight publish-subscribe protocol with minimal bandwidth usage
- Sparkplug B standardized payload format for interoperability
- Automatic device and tag discovery via birth certificates
- Store-and-forward buffering for unreliable network connections
- Unified Namespace (UNS) architecture for enterprise-wide data access
MQTT Integration Architecture
The Ignition MQTT integration architecture follows a hub-and-spoke model with the MQTT broker at the center. Edge nodes publish Sparkplug B messages to the broker, and the MQTT Engine module subscribes to receive all data into the Ignition tag system.
┌─────────────┐ ┌──────────────┐ ┌─────────────────┐
│ Edge Node │────▶│ MQTT Broker │◀────│ Ignition MQTT │
│ (Sparkplug)│ │ (Mosquitto) │ │ Engine Module │
└─────────────┘ └──────┬───────┘ └────────┬────────┘
│ │
┌─────────────┐ │ ┌────────┴────────┐
│ Edge Node │────────────┘ │ Ignition MQTT │
│ (Sparkplug)│ │ Transmission │
└─────────────┘ └─────────────────┘Configuration Steps
Install the MQTT Engine Module
Download the MQTT Engine module from Cirrus Link Solutions or the Ignition Exchange. Navigate to the Ignition Gateway configuration page, go to Modules, and upload the .modl file to install it.
# Download from Cirrus Link Solutions or Ignition Exchange
# Gateway > Config > Modules > Install Module
# Upload: MQTT-Engine-signed.modl
# Restart Gateway if promptedConfigure the MQTT Broker Connection
Set up the connection between Ignition MQTT Engine and your MQTT broker. Configure the broker URL, port, authentication credentials, and TLS settings for a secure Ignition MQTT integration.
// MQTT Engine > Servers > Settings
{
"ServerName": "Production-Broker",
"URL": "tcp://mqtt-broker.local:1883",
"Username": "ignition_engine",
"Password": "********",
"KeepAlive": 30,
"CleanSession": true,
"TLS": {
"Enabled": true,
"Port": 8883,
"CACertificate": "/certs/ca.crt",
"ClientCertificate": "/certs/client.crt"
}
}Set Up the Sparkplug B Namespace
Configure the Sparkplug B topic namespace to organize your MQTT data hierarchy. Define group IDs, edge node IDs, and device IDs to structure your Unified Namespace for the Ignition MQTT integration.
# Sparkplug B Topic Structure
# Namespace: spBv1.0/{GroupId}/{MessageType}/{EdgeNodeId}/{DeviceId}
# Birth/Death Certificates
spBv1.0/Plant-A/NBIRTH/EdgeNode-01 # Node Birth
spBv1.0/Plant-A/DBIRTH/EdgeNode-01/PLC-001 # Device Birth
spBv1.0/Plant-A/NDEATH/EdgeNode-01 # Node Death
# Data Messages
spBv1.0/Plant-A/NDATA/EdgeNode-01 # Node Data
spBv1.0/Plant-A/DDATA/EdgeNode-01/PLC-001 # Device Data
# Commands
spBv1.0/Plant-A/NCMD/EdgeNode-01 # Node Command
spBv1.0/Plant-A/DCMD/EdgeNode-01/PLC-001 # Device CommandCreate Tag Providers and Map Tags
Once the MQTT Engine module connects to the broker, Sparkplug B devices are automatically discovered. Tags appear in the Ignition tag browser under the MQTT Engine tag provider, organized by group, edge node, and device.
# Auto-discovered tag paths in Ignition Designer
# [MQTT Engine]
# └── Plant-A (Group)
# └── EdgeNode-01 (Edge Node)
# ├── Node Info/ (Node metrics)
# │ ├── Online : true
# │ └── Last Connected: 2026-03-11T08:30:00
# └── PLC-001/ (Device)
# ├── Temperature : 72.5 (Float)
# ├── Pressure : 14.7 (Float)
# ├── FlowRate : 120.3 (Float)
# └── ValveStatus : OPEN (String)
# Reference tags in scripts:
value = system.tag.readBlocking(
["[MQTT Engine]Plant-A/EdgeNode-01/PLC-001/Temperature"]
)[0].valueKey Features
Sparkplug B Protocol
The Sparkplug B specification defines a standardized payload format and topic namespace for MQTT in industrial environments. It provides birth/death certificates, metric definitions, and state management for reliable Ignition MQTT integration across all your connected devices.
Auto-Discovery
MQTT Engine automatically discovers edge nodes and devices as they connect to the broker. Sparkplug B birth certificates carry full metric definitions, so tags are created in Ignition without any manual configuration - a key advantage of the Ignition MQTT integration approach.
Store & Forward
When network connectivity is lost between edge nodes and the MQTT broker, data is buffered locally using store-and-forward. Once the connection is restored, all buffered messages are transmitted in order, ensuring no data loss in your Ignition MQTT integration.
Unified Namespace
Build a hierarchical Unified Namespace (UNS) architecture where all operational data is organized in a single, logical topic tree. MQTT enables decoupled, event-driven data distribution from the edge to the enterprise, making your Ignition MQTT integration the backbone of your data strategy.
Use Cases
Oil & Gas Remote Monitoring
Deploy Ignition Edge with MQTT Transmission at remote wellsites to collect flow rates, pressures, and equipment status. Data is published via Sparkplug B to a central MQTT broker, where Ignition MQTT Engine aggregates metrics from hundreds of remote sites into a single unified view for operators.
Smart Factory IIoT
Build a factory-wide IoT sensor network using MQTT-enabled gateways and edge devices. The Ignition MQTT integration collects data from vibration sensors, energy meters, environmental monitors, and production equipment, feeding a real-time digital twin of your manufacturing operations.
Multi-Site SCADA
Implement a distributed SCADA architecture with Ignition Edge gateways at each site publishing data via MQTT to a centralized Ignition server. The Sparkplug B protocol ensures efficient bandwidth usage over WAN connections, while store-and-forward guarantees data integrity during network outages.
Technologies
MQTT Engine
Cirrus Link module for Ignition that subscribes to MQTT brokers and automatically creates tags from Sparkplug B messages. The core component of any Ignition MQTT integration.
MQTT Transmission
Cirrus Link module that publishes Ignition tag data to MQTT brokers using the Sparkplug B protocol. Enables Ignition to act as an edge node in a larger MQTT infrastructure.
Sparkplug B
Open-source specification by the Eclipse Foundation that defines topic namespaces, payload encoding (Protobuf), and state management for MQTT in industrial automation.
Eclipse Mosquitto
Lightweight, open-source MQTT broker widely used in industrial IoT deployments. Supports MQTT v3.1, v3.1.1, and v5.0 with TLS encryption and authentication.
HiveMQ
Enterprise-grade MQTT broker with clustering, high availability, and advanced security features. Ideal for large-scale Ignition MQTT integration deployments requiring guaranteed message delivery.
Frequently Asked Questions
Find answers to common questions about this integration.
Ready to Get Started?
Contact our team of experts to discuss your integration needs and get a customized solution.