SmellsLikeML

Fitbud

12/15/17

Smart Home Automation, IoT, Make, Indoor Gardening

Home automation offers potential for greater security and convenience. It's an exciting time where powerful devices like the Raspberry Pi and Arduino have lowered the barrier to creating your own custom IoT device. Merging this interest with a lifelong passion for horticulture, I decided to build an IoT smart indoor gardening application called FitBud (repo).

If you aren't trying to redesign your home, a grow tent may be the most practical option. After determining the space, you will need to consider lighting. Here, I went with a ceramic metal halide for efficient HID lighting. Fans, ventilation, nutrients, pH adjustments, etc are all important considerations for replicating a natural environment in a closet.

After a couple weeks of progress, I began looking for ways to systematize the maintenance work. With suitable sensors, important metrics can be tracked to help evaluate your growing environment. This can be helpful in diagnosing or anticipating problems.

To start, you will need:

With the Raspberry Pi, the sensors above will enable you to measure humidity/temperature, luminosity measured in lux, and soil moisture respectively.

In addition to basics like measuring pH, these are important parameters to monitor a successful indoor garden. Once you can measure these quantities, simple utilities could include:

While low humidity or light intensity may be simple enough to diagnose after taking a measurement, subtle qualitative evaluation requires visual inspection. Since it is not always convenient to peek at your home garden, you can introduce a Raspberry Pi Camera and run a pi cam server.

FitBud snaps photos periodically to link visual information with the logged measurements. With SMS/Email notifications and slack bots for reporting and control, I am free to review the logs without babysitting.

The information garnered on day one helped to optimize lighting and to track nightly temperature/humidity fluctuations. Once these important parameters are brought under control, you can optimize the environment to suit your needs.

With the pi tucked into an unused vent near the top of the tent, it is protected from moisture with the camera well-positioned to view the canopy.

You can incorporate security features like >facial recognition to snap photos if the face peering into frame is not recognized.

Here is a wiring diagram for the device we've just described:

For software, you can set up a twilio account and register a number to send SMS notifications when temperature/humidity falls out of target range. Alternatively, you may prefer to configure Fitbud to receive email notifications. I've implemented both so that I can select SMS or email depending on the time of day.

I've also created a slackbot so that I can easily interact with a handful of chat commands to get a short report on the environmental statistics or view a current picture without opening the web server to the world. Sensor data is logged and accessible over the local network through a simple web server.

Finally, these repos were useful to read information from the sensors and control appliances through a smart plug:

The space of home automation is exciting and there are great ideas for inspiration on maker sites like Hackaday. After a couple tutorials, you find how easy it is to flesh out your ideas for custom IoT home automation.