Built to order

IoT-Based Grain Storage Monitoring System with Temperature, Humidity and Gas Alerts (ESP32)

This project builds an IoT-based grain storage monitoring system on the ESP32 that watches the earliest warning signs of spoilage in stored grain — temperature, humidity and spoilage gases. DHT22 sensors track temperature and humidity, an MQ-135 module senses ammonia and CO2 from heating grain, and a capacitive probe measures moisture inside the pile. Nodes publish over MQTT to a cloud dashboard that charts each bin and fires Telegram alerts when spoilage thresholds are crossed. Suitable for B.E./B.Tech final-year projects in Electronics, Electrical and IoT.

IoT & Embedded Cloud DashboardESP32 DevKitMQTT telemetryDHT22 temperature · humidity sensorMQ-135 gas sensorArduino IDE · C/C++ firmwareTelegram Bot API alertsCapacitive grain-moisture probeHybrid
IoT-Based Grain Storage Monitoring System with Temperature, Humidity and Gas Alerts (ESP32) — project thumbnail preview
More project photos (2)

The problem

Stored grain is quietly destroyed by its own biology: a damp pocket of wheat or maize starts respiring, the local temperature climbs a few degrees, microbes multiply, and ammonia and carbon dioxide build up long before anyone sees mould. In farm godowns and mandi warehouses this heating often goes unnoticed until tonnes of grain are discoloured, musty and unsellable. Manual checking means climbing into bins with a thermometer — slow, infrequent and easy to skip. This project addresses that gap with a low-cost IoT alternative: ESP32 sensor nodes placed in each grain bin continuously measure temperature, humidity, grain moisture and spoilage gases, stream the readings to a cloud dashboard over MQTT, and raise alerts the moment the numbers start moving toward spoilage conditions. The build demonstrates real embedded sensing, wireless telemetry and threshold engineering around a problem with genuine agricultural stakes.

SYSTEM FLOW

7 components 6 connections

Live flow
Drag to explore
100%
sensorDHT22 Sensor

Samples bin temperature and relative humidity every 30 seconds.

Follow the working sequence

How it works

  1. The DHT22 in each bin samples temperature and relative humidity every 30 seconds; the capacitive probe reads grain moisture and the MQ-135 reports the spoilage-gas level.
  2. The ESP32 firmware compares every reading against the configured spoilage thresholds, including a temperature rate-of-rise check that flags heating pockets early.
  3. Readings are published over Wi-Fi via MQTT to the cloud broker under per-bin topics.
  4. The dashboard subscribes to the topics and updates the bin cards, 90-minute trend charts and moisture panel live.
  5. When a threshold is crossed, the alert engine writes to the alert log, pushes a Telegram message and sounds the on-node buzzer.
  6. During short Wi-Fi outages the node buffers readings locally and backfills them on reconnection, so the trend lines show no gaps.

Tech stack:

  • ESP32 devkit (Wi-Fi microcontroller)
  • DHT22 temperature · humidity sensor
  • MQ-135 gas sensor (NH3 · CO2)
  • Capacitive grain-moisture probe
  • Arduino IDE · C/C++ firmware
  • MQTT (PubSubClient) telemetry
  • Cloud dashboard (HTML · CSS · JS)
  • Telegram Bot API alerts
Parameter Value
Controller ESP32 devkit, dual-core with Wi-Fi
Temperature range -40 to 80 °C (DHT22 datasheet)
Temperature accuracy ±0.5 °C (DHT22 datasheet)
Humidity range 0–100 %RH (DHT22 datasheet)
Humidity accuracy ±2 %RH typical (DHT22 datasheet)
Gas sensing MQ-135, sensitive to NH3 and CO2; indicative trend, not a calibrated ppm instrument
Moisture sensing Capacitive probe, relative reading; grain-type calibration by the student
Sampling interval 30 s default, configurable in firmware (design target)
Telemetry MQTT over Wi-Fi, per-bin topics
Alert channels Telegram bot message + on-node buzzer
Nodes per demo 2–3 sensor nodes (design target)
Power 5 V DC adapter per node

