Lightweight IoT Messaging Protocol Based on the Pub/Sub

MQTT Protocol

With the advent of the 5G era, connecting everything is becoming a reality. Accessing a large number of devices and devices management brings a huge challenge to network broadband, communication protocol and platform service architecture.

MQTT protocol is an IoT messaging protocol based on the publish-subscribe model. It has occupied half of the IoT protocol because of its simple and easy to implement, supporting QoS and small packet.

MQTT Protocol

Why Choose MQTT?

Lightweight and reliable
Lightweight and reliable
Compact MQTT packet, enable stable transmission over severely restricted device hardware and high-latency / low-bandwidth network
Better ecology
Better ecology
Its client and SDK covers all language platforms, it is an Internet of things platform standard communication protocol for AWS IoT Core, Azure IoT Hub and other top cloud vendors, which is an actual standard of Internet of things
Publish-subscribe model
Publish-subscribe model
Based on the publish-subscribe model. The advantage of the publish-subscribe model is the decoupling between the publisher and subscriber: there is no need to build the direct connection between the subscriber and publisher, nor need to on-line at the same time
Born for the Internet of Things
Born for the Internet of Things
Provide comprehensive IoT application features such as Heartbeat mechanism, Will message, QoS quality level + offline message, asynchronous mechanism, topic and security management

Applicable Industries

MQTT protocol is widely used in IoT, Mobile Internet, Intelligent Hardware, Internet of Vehicles, Power Energy and so on.

Applicable Industries
  • M2M Communication and Big Data Acquisition in the IoT M2M Communication and Big Data Acquisition in the IoT
  • Smart City, Telemedicine, Distance Education Smart City, Telemedicine, Distance Education
  • Electricity, Oil and Energy industry Electricity, Oil and Energy industry
  • Intelligent hardware, smart furniture and appliances Intelligent hardware, smart furniture and appliances
  • Vehicle networking communication, pile collection of electric vehicles Vehicle networking communication, pile collection of electric vehicles
  • Mobile instant messaging and message push Mobile instant messaging and message push

MQTT Quick Start

MQTT Basics

What is the MQTT protocol
MQTT is an IoT protocol based on the Pub/Sub model. With its characteristics of simple and easy implementation, support for QoS, and small packet.
Read Detail →
Introduction to MQTT publish-subscribe model
The core of MQTT is the publish-subscribe model. In this article, we will introduce this model in detail.
Read Detail →
How to use MQTT packet to implement publish and subscribe
The MQTT protocol communicates by exchanging predefined MQTT control packets. We will take MQTTX as an example to show how to implement the publish and subscribe function through MQTT packets.
Read Detail →
Advanced features of MQTT topics
MQTT will route messages based on topic. The broker will route messages to all the client that have subscribed to this message topic.
Read Detail →

MQTT Features

MQTT Session
The messaging series start from initiating an MQTT connection request to the server until the connection is interrupted and the session expires is called session.
Read Detail →
Introduction to MQTT QoS (Quality of Service)
MQTT protocol specifies the 3 QoS (Quality of Service) levels, which guarantees the reliability of message delivery under different network environments.
Read Detail →
Use of MQTT Will Message
When the client disconnects, a will message is sent to the relevant subscriber.
Read Detail →
MQTT Retain Message
When MQTT clients publish messages, you can set the retained message flag, and then the next subscribers can receive the latest retained message when subscribe.
Read Detail →
MQTT 5.0 Features →

MQTT Client Programming

Connect to MQTT broker with Websocket

Connect to MQTT broker with Websocket

This article will demonstrate how to use WebSocket to connect to MQTT broker and introduce technical points of interest to developers and solutions to common errors.
Read more →
How to use MQTT in the Electron project

How to use MQTT in the Electron project

This article introduces how to use MQTT in the Electron project, and implement the connection, subscription and messaging, etc of MQTT.
Read more →
How to use MQTT in the Vue project

How to use MQTT in the Vue project

This article introduces how to use MQTT in the Vue project, and implement the connection, subscription and messaging, etc of MQTT.
Read more →
How to use MQTT in Golang

How to use MQTT in Golang

This article introduces how to use paho.mqtt.golang client library in the Golang project, and implement the connection, subscription and messaging, etc of MQTT.
Read more →
How to use MQTT in Python (Paho)

How to use MQTT in Python (Paho)

This article introduces how to use the Paho MQTT client library in the Python project, and implements connection, subscribe, messaging, etc of MQTT.
Read more →
 Use MQTT with Raspberry Pi

Use MQTT with Raspberry Pi

This article introduces how to use Python to write a simple MQTT client on Raspberry Pi to implement the connection, subscribe, messaging, etc.
Read more →
Using MQTT in the Flutter project

Using MQTT in the Flutter project

This article introduces how to use MQTT in the Flutter to implement the connection, subscribe, messaging, etc between client and MQTT broker.
Read more →
Android connects MQTT using Kotlin

Android connects MQTT using Kotlin

This article introduces how to use MQTT to implement the connection, messaging, etc between Android client and MQTT broker, through using Kotlin.
Read more →
ESP8266 connects to MQTT broker with Arduino

ESP8266 connects to MQTT broker with Arduino

This project will implement connecting ESP8266 to a free public MQTT broker and programming ESP8266 by using Arduino IDE.
Read more →

MQTT Resources

Public MQTT 5 broker
The free public MQTT 5 broker for MQTT learning, testing or prototyping
MQTT IoT cloud service
IoT MQTT 5.0 cloud service for rapid deployment, easy management, and on-demand expansion
MQTT client tool online
Through the online MQTT client tool quickly understand MQTT messaging
Cross-platform MQTT client tool
MQTT X is a comprehensive function cross-platform MQTT 5.0 desktop client tool
MQTT technical articles
The technical articles that related to MQTT and MQTT 5.0 provided by EMQ