How siradio7/iot works
This is an ESP32 temperature-control and monitoring project. Its main workflow is: firmware samples temperature and light, applies regulation and fire-detection logic, drives actuators, and emits JSON; a serial/TCP bridge carries status to a Node-RED dashboard, which can send threshold changes back to the ESP32. The graph also preserves the separate JSON validator and firmware Wi-Fi and LittleFS utilities. Firmware orchestration and Node-RED flow details were not sampled, so those links rely on README documentation; unsampled internals are not inferred.
Main entry points: iot.ino Firmware loop · sensor_service.cpp Sensing and regulation · bridge.js Serial TCP bridge · command.cpp Serial commands
Components 18
ESP32 firmware
- Firmware loop
iot.ino - Temperature sensor
temperature_sensor.cpp - Light sensor
light_sensor.cpp - Sensing and regulation
sensor_service.cpp - Serial commands
command.cpp - Status JSON
make_json.cpp - Fan control
fan.cpp - Indicator LEDs
led.cpp - LED strip
led_strip.cpp - Fire alert
iot.ino
Bridge and dashboard
- Serial TCP bridge
esp32-bridge/bridge.js - Node-RED dashboard
nodered/data/flows.json
Firmware utilities
- Wi-Fi utilities
wifi_utils.cpp - LittleFS utilities
littlefs_utils.cpp
JSON validation
- Validation CLI
validator/validate.js - JSON validator
validator/validator.js - JSON schema
validator/schema.json
Other components
- Dashboard user
Connections 17
- Firmware loop → Sensing and regulation: reads and decides
README.md - Sensing and regulation → Temperature sensor: reads
sensor_service.cpp - Sensing and regulation → Light sensor: reads
sensor_service.cpp - Firmware loop → Serial commands: processes commands
README.md - Serial commands → Sensing and regulation: sets thresholds
command.cpp - Firmware loop → Status JSON: builds status
README.md - Firmware loop → Fan control: drives
README.md - Firmware loop → Indicator LEDs: drives
README.md - Firmware loop → LED strip: sets color
README.md - Firmware loop → Fire alert: signals fire
README.md - Firmware loop → Serial TCP bridge: sends serial status
README.md - Serial TCP bridge → Node-RED dashboard: forwards TCP status
README.md - Dashboard user → Node-RED dashboard: views and changes
README.md - Node-RED dashboard → Serial TCP bridge: sends thresholds
README.md - Serial TCP bridge → Serial commands: sends serial commands
README.md - Validation CLI → JSON validator: validates with
validator/validate.js - JSON validator → JSON schema: checks against
validator/validator.js