This project uses MQTT with Raspberry Pi, NodeMCU, and ESP8266 to implement a basic IoT system for remote real-time temperature and humidity monitoring.

Abstract

The goal of this project is to use low-cost devices such as Raspberry Pi to implement remote real-time monitoring. Raspberry Pi acts as the MQTT Broker, while NodeMCU works as the IoT Client. Sensor data and control messages are exchanged through MQTT publish / subscribe flows.

IoT temperature and humidity monitoring screen

System Architecture

Main ComponentsFunction Description
Raspberry Pi 3Acts as the MQTT Broker and main controller; Python handles publish / subscribe flows.
NodeMCUWorks as the sensor-side node and communicates with the MQTT Broker through Arduino code.
ESP8266Provides Wi-Fi connectivity between the embedded device and the network.
MQTT ProtocolUses a publish / subscribe model, suitable for lightweight devices and simple real-time messaging.

System Flowchart

IoT temperature and humidity monitoring screen

Final Results

IoT temperature and humidity monitoring screen