So I finally got around to building the little face display for my succulent that I'd been putting off since spring. A small round screen mounted in the front of the planter, wired to one of those ESP32 boards I had in a drawer, and it now shows a diferent expression depending on what the sensors are reading. Happy face when the soil is good, sad face when it's dry, sleepy eyes when the light drops in the evening.
The part that surprised me was the soil sensor. I'd used the cheap prong ones before and they corroded within a couple of months, so this time I went with a capacitive pad you stick in the soil instead. No metal eating itself, and the readings have been way more stable. I calibrated it by taking a number with the probe in dry soil and again after a proper watering, then split the difference in the code.
Getting the animations to run smoothly took most of Sunday. The screen would flicker untill I realized the display updates and the sensor readings were fighting over the same loop, so I split them onto seperate tasks. After that it ran clean. My kid now checks the plant's face every morning before school, which honestly was not the outcome I expected, but the plant is getting watered on time for once so I'll take it.