I'm looking at building my own indoor plant watering system. I'm not sure if I should use a Pi or Arduino to run it. I'm guessing I should probably use both ie an Arduino to control the pumps and feedback sensor data to a Pi with the Pi deciding when to water the plants.
I currently have a xiaomi hub with home assistant on a pi.
I have 4x pot plants I want to automate in my conservatory. I would want 5x water sensors and 8x pumps. The water sensors need only report the presense (or absence) of water in the overflow saucer at the bottom of each pot and the presence or absence of water in my water reservoir. For the pumps I would probably use 12 volt peristaltic pumps. I would use peristaltic pumps to pump water out of the overflow saucer at the bottom because they still work if you get air in the tube, and they don't mind if the tube gets dirt in it. For pumping water to the plants from the water reservoir I would probably use the same pumps just for ease of use.
So each plant has
1x water sensor in the water overflow saucer under the plant.
1x pump which can pump water from the overflow saucer into the potplant
1x pump which can pump water from a reservoir into the plant.
Additionally there is a shared water reservoir (tank) which contains a sensor to alert the human when it is empty and also to not try to pump water out of the tank when it's already empty.
The logic for each plant water system would be as follows:
Every morning check if overflow saucer under the plant has water in it.
- If overflow saucer under the plant has water, then pump water from saucer into the plant until their is no water in the saucer then stop and don't water the plant today.
- Else check max temperature over the last 24 hrs and compare it to a table of values to see how long to pump water from the water reservoir into the plant. If during the pumping of water, there is water detected in the overflow saucer then stop watering the plant. If during the pumping of water the water reservoir is empty then stop pumping and alert the human to fill up the water reservoir.
In the evening check if their is water in the saucer under the plant, if there is pump the water out of the saucer and into the plant.
What hardware would you recommend for a small computer (Pi/Arduino) to be able to interface with 5x sensors and control 8x pumps (probably having a 12volt relay on each pump?)
Instead of using a pump I could use a solenoid valve and mains water pressure, but I don't want to risk flooding my house!