We’ve got 3 plants, all fairly close to each other, and I wanted to create an IoT project so that it could send an email notification, as well as a visual ID when each individual plant required some TLC. Having worked with Particle.io before, I knew that a Particle Photon would be the best way to set it up.


Hey guys Sam here from Core Electronics and today I wanted to share my recent project with you it is an IoT plant monitor. So plants are cool and fun to have around the house but if you're like me you always forget to water them and then they die. It's not good. So I built a little device using a Particle Photon which is able to monitor the soil moisture content of the plant and then email you when it needs watering or do nothing if it's all good, so I'll plug it in now and we'll take a look at how it goes. So I've got these three probes here, that we dip into our plant, so this one in there, grab this one, put him in there, this one that guy there do these screws up and what's going to happen is in a moment the-the Particle is going to power back on and when it wakes up it's going to check these soil values of all of my plants, and if they need watering then it is going to let me know with one of these LEDs, and then it's also going to send me an email reminding me that I need to water the plants which I think is pretty cool.

So you can see that nothing is happening on the Photon, and what it does is it will wake up check the sensors and if they're all good, if there's plenty of water in the soil, then it will just go back to sleep but if one of them is dry then it will light up the corresponding LED and as I said shoot you an email. So I'll unplug this sensor and this is your stimulating plant that has very very dry means a lot of water because these guys have just been watered and you can see now it's reset and it does that every 10 seconds, this LED is going to stay on for 10 seconds, so you get that visual notification which is pretty cool and then it's going to shoot through an email, so what's the time 10:28, delete that old one there all right let me go back to the inbox and I'll delete those so we've got a fresh slate, and I'll put this one back in and I will unplug this one so that when it resets. There's an LED inside of all on the Photon board inside of the case which you can see if it's a little darker all right so it's gone through its reset so we'll go to sleep for 10 seconds to help conserve battery life when it starts up it should detect that plant number 3 is dry there we go and you'll see that email come through in a moment it's using IFTTT or ift as the triggering, through the Particle channel which is really really neat and we should get that email come through in just a second and I also use some pull-up resistors so that it detects if a cable is unplugged so if you only want to use it with two plants or one plant you can do that it's not going to light up and send you that email every time just because the probe is unplugged, which yeah it works pretty well, so that email will come through in a second but I'm gonna take the lid off this guy, and we'll take a look at how I built it so you can follow along and build your own.

Unfortunately the joys of email services that there can be a little bit slow, so there we go it's come through, plant Two needs watering that was the previous notification, of course, it's designed for when you're out of the home so you won't be on your email constantly watching it, it gives you a time stamp and if we open up the email it says you know it turns out plant two needs a drink give it a water and it's just got some more data there from the recipe you can see here is the recipe on IFTTT, triggering with the particle channel plant one if it equals one that's just a function return result that's monitoring the result of these functions that I created sort of move these plants to the side, and we will take a look at what is going on under the lid.

All righty, so you can see the Photon's connecting to the cloud there after a power cycle and I've changed the sleep timer to 10 seconds so it's a bit more fun to watch in a video but normally you could set this to, because the soil moisture content in a plant is very slow changing event you would set this to only monitor every hour 6 hours even, so that it's you know you're going to get the most battery life out of it so you can see then none of the probes are connected so it powered on connected to the cloud went straight back to sleep because there's nothing to do, so it only monitors or alerts you when they're dry and go to sleep for 10 seconds there. So I'm just using some standoffs here all right and I'm not a 2400 milliamp hour lipo battery I designed this case for the DFRobot single-sided protoboard, fits perfectly there you just put some standoffs into the holes with some hot glue to make sure it's extra durable for Maker Fairs and the like and it just screws on there some more standoffs she put the lid on. My wife painted this guy and I think it looks pretty cool assuming a nut shut there yeah she'd done good, looks pretty awesome.

And this is the-the guts of it, i have taken the screws off we've got a Particle Photon there that's the brains that's a microcontroller Wi-Fi connect a microcontroller I've got an Adafruit power boost board here which is such a great product it just works so well and so simply it filters the regulates I should say the battery voltage from the lipo to a clean 5 volts to power the photon and then the power boost also handles low battery events and also charging via the second micro USB port here then I've just got a little I guess ad on board with the LEDs current limiting resistors on my JST sockets so that it's really easy to connect those cables in, I modified the original DFRobot cables which had for these soil moisture sensors which had female headers on them to be JST connectors but I used two different pin pictures just to make it very clear which one you know there can only go in one way into one cable so you can't connect them up backwards and so if we unplug that you can see the case and I just use yeah some single sided protoboard it's pretty simple wiring I like using that whole protoboard as a mounting plate for the project and other than that you could use a smaller battery or a bigger battery if you want there's space there for perhaps a 4400 milliamp hour but 2400 milliamp hour should last for I think I worked it out at a couple of years without needing a recharge based on a six-hour duty cycle for that and it works it works really really well I'm pretty happy with it and there's nothing fancy going on with the-the code you've just got some particle cloud functions so I've got a separate function for each event so plant one plant to plant three and then also low battery what that does is the power boost is going to have a low battery trigger pin which connects up to one of the interrupt pins or just a digital pin that can be interrupt enabled on the photon and when it receives that it checks that every time it powers through and if it detects low battery it shuts down it doesn't come out of deep sleep until that pin is lifted again which only happens on the power boost when the battery lipo voltage goes above the lower threshold by charging them, it's just super cool.

So it's not a lot of maintenance involved in this at all I'm just using some headers for the photon so you're not soldering directly to you know to your Wi-Fi chip you can repurpose it for other projects and apart from that it's just it's a fairly basic circuit and a fairly simple code; there's 123 lines of code which could probably be squished down again because I'm using separate functions for everything just to make it easy to see what's going on and to follow if you want to build your own you can see it's more of these emails coming through as we had it left on plant 3 plant 2 - they're all thirsty just go ahead and clear those and this is the if it's recipe so as I was talking about before if when plant one which is the function name the cloud function that we've got just here it monitors that function when it's call it monitors the return results I don't mind I was using this for a separate project neopixel tester, it should be called IoT plant monitor and it tests that and if it is equal to one saying the plant is dry and action needs to be taken and it will send an email to my chosen the email address with the following message, and that's all there is to it it's really really easy to create I guess internet or IoT based projects that do everything from email you know plant monitoring we created the IoT house and the IoT mailbox which operate on similar principles especially with the particle gear because it is so user-friendly and so easy to create IoT projects and applications with it so that is my plants monitoring project if you like it check it out on our site if your doing it somewhere else and also if you've built one yourself we'd love to see some pictures see what you did I've put the CAD, the STLs, for this enclosure that I printed out on the project page the schematic the wiring diagram the code it's all there so check it out and we'd like to see what you guys are doing with this project, so I'll see you next time guys and be sure to check out some of our other projects in the link below.



Please continue if you would like to leave feedback for any of these topics:

  • Website features/issues
  • Content errors/improvements
  • Missing products/categories
  • Product assignments to categories
  • Search results relevance

For all other inquiries (orders status, stock levels, etc), please contact our support team for quick assistance.

Note: click continue and a draft email will be opened to edit. If you don't have an email client on your device, then send a message via the chat icon on the bottom left of our website.

Makers love reviews as much as you do, please follow this link to review the products you have purchased.