ESP32 Multi-Sensor Hub — Industrial IoT Module
Designed and built a custom ESP32-based multi-sensor hub with MPU6050, MAX6675, and DHT22 sensors for industrial energy monitoring deployments.








Standard 3D-printer APIs — including cloud platforms like SimplyPrint — expose temperatures, job progress, and queue status, but they reveal nothing about a machine's physical environment or operational vibrations. To close that gap, I designed and built a custom ESP32-based sensor hub: a compact, low-power module placed beside each printer that captures the data no API can provide.
The Problem
Production-grade 3D-printer monitoring demands more than software telemetry. Ambient conditions (temperature, humidity) directly affect print quality and filament health. Vibration signatures reveal operational state — and eventually enable predictive maintenance and failure detection. None of this is available through standard printer firmware or cloud APIs.
The Solution
A custom multi-sensor module built around the ESP32 microcontroller. Each hub connects to the local WiFi network and publishes all sensor readings to the Node-RED backend via MQTT, with each sensor writing to a unique topic for clean, reliable ingestion. The firmware supports OTA updates, configurable publish intervals, and automatic WiFi reconnection — critical for unattended FabLab deployments.
Onboard Sensors
- MPU6050 — Accelerometer & Gyroscope: Measures vibration patterns and orientation changes to determine real-time printer state (
Printing,Idle,Off) with high accuracy. The vibration data lays the groundwork for future predictive maintenance, automated failure detection, and print-quality monitoring. - MAX6675 — K-Type Thermocouple Amplifier: Reads temperatures from a K-type thermocouple for highly accurate, fast-response thermal monitoring of critical components like the printer hotend or enclosure.
- DHT22 — Temperature & Humidity: Tracks ambient room conditions around the printer. Environmental drift affects layer adhesion, warping, and filament moisture absorption — this sensor ensures those variables are captured.
Data Flow & Integration
The hub fits into the broader LAUDS/EnMS architecture:
ESP32 Sensor Hub → (WiFi/MQTT) → Node-RED → TimescaleDB → Grafana Dashboards
Node-RED normalizes and routes the sensor data alongside cloud API data from SimplyPrint, creating a unified monitoring layer that combines software telemetry with physical-world measurements. Legacy printers are bridged into the same ecosystem via Raspberry Pi 4 + OctoPrint over USB.
Firmware Highlights
- Written in C++ using the Arduino/ESP-IDF framework
- Per-sensor configurable read intervals and MQTT topic mapping
- Robust error handling: automatic WiFi reconnection, sensor fault isolation
- OTA firmware updates — no physical access required after initial deployment