BonsaiBuddy v1.0

I recently became the proud owner of a beautiful Rock Juniper bonsai. However, it requires daily watering and regular monitoring to ensure soil moisture content is maintained.

“Iroh” the 8 year-old rock juniper bonsai

BonsaiBuddy is an automated system for watering and monitoring house plants that I built using a raspberry pi, a small pump, a suite of sensors, and a Django webserver to control everything remotely.

A 5V relay controls a small pump submersed in the reservoir. A moisture sensor and light sensor are also connected to the pi via GPIO. The moisture sensor consists of two exposed conductors inserted into the soil at a fixed distance. We can measure the conductivity between them and use that to estimate the moisture content.

The pi runs a client application that checks in with the webserver periodically. Sensor data is uploaded to the server (with some crude authentication) and task information is downloaded. A task consists of a target plant, a time schedule, and a volume. The client keeps track of all active tasks and a daemon process wakes up whenever watering is scheduled, turning on the pump for the correct amount of time.

The web server also runs a basic Django web app that allows the user to see all plants, tasks, and sensors updating in real time.

The system is live! Check it out here: https://bonsai-buddy-controller.herokuapp.com/