What is it
Plant Bot is a device that allows you to convert your favorite pot to play an active role in your plant caring duties. The PCB is designed to be powered over USB and contains all of the necessary functions, including the moisture sensor, reducing the need for extra wires. The result is a compact package that can enable plants to be looked after remotely and for much longer. I found this helpful with my office plants in today's world of working from home and when I am away from home for an extended period.
Before diving further, I have to thank JLCPCB for sponsoring this project. They have been a crucial part of the process by enabling me rapid prototype without compromising quality. All of the PCBAs related to this project were prototyped and assembled by them. I highly recommend them for the high quality, cost, and time-efficient, if you intend to design and build any boards of your own.
Leveraging existing open-source projects, the Plant Bot can be programmed using Micropython and Arduino. Power users can also use the ESP-IDF tool for maximum customization.
- Corrosion-resistant capacitive moisture sensor
- Easy mounting by simply embedding the moisture sensor stake into the pot of your choosing.
- Pump Driver
- String LED Control
- WiFi and Bluetooth Connectivity
- Environment Sensor (Temperature + Humidity)
Use case | Fully Automated Plant Care
The example code included in this repository demonstrates the device's use case and capability.
This program measures the soil moisture, environmental temperature, and humidity (SHT20) and performs several actions based on the readings received. The moisture level is tied to the color of the WS2812B LED, where it cycles from red (driest) to blue (dampest). This gives the user visual feedback as to what the soil moisture level is like. It also has a separate LED that indicates that the pump is being driven to replenish the soil water levels. Finally, as it is based on an ESP32, it has full WiFi and BLE connectivity, which I have used to send the readings to a Thingspeak channel. Here is a screenshot of the data collected.
- Microcontroller | ESP32-C3-MINI
- WiFi | 802.11b/g/n
- Bluetooth | BLE 5.0
- FLASH | 4MB
- Programming | USB over UART (CP2102)
- Environment Sensor | SHT20
- Temperature Accuracy | to within 0.3 °C
- Humidity Accuracy | to within 3%RH
- Interface | I²C
- Motor Driver | DRV8837CDSGR
- Peak Current | 1.2A
- Voltage | 5V (VUSB)
- Interface | GPIO
- Power | 700mA 3.3V LDO
- Mounting | FR-4 Stake into Soil