I've set up a gravity based drip system, but it's clear that the manual adjustment for each plant is impossible. I'd like to have a Raspberry Pi make the adjustments for me based on the assumption that an exact amount of drops will always deliver the same quantity of water.

My idea is to put a low cost sensor under a motorized dripper to count the drops. My question is, can anyone recommend a sensor which only needs to send a pulse to the Pi each time a drop falls? A second question would be a recommended motor to squeeze the tube to slow the drip?

  • 6
    \$\begingroup\$ Why don't you measure soil moisture directly. \$\endgroup\$
    – Andy aka
    Apr 29, 2014 at 12:29
  • 1
    \$\begingroup\$ Why not just use a positive-displacement pump such as a peristaltic pump or gear pump? \$\endgroup\$ Apr 29, 2014 at 15:31
  • \$\begingroup\$ Fun project! I agree with @SpehroPefhany. I built an active one to water our plants while we were on vacation, using an inexpensive fish tank pump from Harbor Freight Tools ($8.99, SKU #68389), a US hardware store. Another store, Home Depot, sells drippers and mini sprinklers that are spec'd at different flow rates (eg. 1 gallon per hour). See SKU #579386 as an example. Finally, it would be awesome to control water to each plant with a flow relay of some kind. Let us know how the project goes! \$\endgroup\$
    – 2over0
    Aug 15, 2014 at 17:02
  • \$\begingroup\$ A positive displacement pump may be easier than a motorised valve. You can use a piezo beeper to listen to the drops falling to the bottom of the box. Sensing the soil moisture is a neat idea but may have long term measurement drift. \$\endgroup\$
    – KalleMP
    Sep 2, 2014 at 19:09
  • 1
    \$\begingroup\$ A small paddlewheel comes to mind. The drip rotates it say, 90 degrees. If there are five or more optical / magnetic sensing positions, then each drop should send at least one signal. \$\endgroup\$
    – rdtsc
    May 13, 2015 at 4:10

1 Answer 1


Drop can be big or small or minute. You need to quantify a "drop", which is easier said than done. It is better to measure the amount of water you need to use for irrigation. With that in mind, letting it out as few drops over a time period could be managed.

Raspberry Pi's timer could be used.

Another easy idea is to borrow the used IV drip (comes with Glucose / saline bottles) from healthcare industry, ask some friends who work in hospital.

Integrate Raspberry Pi with the dripping mechanism.

Use timer with the IV drip mechanism (now modified for water) and a mechanical stopping. This will be cheap and easy to use in kitchen garden. Hope this helped.

  • \$\begingroup\$ You could try a few small pumps, like the 12v DC ones from say an automobile windshield-washer-fluid reservoir. Set the water level slightly below the pump output hose, PI --> Relay --> pump1, etc, then test their flow rates. 1 second "on" into a beaker = 100mL delivered, etc. Then it is possible to say "ok this plant needs 53ml of water per day, so run pump1 for 100ml/1s = 53ml/x" :) \$\endgroup\$
    – rdtsc
    May 13, 2015 at 4:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.