Occam’s Razor: Gardening Edition

While the impulse to solving problems in complex systems is often to grab a microcontroller and some sensors to automate the problem away, interfacing with the real world is often a lot more difficult than it appears. Measuring soil moisture, for example, seems like it would be an easy way of ensuring plants get the proper amount of water, but soil is a challenging environment for electronics and this solution often causes more problems than it solves. [Kevin] noticed this problem with soil moisture sensors and set about solving this problem with a much simpler, though indirect, method of monitoring his plants electronically.

Rather than relying on soil conductivity for testing soil moisture levels, he has developed an alternate method of determining if the plants need to be watered simply by continuously weighing them. The hypothesis that he had was that a plant that needs water will weigh less as the available water respirates out of the plant or evaporates from the soil. This means that using a reliable sensor like a load cell to measure weight rather than an unreliable one like a soil moisture sensor will result in more reliable data he can use to automate his plants’ watering.

[Kevin]’s build is based around an ESP32 and a commercially-available load cell which are all built into the base of the plant’s pot. The design hides all of the electronics in a pleasant enclosure and is able to communicate relevant info wirelessly as well. The real story here, however, isn’t a novel use of an ESP32 chip, but rather out-of-the-box problem solving by using an atypical sensor to solve this problem. That’s not to say that you can’t ever use other sensors to directly monitor your garden and automate its health, though.

The Internet Of Christmas Tree Watering

There’s nothing quite like a real Christmas tree, but as anyone who’s had one will know there’s also nothing like the quantity of needles that a real tree can shed when it runs short of water. It’s a problem [RK] has tackled, with a Christmas tree water level monitor that has integration with Adafruit’s cloud service to give a handy phone notification when more watering is required.

The real interest in this project lies in the sensor development path. There are multiple ways of water level sensing from floats and switches through resistive and light scattering techniques, but he’s taken the brave step of using a capacitive approach. Water can be used as a dielectric between two parallel metal plates, and the level of the water varies the capacitance. Sadly the water from your tap is also a pretty good conductor, so the first attempt at a capacitive sensor was not effective. This was remedied with a polythene “sock” for each electrode constructed with the help of a heat sealer. The measurement circuit was simply a capacitive divider fed with a square wave, from which an Adafruit Huzzah board could easily derive an amplitude reading that was proportional to the water level. The board then sends its readings to Adafruit.io, from which a message can be sent to a Slack channel with the notification enabled. All in all a very handy solution.

Plant care is a long-running theme in Hackaday projects, but not all of them need a microcontroller.

Micro:bit Put On Plant Minding Duty

The BBC has a long history of supporting technology education in schools. The BBC Micro introduced a whole generation of students to computers, and more recently the Micro:bit is teaching today’s children about embedded systems. [Michael Klements] happens to be a grown adult, but has whipped up a project using the little board to build an automatic plant watering system.

Rather than a simple timer-based system, [Michael’s] build measures soil moisture using a capacitive sensor. This has the benefit of not needing to be in direct contact with the soil as resistive sensors do, and thus the sensor can be built in a fashion that minimises corrosion. The Micro:bit reads this sensor using an analog input, and displays the moisture level using its inbuilt LED matrix as a graph. Once levels dip below a set threshold, a pump is activated to deliver water to the plant until the soil is suitably moist again.

It’s a simple project, but one that would be a great way to teach students about interfacing with pumps and sensors, as well as the basics of control systems. [Michael] also notes that further work could involve interfacing multiple Micro:bits using their onboard wireless hardware. We’ve thus far seen the Micro:bit used for everything from handheld gaming to gumball delivery. Video after the break.

Continue reading “Micro:bit Put On Plant Minding Duty”

Irrigation Controller Uses Google Calendar To Make Things Easy

Irrigation controllers have been around for a long time, often using similar hardware inside that would be familiar to the average maker. However, many of the products on the shelf at your local hardware store can be quite expensive for what amounts to a microcontroller, display, and relay board. [oscillatory] had such a rig, but wanted to bring it into the 21st century, IOT style.

The existing Holman irrigation system consisted of a control box, hooked up to four solenoid valves controlled by relays. [oscillatory] decided that replacing this with something fancier would thus be straightforward. A relay board packing an ESP8266 was sourced, and flashed with the Tasmota firmware. This was then hooked up to run off the Holman’s 24 VAC supply via a CCTV power supply, allowing the new controller to be run in parallel with the existing hardware, just in case. Scheduling is then controlled by Google Calendar, in concert with Home Assistant.

