Close
0%
0%

FULLY Automated Pico Garden Waterer v2

An attempt at a 100% hands-off container garden watering system

Public Chat
Similar projects worth following
A simple Google search will return a multitude of "automated" garden watering systems. However, the vast majority (if not all) require you to manually refill the water reservoir. That, in turn, requires you to consistently monitor the reservoir.

This project is my attempt to FULLY automate my system while using collected rainwater.

The code is written in Micropython (github link below) and readings are uploaded to ThingSpeak.com

Background

This whole project started because I decided I needed a hobby. I like to work with my hands but I don't have space for something like a full woodworking workshop. So I thought about what I could do that didn't require a lot of large machines and would be relatively inexpensive to get into. I have a degree in electronics (that I haven't used for 30 years) and a career as a programmer. That being said, I realized that the world of Arduino/Raspberry Pi could be interesting to investigate. I started watching videos about projects I could try and I ended up here. A fully-automated garden watering system. The main difference is that this one takes it a step farther by refilling the reservior with collected rainwater from a rain barrel without any intervention. I've attempted to make this a "set it and forget it" system.

Maybe this year I won't eventually kill any plants I try to grow.


Concept

  1. Rain fills rain barrel
  2. If reservoir is low, motorized ball-valve opens allowing reservoir to refill from rain barrel
  3. Motorized ball-valve closes when reservoir is full
  4. Soil moisture sensors test moisture levels in each container every 5 minutes
  5. If moisture is below a pre-defined threshold, turn on appropriate pump
  6. Continue pumping until moisture level reaches a pre-defined high threshold then turn off pump
  7. Upload values to ThingSpeak for monitoring

Hardware

I chose a Raspberry Pi Pico because they're:

  1. Inexpensive
  2. Perfectly suited to the task
  3. Readily available

The Chirp sensors (link available in the BOM) were purchased after much research and a disasterous first attempt with cheap capacitive moisture sensors. You get what you pay for.

The motorized ball valve was the final solution to refilling the reservoir from the rain barrel. A low power solenoid didn't have enough water pressure (via gravity feed) to actuate. A pump didn't have any way to actually stop the flow of water when the bucket was full. I suppose I could have used a combination of the two but I just didn't want to. The ball valve also served the function of turning the reservoir off if power was lost to prevent overfilling/flooding.

For this prototype, I'm also using a breakout board from AliExpress for the Pico and a 4-channel I2C relay board from Tindie.com (link in the BOM) for the relays.


Communication

I'm using I2C to communicate with the Chirp sensors as well as the relay board. The advantage of this is that the system could be expanded up to 100+ containers with appropriate power supplies, I2C MUXes and relay boards.  As this is still a prototype, I'm only using 2 containers.  If everything works the way I'm hoping it will, I'll be expanding to more containers next spring.

  • 1 × Rain Barrel with spigot
  • 2 × 5v submersible pump One for each container
  • 1 × Raspberry Pi Pico W
  • 1 × 5v power supply To power the Pico and everything but the motorized ball-valve
  • 1 × 12v power supply To power the motorized ball-valve

View all 12 components

  • IT WORKS!

    TazwellJ06/05/2023 at 18:40 0 comments

    The cucumbers have finally gotten big enough that they use a good bit of water and the pump turned on and off exactly when it was supposed to.  I still want to do some tweaking on the thresholds but for all intents and purposes (barring upgrades) it's done!

  • Little Update

    TazwellJ06/02/2023 at 13:50 0 comments

    Project is functioning however we've been getting rain too often and so the moisture levels haven't dropped enough to actually have to do anything.  Continuing to monitor.


    Also, I've been kind of busy building my new 3D printer so...

  • Sensor Recalibration

    TazwellJ05/25/2023 at 00:14 0 comments

    I am going to spend some time recalibrating the individual moisture sensors this weekend.  I noticed today that the lettuce was starting to wilt even though the sensor was reading over 50% moisture level.

  • ThingSpeak link

    TazwellJ05/22/2023 at 14:06 0 comments

    Added a link to the Public view of my ThingSpeak channel

    https://thingspeak.com/channels/2076247

  • Communication error update

    TazwellJ05/21/2023 at 18:07 0 comments

    Found an issue with the call to urequests that was causing a code crash.  Added an error trap so if it happens again, it just skips that upload and goes on with the program.  It's working as it missed an upload earlier today and recovered on the next one.

  • Future Plans

    TazwellJ05/20/2023 at 16:19 0 comments

    • Create schematic for main system
    • Design PCB for main system
    • Add more error trapping to code
    • Rewrite code to use uasyncio instead of _thread for more reliable multitasking
    • Add webserver and small DB to allow remote configuration of moisture thresholds for each plant as well as manual control of the pumps and valve
    • 3D print a custom case for the electronics
    • 3D print custom cases for the exposed parts of the Chirp sensors
    • Possibly add a battery pack, charger and small solar panel to make it run completely sustainably

  • Communication issue

    TazwellJ05/20/2023 at 15:52 0 comments

    Added logging so I can debug an issue where the system stops uploading to ThingSpeak.  The logfile should tell me if it's a code crash or a communication issue.

View all 7 project logs

Enjoy this project?

Share

Discussions

TazwellJ wrote 05/20/2023 at 15:05 point

Suggestions and recommendations are greatly welcomed.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates