Introduction: DIY Plant Moisture Sensor W/ Arduino
See this project on my website!
This project will calculate the water content of soil around a plant by measuring the dielectric constant (the soil's ability to transmit electricity) and will alert you with a red LED when the plant needs more water or a blue one when it has too much.
Step 1: Materials
You will need to gather these things in order to build this project.
- Arduino UNO or equivalent (x1): https://amzn.to/2DLjxR2
- 220Ω* resistors (for LED) (x3): https://amzn.to/2S2sV5R
- 10kΩ resistor (x1) - brown black orange: https://amzn.to/2S2sV5R
- RGB LED (x1) or 3 different colored LEDs: https://amzn.to/2Fzbusx
- Long Jumper Cables (x2): https://amzn.to/2Q7kiKc
- Jumper Cables (x6): https://amzn.to/2Q7kiKc
- Breadboard (x1): https://amzn.to/2RYqiSK
- Bolts of any size (x2): https://amzn.to/2qWLYTF
- Nuts same diameter as bolts above (x2): https://amzn.to/2qWLYTF
Step 2: Create Sensor Prongs
You will need to repeat this step twice (once for each prong).
- Begin to tighten the nut around the bolt
- Slide the end of the long jumper cable between the nut and the head of the bolt.
- Finish tightening the nut until you are unable to pull out the jumper cable
Step 3: Create the Circuit
Follow the schematic or the breadboard image - whichever one works better for you. The wires labeled "out" are the two prongs you just created.
Step 4: Upload This Code
Pretty self explanatory here. Just upload this code to your Arduino!
Step 5: Place Sensor Prongs
- Insert the prongs you made about 1" to 1.5" apart in soil close to the plant you want to monitor.
- Give the plant a healthy amount of water and open the serial monitor
- It should give you readings around 25 - 30% if you gave it the right amount of water
- If not, try moving the prongs around to get it right (or you just added too much water)
Step 6: Outdoor Protection
If this is going outside you will want to put your circuit inside of a Tupperware or other waterproof container to protect it from the elements. Then drill some holes for the sensor wires to come through and add a battery box to power it (see here for how to do that). Mine is not going outside though, and will be fine without a container.

Participated in the
Green Electronics Contest 2016

Participated in the
Indoor Gardening Contest 2016

Participated in the
Arduino Contest 2016
5 Comments
2 years ago
I know you wrote this a few years ago but I am curious about the math here. When I create this project I get the green led to light and it is in air, I realize air has a humidity but just curious how I would check the math related to the percentages . In free air I get 1% reading on the monitor green led (pin2) lit.I would think that the blue led would be driven high but maybe I am not understand it correctly. Your math percent = 2.718282 * 2.718282 * (.008985 * moistVal + 0.207762);caculates the percentage of moisture, could you please step me through it, math is not a very strong subject for me. I assume that the first and second values are multiplied together and the second value would be the probe readings + a value divided into the first value to give you the result. Is this correct? I am trying to grow a peach tree in my office from a seed, I have a plant so far and wanted to monitor the value of the soil,worked hard at getting this to even grow, all others died. I read that the soil moisture should be between 21% to 40%,this circuit could help me with my plant ,thanks.
Question 2 years ago on Introduction
Hello. Do you know of any projects that team this sensor up with a wifi project so that the sensor data can be accessed remotely?
Question 3 years ago on Step 2
Hi, can you please name those steps, please. I'm sorry to require you like this, but I can't name it step by step and it's only showing the chart for us. thanks
Question 4 years ago on Step 4
Hi. I would like to know where did you get the formula from. I noticed it starts with e^2, but what are the other values, and where did that come from? Thanks
6 years ago
me podria ayudar yo quiero detectar la humedad de un pañal y que mande un aviso al celular del que el pañal esta mojada como podria hacer eso ?