Creative Commons images are CC BY-NC-SA 3.0

SparkFun Soil Moisture Sensor
project on project

by Jonathan Eskow

Description: The SparkFun Soil Moisture Sensor is a simple breakout for measuring the moisture in soil and similar materials. The soil moisture sensor is pretty straight forward to use. The two large exposed pads function as probes for the sensor, together acting as a variable resistor. The more water that is in the soil means the better the conductivity between the pads will be and will result in a lower resistance, and a higher SIG out.

To get the SparkFun Soil Moisture Sensor functioning all you will need is to connect the VCC and GND pins to your Arduino-based device (or compatible development board) and you will receive a SIG out which will depend on the amount of water in the soil. One commonly known issue with soil moisture senors is their short lifespan when exposed to a moist environment. To combat this, we’ve had the PCB coated in Gold Finishing (ENIG or Electroless Nickel Immersion Gold). We recommend either a simple 3-pin screw pin terminal or a 3-pin jumper wire assembly (both can be found in the Recommended Products section below) to be soldered onto the sensor for easy wiring.

Note: Check the Hookup Guide in the Documents section below for assembly and weatherproofing instructions as well as a simple example project that you can put to together yourself!


Recommended Products

Customer Comments

  • I have been using this sensor for about 3 months. The a/d converter is 1024 counts for full scale (3.3V) and I calibrated by taking a sample of my garden soil, weighing it dry then adding water to saturation. As the soil dried, I weighed the container and recorded the adc counts and the weight. I found that the sensor output curve flattens at low water values and high water values but is pretty linear in the range 800 - 880 counts (2.6 - 2.8 ).

    In the Garden, the probe is powered only a few microseconds once each minute so I have not observed any corrosion issues.

    From observation, it appears that the sensor output is also dependent on temperature (lower voltage for cool temperature; higher for warm). Consequently my garden generally gets watered near dawn when the temperature is lowest.

    Has anyone else noticed this dependency? or have any temperature data?

  • It seems that on this product and many others the sale price has gone away? Was it supposed to last until the end of today?

  • Is it possible to use this with 3.3V outputs? I’m attempting to provide power with the digital i/o pins on a Particle Photon.

    • Yes, you can power it with 3.3V. We have a spot specifically for the Soil Moisture Sensor on our Photon Weather Shield. You’ll just have a different range of analog readings than if you were powering it with 5V.

  • Check out my instructable :

  • The corrosion problem really is a thing. Not only does it kill your sensors in a pretty short time, but in my home garden the resulting electrolysis (I think that’s what it’s called) resulted in soil that was toxic to my plants. Nothing grew in the containers that I had the sensors in. The containers without sensors grew great. As has been suggested by the datasheet and other people on here, not constantly powering the sensor was critical for my success. My system was Arduino based, so all I did was power the sensor through a transistor that I enabled with a digital IO pin from my Arduino. The function that read that sensor powered the sensor on, read the value and then powered it back off. I think the sensor was powered on for less than 20mS over the course of an hour.

    I’m not really that smart, and haven’t played with RTCs yet (although I keep buying them…they look great in my part bin!) so I simply incremented a counter at the beginning of the MSensorRead() function. When that counter hit 50,000 (I think it was) I read the sensor, and ignored it the rest of the time.

    Quick video I did showing the sensor reading/displaying: watch closely next to the moisture reading value.

  • Kinda sad that SF went the resistive route. Capacitive (though a bit more expensive), has none of the corrosion issues of one like this. I built a similar sensor out of galvanized nails, and it rusted to nothing in about 3 months.

  • I understand ENIG is more expensive but the extended reliability is worth it, especially since no one will notice the “DO NOT POWER CONSTANTLY” annotation in the schematic.

  • I’m trying to characterize these sensors so I set up a little experiment with soil from my garden. I took a soil sample and dried it in the oven (before my girlfriend woke up and found out what I was doing in the kitchen). I let it bake at ~150F for an hour occasionally mixing, this seem to produce very dry soil. I made a Mariotte’s bottle out of a water bottle to provide a constant yet very slow way to add water to the soil. Here is a quick picture of the soil in the bottom half of a Gatorade bottle with the constant flow water bottle on top. The issue I’m having is that the soil water content doesn’t seem to correspond linearly with sensor output voltage. At some point it jumps up to ~4.7 V and stays there. Her is my recorded data of sensor output voltage vs time and the approximate moisture content of the soil vs time. Are there any soils experts out there that could chyme in, I’m quite happy with the little sensors I’m just trying to get the voltage to water content relationship established before deploying them outside.

  • Wouldnt a device like this make the soil sour through eletrolysis of the hydrogen? Ive thought of building many devices like this myself but i dont think its good for the plant. also if there is any copper, its very bad aswell. A simple copper nail can kill an entire tree ive heard.

  • I too am having trouble confirming that the output is as it should be. With the probe NOT inserted in soil, I get a reading of about 8. In dry-ish soil it was about 3300, and then in saturated soil it went DOWN to about 3200. Also as I slowly added water every so often, I wasn’t get a nice consistent change in the reading. Can anyone comment on this? FYI i’m going into a Photo board. thanks

  • My electronics students noticed a sentence in the description, as of 2015-10-25: “The two large exposed pads function as probes for the sensor, together acting as a variable resistor.” Sparkfun might instead write “The two large exposed pads function as probes for the sensor, together acting as legs on a variable resistor.” The variable resistor itself, in this case, is the variably moist soil between the probes. Perhaps a completely different sentence would be appropriate.

  • Is there a max voltage with which I can safely power these? Working on a project that uses 12V external power and I’d like to rig up a few of these in parallel from the same power source.

  • nice hobby sensor … probably not ideal for large commercial applications or sensors that will stay in the ground for many years … but for 5 bucks you probably cant beat it … most of the commercial ag sensors run in the hundreds (although I suppose you get better accuracy for that extra money, and support, and less corrosion, or replacements in the event of corrosion) Decagon sensors are very nice … but cost alot more… (this looks like it was maybe based off of Decagons 10HS sensor)

  • Depending on the dimensions, some plaster of paris and a popsicle tray might make perfect sensorsicles. Not sure how much that helps with corrosion though.

  • I suppose one could use this with a Particle Photon and be able to get notification on my phone when the soil needs more moisture. Yes?

  • This sensor is just screaming “Connect me to an XBee!!!” - and I will if I can come up with a decent power supply for the XBee and sensor(s).

  • Could we get a little more information on “encasing in gypsum” to extend sensor life? I think more than a few of your customers are interested in this for controlling drip/sprinkler irrigation schemes for larger gardens and the info would be helpful.

  • Are there any data suggesting how long this board will actually survive in soil? I’m considering using some of these to help control the sprinklers in my home automation system. I don’t want to go to all the trouble of running wires, etc, if it’s only going to last a year… cheers, Doug

  • What is the danger of constant power? Corrosion on the probes? Looking at the schematic it’s just biasing a 3904. I don’t see the problem.

    • I think you’re correct regarding corrosion. If you read reviews on Amazon for similar sensors, many people reference corrosion issues.

      • I wonder if it’s possible to reverse the voltage and therefore the corrosion?

        • yes, but it doesn’t reverse the corrosion, it just corrodes both sides of the probe half as fast, instead of one.

    • Although corrosion might be an issue (which I have not experienced), continuous excitation may cause the sensor to exceed government specified limits on electromagnetic emissions.

