DFROBOT SEN0308- Analogue Capacitive Soil Moisture Sensor by DFRobot - Calibration error

userHead Liam.Maguire 2024-03-28 02:25:25 310 Views0 Replies



I am doing a project based around the automation of a plant watering system using soil moisture sensors. I am using the:



Soil Moisture Sensor, Analogue, Waterproof, Arduino/ESP32/micro:bit/Control Board/Raspberry Pi Board


I purchased 4 from Farnell. The problem I have is with calibrating the devices. I have one working one with the remaining 3 not giving me the values i expected.


I have ran the following code in Arduino IDE:

void setup() {

Serial.begin(9600); // open serial port, set the baud rate to 9600 bps


void loop() {

Serial.println(analogRead(A0)); //connect sensor and print the value to serial




For my working sensor, I have connected to a Firebeetle ESP32. When i run the code, I get a value of 2768 from the Serial moitor on Arduino when completly dry with it lowering towards 0 as the moisture sensor is dipped further into water. This is fine.


For my other 3, no matter what pin the sensors are connected to (even if put in A0 instead of the first soil sensor), I only get a constant value with no changes when it comes in contact with any depth of water.


I feel it is unlikely that ¾ are faulty. 

If anyone has some way of fault finding or solution it would be most appriciated.