Image Gallery

Click on an image to read more about it.

Video Demonstration

How the Project Started

This project started as an assignment for a course at York University called Computational Thinking Through Mechatronics. Our final project in the course was to build a physical system that automates plant watering.

To do this, we used an Arduino-compatible board with a moisture sensor, a water pump, a MOSFET switch, and some other small components. We used C++ to program the board and we used MATLAB and Java to control the board from an external computer.

Essentially, the moisture sensor detects when the soil is dry, and the pump is used to water the plant when that occurs. This was controlled primarily through MATLAB and Java in an external computer, where we could also display data about soil measurements.

Extending the Project

After I finished the course, I realized that the external computer was not necessary for the basic soil monitoring and plant watering functionality. So, I decided to rewrite the C++ program on the board to handle this entirely, without any external computer running MATLAB or Java.

I also added functionality where information about the state of the soil is displayed on an OLED screen on the board. This acts as a substitute for the external computer's display of data.

×