I have to confess: I am a serial plant killer. The brief was to remix an existing Instructables project, and I picked an automatic plant-watering system. But automating the watering away felt like solving the wrong problem — my actual issue isn't a lack of water, it's a lack of noticing. So I redesigned the interaction: instead of a system that waters the plant for me, I built one that gives me an impossible-to-ignore visual cue to go water it myself.
I set myself a second constraint: build it entirely from upcycled materials, so the final object was something I'd actually want in my room, not a bare breadboard on a shelf. The wire leaf structure is hand-formed from dismantled wire coat hangers; the pot is cut cardboard and hot glue.
HOW IT WORKS
- An Arduino Leonardo reads a soil moisture sensor sitting in the real plant's pot.
- Readings are mapped against a threshold to drive 4 RGB LEDs embedded inside wire-frame "leaves," diffused through tissue-paper cutouts.
- The color mapping doubles as a slower time-signal — the LEDs shift gradually across a color range over the plant's actual watering cycle, instead of just snapping on and off, as a small way of connecting with how a plant might experience time differently than I do.
Arduino code: midterm_panic_final.ino
FEEDBACK & REFLECTION
The feedback I got was mostly about execution — people responded to the craft of the build itself. The most useful note: the interaction could be more dynamic if it responded to more than a single threshold. The Arduino Leonardo's limited PWM ports also constrained how much I could control the RGB color range — a real technical limitation worth naming honestly.
Where I want to take this next: I'm currently reading about bioelectric signals in plants and thinking about incorporating electrode readings to get a richer picture of what the plant is actually sensing, not just its soil moisture.