Important Note

The Video I am using "IS NOT MINE" it is the video of Rui Santos from RandomNerdTutorials. I am unable to create a video (screensaver not working). My project very similar. I instead have a Web Server, have more data about environmental variables because I get it from the openweather API. I credit his CSS code and the PHP code he provides (Web site), the rest is mine. I run my server on a LAMP (Linux Apache MySQL PHP) Database which causes it to be a little bit clunky. I did not have access to AWS so I couldn't use that.


My family and I enjoy gardening. Over the years, we have gotten busier and we neglect our tasks in the backyard such as watering the plants or covering them with cloth when it's too cold. Additionally, I am very interested in the long term effects of soil health after gardening for so many years and watching this video: Soil health is a legitimate concern for the 21st century. We are quickly running out of Arable land and we need cheap, easy ways to remedy that problem.

My project has the unique ability to be able to help home gardeners and industrial farmers keep their plants as healthy as possible (by notifying them when the temperature is too hot/cold or when the soil is too dry) and save them a lot of money in the long run. This can be done by checking if the soil is too wet and notifying the user if that is the case. Ideally this will also save money on home growers for buying compost and fertilizer (next section).

Long Term Goal

For most plants, Nitrogen is what allows them to grow healthier (for instance, most fertilizer is primarily nitrogen). According to a couple papers I have read, the rate at which moisture is lost from the soil is dependent on a couple of factors, most notably microbe content and nitrogen levels. Currently, a soil sample examination costs at least $1200 and go to upwards of $5000. That test is recommended once every few years and for a home grower, that is a substantial cost.

From this I got to thinking that maybe it would be possible to estimate microbial content and nitrogen content in the soil based on the rate at which moisture is lost from the water. So in the long run my idea was to graph all the variables I have collected to see if there is any correlation and determine if we can estimate important aspects of the soil and analyze trends over time. (i.e, if humidity is higher, soil loses content faster).

If it is possible to find such correlations, this will save Home Growers and Agricultural untold amounts of money in the long run.

Additionally, if the correlations from this project are possible, it will keep soil healthier if professionals/home-growers only fertilize when they are required to and it will also prevent agricultural runoff (a cause of climate change).

Education Aspect

In the future, lots of research (education) can be done with the dataset I receive from these sensors. I genuinely think you could make some interested discoveries in the long run, most notably the relation between soil moisture change rate and soil health.

What it does

Provides User instant access to information pertinent to the health of their plants and records data in a WebServer from which you can analyze trends. Very Useful for data collection in the long run and try to see if it is possible to estimate nitrogen and microbial content from moisture loss. Ensures Maximal Plant Health Records Long-Term Weather/Moisture Information to analyze trends in the long run Reminds User if they forget to water/shield the plants in specific circumstances.

How I built it

SQL database PHP, C++, etc. Hardware and bigger framework located in the slides.

Challenges we ran into

Never done databases, had lots of issues fixed it. In particular, I was having Major errors with SQL and it took me multiple hours to trouble shoot them. I also originally had an older version of Arduino IDE and that was causing my ESP32 to not perform correctly, because of that, I was unable to really work on it until 2 PM 1/16/2021 (After reinstalling IDE).

Accomplishments that we're proud of

I made a webserver and a website from scratch! I tried to change the CSS page but I am not proficient enough for that. I only used CSS, PHP and SQL for the first time today and I am super proud of how it came out.

What we learned

Better idea of how servers and websites work. How to debug hardware and how to streamline the development process.

What's next for SmartGarden

Make graphing capability stronger. Currently only maps against time. Make Website look better, currently using a CSS script I found online, modified it for my data but it can look better Email Bug(I am locked out of my Gmail account for sending too many emails) Have it run on Server not on my Network Have Graphs show up on my website as opposed to ThingSpeak Do more powerful computation on Matlab to see if I can determine any correlation between variables

Share this project: