Arduino Garden Controller

Justin Kufro

Video

The Rationale & Goals

The author of the ‘garduino’ is a civil engineer and electrical hobbyist that also runs his own YouTube channel, Practical Engineering. His motivation for creating this project was to relieve himself from the high-cost of fresh herbs at the supermarket. The ultimate goal was to grow fresh basil, cilantro, et cetera all in his own backyard garden. Thus freeing him from ever having to buy them from the supermarket again. There were a few sub-goals of this project as well: collect as much data about the garden as possible, and make cool graphs with that data. One important note is that the author states the time cost of creating the garden not a factor because of the enjoyment he gets from creating the system.

The Mechanism & System

The system has the functional requirements of having to be able to read the state of the world through sensors, log the data, and water the garden automatically (as well as cyclically). When describing his sensor suite, the author emphasizes that “you get what you pay for”, which he bought some of the best sensors he could find. This means that there is also the quality requirement that the garduino must be robust enough to last an extended amount of time.

There are three analog sensors and one digital sensor used in the project. The analog sensors are the photo-resistorsoil moisture sensor and the soil temperature sensor. The digital sensor is the air temperature relative humidity  sensor. A data logging arduino shield is also used to log the data that all of the sensors report.

The garduino program checks the soil water level once every evening to see if the garden needs to be watered. To actually perform the watering, the garduino controls a solenoid valve connected to a soaker-hose. Cyclical watering strategies like this one are actually better for plants than just having them constantly watered all of the time.

The author was even kind enough to post his project’s code on github.

Conclusion

This is an interesting project because everyone can understand how to operate a garden, and the inputs and outputs of one are extremely simple – garden needs water -> turn on water. The author reached all of his stated goals of having a reliable automatic garden, lots of data, and cool graphs using the data. A final statement reminds you that this project was for fun as much as it was for functionality, “no one’s hobby is to buy an irrigation controller off the shelf of a hardware store.”

Here is just one of the cool graphs: