Using MQTT transport protocol as the foundation, implementing a basic IoT remote real-time monitoring system through Raspberry Pi, NodeMCU and other devices.

Abstract

The main purpose of this project is to use simple and inexpensive equipment like Raspberry Pi to implement remote real-time monitoring functions. Using Raspberry Pi as the main communication hub (Broker), NodeMCU as the IoT system’s Client for first-line device operations, and MQTT transport protocol to handle [publish]/[subscribe] values between host and client, enabling the entire IoT system to operate smoothly.

Untitled

System Architecture

Main ComponentsFunction Description
Raspberry Pi 3The core of IoT, a powerful open-source single-board computer. Using Python supported by the system to establish MQTT connection protocol, completing [publish]/[subscribe] functions to Client side.
NodeMCUAn open-source IoT single-chip containing ESP8266 IoT WiFi chip. Small size yet powerful, using Arduino to develop programs establishing MQTT connection protocol, implementing [publish]/[subscribe] functions to Server side.
ESP8266A low-cost but feature-rich WiFi chip, also a core IoT component. Using ESP8266’s AT commands to implement embedded system network connection transmission tools.
MQTT ProtocolA [publish]/[subscribe] type messaging protocol designed for low hardware performance and poor network conditions. Designed for IoT transmission, its [publish] and [subscribe] functions are the core of this project.

System Flowchart

Untitled

Final Results

Untitled