Building a self-watering plant using Micropython on a WiFi-enabled Arduino ESP8266

Speakers: Anele Makhaba & Mpho Mphego

Track: Teaching and Learning with Python

Type: Talk

Room: Video Stream 1

Time: Oct 08 (Fri): 15:45

Duration: 0:45

Having attended a make event earlier this year run by offerzen and Investec, in the event we built a self-watering plant using a WiFi-enabled Arduino ESP8266. The code and implementation were all in C and myself being accustomed to Python. I decided to migrate the Arduino project into MicroPython. This is a basic introduction to working with microcontrollers in Python. The automatic plant watering system runs on a WiFi-enabled Arduino ESP8266 running uPython, a capacitive soil moisture sensor reads the moisture content in the soil and uploads the data to ubidots which is a data collection, analysis, and visualization tool. A Slack message is sent to a specific channel when soil moisture reaches a threshold and a water pump notification is sent. The system operates 24/7. Every 15 minutes it checks sensors in the following order and acts based on this: - Soil Humidity sensors. If soil humidity is lower than 70% in a plant pot - the system activates a water pump for 3 seconds and, - Sends a slack notification - Upload data to ubidots.