Purpose of the study: This study aims to evaluate and compare the reading accuracy of a TDS sensor when interfaced with Arduino UNO and ESP32 microcontrollers, specifically in the context of water clarity measurement applications, by assessing voltage reading precision, data acquisition stability, and measurement consistency across varying dissolved solids concentrations. Methodology: Hardware used includes a TDS sensor, Arduino UNO (ATmega328P, 10-bit ADC), ESP32 NodeMCU (12-bit ADC), and a calibrated TDS meter as the reference instrument. The study employs the Waterfall methodology with direct laboratory observation, potentiometer testing, and voltage measurement across water samples at concentrations of 101, 201, 300, 406, and 515 PPM, each repeated three times at room temperature (~20–21°C). Main Findings: Arduino UNO demonstrated superior accuracy with average voltage errors ranging from 0.21% to 2.12% across all TDS concentrations, compared to ESP32's errors of 13.1% to 54.32%. The ESP32 critically misread a 101 PPM water sample as 48 PPM, yielding a 54.32% error — a failure that would result in a misclassification of water clarity category. Arduino UNO's standard deviation was 0.064 ADC versus ESP32's 2.019 ADC, confirming 31.5 times greater measurement stability. Novelty/Originality of this study: This study offers a direct, multi-parameter comparison of Arduino UNO and ESP32 specifically for TDS-based water clarity measurement, exposing a critical non-linearity flaw in the ESP32's ADC performance at low-voltage ranges (<10% Vref) that has not been previously documented in this application context.
Copyrights © 2026