16. Soil moisture
How many times did you forget to water your flower pot? With a soil moisture sensor you will give the flower pot the instrument to alert you when it will be thirsty (see Photo 1). This example of analog input uses a soil moisture sensor to detect and report via the Internet two events: dry soil (Dry) and wet soil (Wet).
Photo 1 - flower pot connected to the Internet
Figure 1 - Soil moisture sensor circuit
Connect the Soil moisture sensor as shown in Figure 1:
- Vcc PIN to 3.3V,
- A0 PIN to A0.
Note: probe PINs can also be inverted.
Tip: you can make the probe with two rigid copper wires.
Write a sketch K to define:
- the input connection: Soil :: A0
- threshold variables: d (dry) and w (wet)
- the events to send: Dry, Wet (see Figure 2)
- the rules to turn on the status LED when the soil is dry and turn it off when it is wet.
Soil :: A0
d = 100
w = 700
Dry = Soil<d
Wet = Soil>w
Dry -> led=1
Wet -> led=0
or simply load the sketch in the workspace with the command
] load e16_soil_moisture
Figure 2 - Dry and Wet Thresholds
3. Try and learn
1. Take a glass of water and insert the sensor into the glass:
the Wet event happens and is sent over the Internet; the status LED turns off.
Pull the sensor out of the glass:
the Dry event happens and is sent over the Internet; the status LED turns on.
2. Insert the sensor into a dry plant and read the Soil value with the command:
] Soil #1
determine the threshold value and set the variable d.
After watering the plant and changing the threshold w, insert:
to stop reading Soil
to store the new sketch.
In these lesson you learned or repeated:
- how to use a Soil moisture sensor
- how to define events to be sent over the Internet