[oscillatory] now has a watering system that can be controlled over the web, and without the need to install any custom apps. Simply creating a calendar entry is enough for the system to spring into action. We’ve seen others use a similar approach, too.  It’s a great example of using off-the-shelf parts to whip up a useful custom home automation setup!

Battery-Powered Watering Timer Converted To Solar On The Cheap

Watering the garden or the lawn is one of those springtime chores that is way more appealing early in the season than later. As the growing season grinds along, a chore that seemed life-giving and satisfying becomes, well, just another chore, and plants often suffer for it.

Automating the watering task can be as simple as buying a little electronic timer valve that turns on the flow at the appointed times. [A1ronzo] converted his water hose timer to solar power. Most such timers are very similar, with a solenoid-operated pilot valve in line with the water supply and an electronic timer of some sort. The whole thing is quite capable of running on a pair of AA batteries, but rather than wasting money on new batteries several times a season, he slipped a LiPo pack and a charge controller into the battery case slot and connected a small solar panel to the top of the controller.

The LiPo is a nominal 3.7-volt pack, so he did a little testing to make sure the timer would be OK with the higher voltage. The solar panel sits on top of the case, and the whole thing should last for years. And bonus points for never having to replace a timer that you put away at the end of the season with batteries still in it, only to have them leak. Ask us how we know.

Like the best of hacks, this one is quick, easy and cheap — $15 in parts, aside from the timer. There are more complicated irrigation solutions, of course, one of which even won the Hackaday Prize once upon a time. But this one has us ordering parts to build our own right now.

Google Calendar Interface For Your Internet Of Lawns

If you live somewhere where summers are hot and dry, you can instantly tell which homes don’t have automatic sprinklers installed. Or they may have them installed, but like the blinking “12:00” on that VCR of yore, the owners may not have mastered the art of programming the controller. To be fair, the UI on most residential irrigation controllers is a bit wanting, which is the rationale behind letting Google Calendar tell your sprinklers when it’s time to water.

Granted, someone who is mystified by setting a digital clock is not likely to pull off [ClemRz]’s build. It’s still pretty simple stuff, though, centered around an ESP8266 as it is. And calling the result an “irrigation system” is a little bit of a stretch, given that it could only support a single zone with a solenoid valve harvested from a defunct sprinkler timer. But as a proof-of-concept, or to water a small area, it hits all the marks. The ESP8266 drives the latching solenoid valve through an H-bridge chip after reading your Google Calendar and looking for upcoming events to open or close the valve. The Google Script and the ESP8266 code default to failsafe so that a mistake doesn’t leave the valve open and run up your water bill or drain your well.

It’s easy to see how this can be expanded to control a multi-zone irrigation system and support a smartphone UI for instant control of the valves. Overrides based on weather forecasts would be a nice feature too. Or you could just read the soil moisture levels directly with backscatter sensors.

Irrighino, An Arduino Yun Based Watering System

There are many different ways to keep your plants watered on a schedule. [Luca Dentella] just created a new one by building the irrighino watering system. He used standard off the shelf, hardware to keep it simple. Irrighino is a complete watering system based on the Arduino Yun, featuring a user friendly AJAX interface. This allows scheduling in a manner similar to creating appointments in Outlook. It’s also possible to manually control the various water solenoids. The code is fully customizable and open source, with code available from [Luca’s] github repository. The web interface is divided in to three tabs – “runtime” for manual control, “setup” to configure the scheduling, and “events” to view system logs.

The Arduino Yun activates solenoid valves via a relay shield. A switch panel has indicator Status LED’s and three position switches. These allow the outputs to be switched off or on manually, or controlled via the Yun when in auto mode. [Luca] describes how to read three states of the switch (On-Off-On) when connected to a single analog input of the Arduino. He’s also got another tutorial describing how to connect a USB WiFi adapter to the Yun. This is handy since the Yun is mounted inside an enclosure where the signal strength is very weak. While the Yun has on-board WiFi, there is no possibility to attach an external antenna directly to the test SMA socket.

One interesting part is the commercial rain sensor. It’s a switch surrounded by a spongy material. When this material absorbs rain water, it begins to expand and triggers the switch. The Arduino sees the sensor as a simple digital input.

Check a short demo of his system in the video after the break.

Continue reading “Irrighino, An Arduino Yun Based Watering System”