Sometimes when we go away from home for a few days or are really busy the house plants (unfairly) suffer because they are not watered when they need it. This is my solution.
It’s a Smart Plant Pot which includes:
- Inbuilt water reservoir.
- A sensor to monitor the moisture level of the soil.
- A pump to pump water to the plant when required.
- A water level monitor in the water reservoir.
- A LED to let you know when everything is OK, or if the water reservoir is nearing empty.
All the electronics, pumps and water reservoir are contained inside the pot to keep it looking smart. Each pot (if you make more than one) can also be set to the needs of different types of plants. It has an Arduino Nano controlling everything and the cost of the components has been kept as low as possible.
Step 1: Video Tutorial
If you prefer videos to reading then please check out the video above. Otherwise keep on reading and I’ll step you through creating your own Smart Plant Pot one step at a time.
Step 2: Things You’ll Need
You are going to need a few things to build one of your own. Here is a list of the items along with links to where you can find them on Amazon.
- Arduino Nano: https://geni.us/ArduinoNanoV3 x1
- Mini submersible pump: https://geni.us/MiniPump x1
- 5mm tubing: https://geni.us/5mmTubing 5cm worth
- Transistor:https://geni.us/2npn2222 1x 2N2222
- Resistors (1k and 4.7k): https://geni.us/Ufa2s One of each
- Wire: https://geni.us/22AWGWire for connecting components together
- 3mm LED: https://geni.us/LEDs x1
- Water level sensor: https://geni.us/WaterLevelSensor x1
- Bolts: http://geni.us/NutsAndBolts M3 x 10mm x2
- Soil moisture sensor: https://geni.us/MoistureSensor x1
- Half Perma-proto board: https://geni.us/HalfPermaProto x1
- PLA Filament: https://geni.us/PLAFilament
Step 3: Print the 3D Printable Parts
The 3D printed parts will take some time to print so it’s a good place to start them while you are waiting for anything you’ve ordered to arrive.
You’ll find the CAD files available to download here: https://www.thingiverse.com/thing:3537287
I printed all mine in PLA at a layer height of 0.15mm. I printed the ‘outer pot’ with three perimeters and this ensured that it was water tight for me. Check your print is watertight before using it to ensure you don’t risk damaging any of your electronic components. If it fails you can try any of the following:
- Print it with more perimeters/walls
- Increase the flow rate of the extruder
- Treat the inside of the print with some kind of sealer
Step 4: Prepare the Electronics & Circuit Diagram
We can turn our attention to the electronics. You will need a few tools to help you assemble and solder the various electronic components for this project:
- Solder wire
- Soldering iron (I’m using this cool battery powered one I recently got: https://geni.us/SealeySolderingIron )
- Wire clippers
- Helping hands
Attached is a soldering diagram. If you prefer you can skip the following sections and follow the diagram yourself, though if you prefer I’ll step you through it component by component now.
Step 5: Solder Arduino to Proto Board
First we will solder the Arduino Nano to our Perma-Prota board. As we go though I will refer to the holes on the Perma-Prota board by their co-ordinates such as hole B7. The letters and numbers for the holes are written along the edges of the Perma-Proto board.
To position the Arduino Nano in the correct place put pin D12 on the Arduino though hole H7 on the prototype board. Then turn over the board and solder the pins in place.
Step 6: Add the Transistor and Resistors
The three legs of the transistor want to pass through the holes C24, 25 and 26 on the board. The flat face of the transistor wants to be facing towards the centre of the board. Once you have soldered this in place trim the excess lengths of leg from the other side with the wire cutters.
The 4.7 k ohm resistor (the colour bands go yellow, purple then red) goes through holes A25 and A28.
The 1k ohm resistor (brown, black then red bands) goes through holes J18 and J22.
Step 7: Prepare the LED and Connect to Board.
Solder a separate 7cm long wire to each of the LEDs legs. Once you have done this use some insulation tape or heat shrink to prevent the two legs and wires from making contact and shorting our circuit later.
Now the positive leg from the LED, that’s the longer of the two legs, needs to be soldered to hole J17 on the board. The negative is then soldered to hole I22.
Step 8: Prepare the Pump
Before we install and connect the pump we need to extend its wires. Add an additional 13cm onto both of the wires coming from the water pump. Again, add some insulation tape to the connections after you have soldered them together.
Step 9: Prepare Water Level Sensor
This time solder three 20cm wires to the three pins of the water level sensor.
Step 10: Connect Moisture Sensing Components Together
Attach a 10cm to the following pins on the moisture sensors module:
Then solder the wire from D0 to J12 on the Proto board, the ground wire to anywhere along the ground rail and finally the wire from VCC to hole C8.
Next solder two 25cm wires to the negative and positive pins on the other side of the sensors module.
Step 11: Add Additional Connections to the Proto Board
Use a short length of wire (green in the photos) to connect holes B26 to the ground rail and then another wire to connect our ground rail to the ground pin of the Arduino via hole A20.
We need one more wire to connect holes C28 and J7.
Step 12: Let’s Start Assembling Our Parts
Use some hot melt glue or similar to fix the water level sensor onto its fixing plate on the inside of the Outer Pot. Ensure that the top of the sensor is inline with the top of mounting plate.
Now feed the three wires from this sensor down through the hole you’ll find in the side of the column that rises up from the bottom of the Outer Pot. When they appear out the bottom you can pull them through. Now is also a great time to label them whilst we are certain of what they are connected to.
Whilst we have our glue to hand we should fix the LED into place by pushing it though its hole in the stand and gluing it there.
Step 13: Assemble the Water Pump
We can also thread the wires from our water pump through the same hole in the Outer Pot as we did for the water level sensor and then label the wires when they come out the other side.
Now take the 5cm of rubber tubing, attach it to the water pump and then the other end to underside of the Inner Pot.
We can then carefully slide the Inner Pot down into the Outer Pot. There is a thin slot for the wires to pass through, be careful that you don’t catch the wires when assembling these two parts.
Step 14: Add the Stand
Now we can thread all our labeled wires through the hole in the stand and then place it all on our worktop upside down. Use some hot melt glue to fix the pot onto the stand and keep it in a central position.
Next take the two wires coming from our moisture sensor and thread these down through the whole that runs all the way through our Smart Plant Pot in the other direction. These should pop out through the top of the column now instead of the small side hole we were utilising earlier.
Step 15: Some More Soldering
Now solder the wires from the water pump to holes B18 and B24.
The ground wire from the water sensor can be connected to anywhere along the ground rail. The positive lead is soldered to hole A8 and the sensor wire is connected to A13.
Step 16: Cable Management
Now glue the module for the soil moisture sensor to one of the interior wall of the stand as shown in the photo.
Using the two bolts we can wriggle the remaining wires into a more tidy arrangement underneath the board and then bolt it in place. Ensure that the end of the Arduino with the USB connection is facing the hole in the stand for the USB cable to be able to pass through.
Step 17: Pot Up a Plant!
Now we can add our plant. 🙂
You can be as creative as you want with your choice of plant and growing medium. Just be sure to keep the water outlet, inlet and wiring hole clear of any growing medium.
You can also decorate the top with something like small colourful gravel if you wanted to.