IoT-Based Fertiliser Mixing for Precision Farming
Tech Specs
ESP32 firmware for automated hydroponic fertiliser dispensing, 30-point median-filtered TDS sensing, and real-time Blynk cloud telemetry.
Publication
- Journal
- International Journal of Integrated Engineering (IJIE), Vol. 18, No. 1, pp. 186–201, 2026
- DOI
- 10.30880/ijie.2026.18.01.014
- Role
- First author and firmware engineer
- Institution
- Universiti Tun Hussein Onn Malaysia (UTHM)
Controller
- Microcontroller
- ESP32
- Firmware
- C and C++ on the Arduino ESP32 core (2.0.0 or later)
- Control loop
- Non-blocking state machine that keeps the watchdog and WiFi heartbeat alive during dispensing
- Connectivity
- WiFi 802.11 b/g/n
Sensing
- TDS electrode
- Submersible, read on ADC1 (GPIO 36)
- TDS filtering
- 30-sample circular buffer with a median filter, then 3rd-order polynomial conversion to ppm
- Water level
- Two reservoir probes on GPIO 34 and 35: Low (700 or less), Medium (701 to 1200), High (above 1200)
- ADC isolation
- All analog sensors on ADC1, because ADC2 is corrupted by the WiFi radio
Dispensing
- Pumps
- Dual pump and solenoid circuits (GPIO 16/17 and 22/23)
- Flow metering
- Pulse flow meters on GPIO 18 and 19, read in IRAM interrupt routines with atomic guards
- Calibration
- 5.25 and 5.50 ml per pulse, one for each pump
- Cutoff
- Each pump shuts off independently, with no volumetric overshoot
Cloud
- Platform
- Blynk IoT (1.3.0 or later)
- V1
- Volume input
- V2
- Dispensed volume
- V3
- Live TDS in ppm
- V4 and V5
- Colour-coded water status LEDs
Results
- TDS precision
- 99.6% mean accuracy against a calibrated meter, across four standard solutions from about 230 to 900 ppm
- Dosing accuracy
- More than 94% across 250 to 1,000 ml dispenses
- Licence
- MIT