Ilove gardening but I hate having to constantly water plants. For years, I’ve longed for vegetables that would just water themselves.
As a technologist, I’ve often thought “this should be easy; just wire up a microcontroller, a pump and some sensors and make a self-watering plant system.”
As a technologist, I also know that it is never as easy as I think it is.
On and off for the past few years I’ve played around at this. Years ago I bought an Ecoduino kit to see if it worked. It did but then one day it just crashed viciously and wouldn’t restart. Plus, I wanted a bigger system (multiple plants vs. one) so I figured I’d roll my own.
I started making a self-water plant system using Micropython but I didn’t get it finished – and then we had to move for a while as our house got renovated and the Seeed Wio Terminal came out. I immediately coveted one (more on that later) and decided to redo the self-watering plant system using that.
I finally got it done. Some pictures and thoughts below; the code is open-source if you want more.
Before I go any further though, let me be clear about this. There are lots of commercial self-watering systems out there that work better than mine and are a lot cheaper (both in time and money). For me, this is a labor of love; I dig the tech and like to make things. The journey is the destination in building this.
![](http://lindsayrgwatt.com/blog/wp-content/uploads/2021/02/IMG_5169-1024x768.jpeg)
![](http://lindsayrgwatt.com/blog/wp-content/uploads/2021/02/IMG_5168-1024x768.jpeg)
![](http://lindsayrgwatt.com/blog/wp-content/uploads/2021/02/IMG_5170-1024x768.jpeg)
1. The Wio Terminal
In the top photo above, you can see the Wio Terminal. This thing is an incredible dev board; it dramatically simplified everything vs. when I tried to create the same system on an original Micropython board.
The combination of built-in display, at least 8 inputs (3 buttons on top, 4-way joystick + button on joystick) and two ports that are compatible with the Grove ecosystem (Seeed’s proprietary sensor hardware) dramatically speeds up your design time. I used only the built-in input and didn’t have to worry about wiring up any buttons. I used the Grove port to connect to a preconfigured relay that handled current, resistance, etc. for me. No worry about current, etc. It’s literally plug & play.
Then add in the screen. No need to worry about writing up output; just follow the YouTube tutorials and you’re off.
This is a really fun way to make; the feedback between making a change in your design and seeing the impact on the system is really quick because you don’t need to wire up much in order to make it work. I see myself buying many more of these in the future.
2. Making in 2021
There’s an old William Gibson quote:
The future is already here – it’s just not very evenly distributed.
Source
Working on this project at times felt like that. The Wio Terminal feels a bit like an artifact from the future. It simplified making things so much vs. every other dev board I’ve used before (I’m a rank amateur; maybe it wouldn’t be so impressive if I had more time for this stuff-but then again, I love that it lets me do this in my spare time and get to a working prototype instead of slogging through failed connections).
Add to this 3D printing: I needed brackets to mount the Wio Terminal and the water level sensor. I used TinkerCad on an iPad to design the brackets (Terminal, water level sensor). I then AirDropped it to my laptop and minutes later they were being printed on a Czech 3D printer. It feels insane that I can do CAD on an iPad and will into existence physical objects that have never existed before.
Now lets bring in that Shenzen ecosystem again. I realized partway through the project that a water level sensor would be a great simplifier (vs. using a water flow monitor); Seeed not only had one compatible with the Terminal, but it was at my house within 2-5 business days after flying across the world. I only have time to make things on weekends so Shenzhen is now the equivalent of driving to my local Fry’s (RIP – although it had been failing for years up here in Seattle).
Being at the intersection of these technologies, supply chains and ecosystems made me feel like I was on the vanguard of something new. You don’t have to squint too hard to see a future where it will be a lot easier to prototype anything you want.
I was reminder of another quote:
You can see the computer age everywhere but in the productivity statistics.
Robert Solow trolling before we knew what trolling was
We’re at the exact opposite now. The experience I had building this was literally watching time and space horizons shrink in front of me. I can now do in days what used to take months if it was even possible. I now truly get why so many people have been Messianic when describing the potential of the “Maker Movement.”
Update 4/4 – I added a new .stl file to the repo that replaces the block of wood holding the motor with a plastic bracket:
![](http://lindsayrgwatt.com/blog/wp-content/uploads/2021/04/IMG_5234-1024x768.jpeg)