The Arduino micro controller board used in our Vinduino project measures the electrical AC resistance of gypsum soil moisture sensors. As we are interested in the actual soil moisture in our vineyard, we wanted the Vinduino reader to display soil moisture as well as sensor resistance. First step to get there is calibration of the sensors to find the relation between resistance and moisture level.
The calibration method described here is a simplified version of the gravimetric calibration method described on-line by the Arizona university. We assume that there is equilibrium between soil- and sensor moisture.

We measured the weight and electrical resistance of 6 sensors, starting with sensors that were fully soaked and saturated with water, and keep repeating the measurements until the sensors were completely dry. The weight difference between fully saturated and completely dry sensors was used as calibration point for 100% and 0% moisture respectively. The idea behind this is that the soil sensor would reach moisture equilibrium with the surrounding soil, and moisture in the sensor is assumed to be the same as the surrounding soil moisture level.

The measurement results are shown in below scatter chart. Note that the vertical scale (resistance) is logarithmic.
The trend line (continuous line) was used to convert measured electrical resistance into moisture level  percentage. For sensor 3 and sensor 6 we found that trapped air from casting the gypsum was the probable cause for measurement differences between 40-15% moisture. Apart from that, all 6 measured sensors followed the same moisture/resistance curve pretty close. We have not made measurements at different temperatures to check temperature dependency.

Conversion equations (Excel) found for this particular type of sensor are:

Please refer to the Vinduino code for implementation of the conversion equation.

Measurement data tables (Excel file) can be downloaded from this link. Sensor Calibration

For an overview of all Vinduino project related postings click here




07/20/2015 02:12

Hi My name Ismail. i was just wondering how long did it take to get the moisture level back to zero using the moisture sensor? I am currently amazed at the design of the soil sensor as it has a very accurate reading and have a robust design.

07/20/2015 13:34

Ismail, the time needed for the sensor to go from fully soaked (100%) to bone dry (0%) depends on the environment. When drying in air, it takes 1-2 days. I recommend not drying in the full sun. When placed in a pot of soil it takes > 2 weeks. See the Watermark sensor comparison blog article.
Longer drying times are preferred, as it ensures even distribution of moisture through the sensor.


Your comment will be posted after it is approved.

Leave a Reply