Project features

  • [Multi-bin ESP32 sensor nodes] Each node combines an ESP32 with a DHT22 temperature-humidity sensor, an MQ-135 gas module and a capacitive moisture probe; two to three nodes cover a multi-bin godown mockup in the demonstration.
  • [Spoilage-gas trend sensing] The MQ-135 module is sensitive to ammonia and carbon dioxide — the gases released by heating, respiring grain — so the dashboard's gas trend exposes spoilage activity before visible mould appears. The reading is an indicative trend, not a lab-calibrated concentration.
  • [In-pile grain moisture probing] A capacitive probe sits directly inside the grain pile and reports relative moisture, catching damp pockets that air sensors mounted above the grain would miss.
  • [MQTT cloud dashboard] All nodes publish to an MQTT broker; the companion dashboard shows live per-bin cards, 90-minute temperature/humidity/gas charts, a bin-detail panel and a persistent alert log.
  • [Configurable spoilage thresholds] Temperature, humidity, gas and temperature rate-of-rise limits are adjustable from the dashboard, so alert sensitivity can be tuned for wheat, rice or maize.
  • [Telegram and buzzer alerts] Threshold crossings fire a Telegram message to the operator's phone and trigger the on-node buzzer for an immediate local warning.
  • [Daily digest log] The system records per-bin minimum/maximum readings and alert events into a daily summary, giving the report a ready-made observation table.
  • [Optional: GSM SMS fallback] A SIM800L-based SMS path can be added for godowns without Wi-Fi coverage; it is an optional customization, not part of the base build.

What is included

  • Working prototype: ESP32 sensor node(s) with DHT22, MQ-135 and moisture probe, plus grain-bin mockup
  • Complete firmware source code (Arduino IDE, C/C++)
  • Wiring and sensor-placement documentation
  • Companion cloud dashboard demo with live charts and alert log
  • Project report PDF (background, methodology, observations, limitations)
  • PPT presentation for final review
  • Viva Q&A preparation document

Limitations & prerequisites

  • The MQ-135 output is an indicative spoilage-gas trend, not a lab-calibrated NH3 or CO2 concentration — absolute values require laboratory calibration.
  • This system is NOT a substitute for professional phosphine fumigation monitoring; fumigation safety requires certified equipment and trained personnel.
  • DHT22 and MQ-135 readings drift over time; periodic recalibration against reference instruments is needed for honest report numbers.
  • The cloud dashboard and Telegram alerts need Wi-Fi; only local sensing and the buzzer work during a full network outage.
  • Moisture-probe readings are relative and grain-type dependent — calibration with known samples is required for each grain.
  • The demo uses bin mockups, not a full-scale silo; sensor placement and bin geometry differ in a real godown.
  • This is an academic prototype, not an industrial-certified or compliance-grade warehouse system.

Frequently Asked Questions

Which controller and sensors are used, and why?

An ESP32 handles sensing, threshold logic and Wi-Fi in one chip. The DHT22 gives calibrated temperature and humidity from a single module, the MQ-135 is sensitive to the ammonia and CO2 that heating grain releases, and the capacitive probe measures moisture inside the pile where air sensors cannot reach.

Does the system actually detect spoiled grain?

No — it detects the early warning signs of spoilage: rising temperature, climbing humidity, increasing spoilage-gas levels and a fast temperature rate-of-rise. Confirming spoilage still needs a physical inspection of the grain, which the alert log is designed to prompt.

Does it work without Wi-Fi?

Local sensing and the on-node buzzer work without Wi-Fi. The cloud dashboard, charts and Telegram alerts need connectivity; the node buffers readings during short outages and backfills them when Wi-Fi returns.

Can this monitor a real godown or warehouse?

The base build covers 2–3 bins in a demonstration mockup. Scaling to a real godown means adding more nodes, weatherproof enclosures and longer-range links — a realistic customization covered under the optional scope.

What makes the MQ-135 reading trustworthy?

Treat it as a trend, not a measurement. A steadily rising gas line alongside rising temperature is the spoilage signature; the report explains this honestly and never presents the MQ-135 as a calibrated gas analyzer.

Is this project suitable for a final-year project?

Yes — for Electronics, E&TC, Electrical and IoT programs. It demonstrates sensor interfacing, embedded firmware, MQTT telemetry, cloud dashboards and alert engineering around a real agricultural problem.

Components & software requirements
  • ESP32 devkit (Wi-Fi microcontroller)
  • DHT22 temperature · humidity sensor
  • MQ-135 gas sensor (NH3 · CO2)
  • Capacitive grain-moisture probe
  • Arduino IDE · C/C++ firmware
  • MQTT (PubSubClient) telemetry
  • Cloud dashboard (HTML · CSS · JS)
  • Telegram Bot API alerts
Delivery information

Built-to-order project. Delivery timeline is shared after order confirmation based on current queue.

Support terms

Complete documentation, setup guide, and viva preparation included. Support for setup and explanation provided.

Download free synopsis (PDF)

Enter your name and email — the synopsis PDF downloads immediately. We may send occasional project updates; no spam, unsubscribe anytime.

Get a quotation