Customer Reviews

5 out of 5

Based on 4 ratings:

5 star
4 star
3 star
2 star
1 star

1 of 1 found this helpful:

Easy to setup and configure

It was easy to get it setup and configured. I’m working on solar power and bluetooth le for it, for some outdoor planters I’d like to keep an eye on. A fun little project to hack on!

1 of 1 found this helpful:

Works great

We can integrate it with our PLC or another circuit for our project . It is easy to use with or without an arduino board. The only thing we need now is something like this to use as a PH sensor :)

AAA. Great little monitor

Having the chip right on the sensor is handy for protoyping w/o extra wires/boards

Easy to get started

Only 5 minutes after unpacking I had the sensor set up in soil and was running a barebones program to display the reading on the serial plotter. Easy for beginners and a great sensor to try things out on the Arduino.

Related Tutorials

Soil Moisture Sensor Hookup Guide

July 23, 2015

A quick hookup guide and project to get you started with the Soil Moisture Sensor from SparkFun.

BadgerHack: Sensor Add-On Kit

February 16, 2016

Turn your Badger or Redstick into a temperature and soil moisture sensing display with the BadgerHack Sensor Add-On Kit

Logging Data to Google Sheets with the Tessel 2

December 12, 2016

This project covers how to log data to Google Sheets two ways: using IFTTT with a web connection or a USB pen drive and "sneakernet" without.