Research EngineeringCompleted2025

GrowController: IoT Environmental Monitor

ESP32-based CO2, temperature, and humidity monitor with VPD calculation and Prometheus/Grafana integration.

GrowController: IoT Environmental Monitor

Problem

Monitoring environmental conditions in controlled growing environments requires real-time data collection, alerting, and historical analysis. Commercial solutions are expensive and inflexible.

Approach

Built a complete monitoring system: ESP32 microcontroller with Sensirion SCD41 CO2 sensor, HTTP server exposing Prometheus metrics and JSON API, automatic VPD (Vapor Pressure Deficit) calculation with growth-stage-specific thresholds.

Data

Real-time measurements: CO2 (400-5000 ppm), temperature (-10 to 60C), humidity (0-100% RH). VPD calculated using standard atmospheric formulas.

Validation

Tested against reference instruments. VPD calculations verified against published horticultural cultivation guides.

Results

Low-cost monitoring system (<50 EUR hardware). Prometheus metrics enable Grafana dashboards with historical trends and alerts. JSON API supports custom web UIs.

My Role

Developer. Extended existing SCD4X library with VPD calculations, Prometheus metrics, and growth stage configuration.

Next Steps

Add MQTT for Home Assistant integration; implement deep sleep for battery operation; multi-sensor mesh network.

Key Outcomes

  • Complete IoT monitoring solution
  • Prometheus/Grafana integration
  • Real-time VPD alerting
  • Open-source on GitHub

Tech Stack

C++ArduinoESP32PrometheusGrafana

Tags

pipelinedeploymentcipythondocker