Features:
- Monitor the enviroment
- Optionally control temperature with Wemo switches (edit the script to control other devices)
- Optionally report soil moisture on a per-plant basis (up to 8)
- E-mail alerts when enviroment exceeds alarm values
Requires:
- Ecowitt GW1000 WiFi gateway
- Linux, apache, MySQL, python3
Optional:
- Wemo switches for automation
- IP Webcam
- Ecowitt soil moisture sensors
See my full grow list.
As an Amazon Associate I earn from qualifying purchases.
- Prepare linux host with working MySQL and python3.
- Place files under the web root and make sure
.py
files execute as CGI - Create a database called
grow
and create tables withmysql> create database grow
andmysql grow < schema.mysql
. cp myconfig.sample myconfig.py
and edit cofiguration.- Configure Ecowitt GW1000 to post data to
ecowitt.py
(Use "WS View" app, go to "Weather Services -> Customized", enter server address,/ecowitt.py
as path, upload interval 60. - Copy
grow.service
to/etc/systemd/system
and edit to make thegrow-control.py
run at boot, and restart on crash.systemctl daemon-reload
once in place, thensystemctl enable grow
thenservice grow start
thenservice grow status
.
Wemo automation:
- Install ouimeaux
- Test command line:
wemo list
- Make sure device names match those in
grow-control.py
.
Webcam setup:
- Edit
get-image.bash
to fetch an image from your webcam so the python script can add to it. - Create a cronjob to run the above script every minute:
* * * * * /path/to/get-image.bash
- Run the script by hand to test it creates output as expected
- Fetch
out.jpg
via your webserver - Optionally speciy location (x,y coordinates with 0,0 at top left) of pots/soil sensors in config file