Read soil state with the goal of tweet about it. Hopefully will keep me from killing my plants
Rearrange README
Fix markdown syntax


browse  log 



You can also use your local clone with git send-email.

#Smart Plant

Since I have an issue with watering plants on schedule and seedlings are less forgiving than larger plants, this may help me not kill my new seedlings.

Once twitter is connected, you can find the project at @andrews_plant.


#Board/chip selection

This program uses the ESP8266WiFi library and is thus not compatible with other microcontrollers. Additionally, PlatformIO is configured to use the WeMos D1 Mini board. If you are using a different ESP8266 board you may need to update platformio.ini to target the board you're using.

#Circuit configuration

#Required components
  • WeMos D1 Mini
  • DHT11 temperature/humidity sensor
  • KY70-US resistive soil moisture sensor
  • QAPASS 2/16 LCD panel
  • 220Ω resistor
  • Push button (optional)
#Circuit layout

circuit diagram


This project builds and ships using PlatformIO. You can find instructions on installing PlatformIO on their website.

#Wifi credentials

Before you can compile the program, you must add your wireless credentials to ./include/wifi_credentials.h. You find a stubbed version of the header at ./include/wifi_credentials.h.stub.


With wifi credentials in place, PlatformIO installed, and the board selected and connected, you can upload the binary to the board with pio run -t upload.


  • [X] Read soil moisture level
  • [X] Read temperature
  • [X] Display sensor readings on LCD
  • [X] Update README to include schematics
  • [ ] Send quippy tweets at me when I need to take care of my plants

#Long term TODOs:

  • [ ] Develop an auto irrigation system
  • [ ] Setup live stream of plants using a camera (may require more advanced microcontroller)

#Example breadboard setup

bread-boarded circuit