Connected Planter Management App with Flutter and ESP32-C3
A cross-platform Flutter app for Android and iOS that configures, monitors and alerts on an ESP32-C3 connected planter.

Overview
The client needed a mobile app to manage the settings of a connected planter built around an ESP32-C3 microcontroller: wake-up frequency, soil humidity and battery acquisition, alerting, push notifications, a global dashboard with history and a live camera view of the plant. The project was posted publicly, drew 42 competing offers, 4,024 views and 79 interactions — and Launchlanes was selected and delivered it. Although the brief asked for Android only, I built it in Flutter so the client got native Android and iOS apps from a single codebase at no extra cost. The app is designed to be shared by multiple users, each pairing their own ESP32-C3 device and camera so that every user sees the latest photo of their own plant directly in the mobile app.
The challenge
- A battery-powered ESP32-C3 sleeps most of the time, so the app had to read and write settings inside short, unpredictable connection windows.
- Sensor data (soil humidity, temperature, water and battery level) arrives irregularly and had to be stored and charted as reliable history.
- Users needed to be alerted the moment a threshold was crossed, even with the app closed.
- The original brief covered Android only, but the owner wanted to reach iOS users later without paying for a second build.
- The client planned to share the solution with multiple users, so each user needed a simple, independent way to connect their own ESP32 device and camera and see their own plant's latest photo.
What I built
- A single Flutter codebase shipping to both Google Play and the App Store, with a shared device-communication layer over WiFi.
- Device provisioning and settings screens: wake-up frequency, acquisition intervals and per-sensor thresholds written straight to the ESP32-C3.
- A global dashboard showing live soil humidity, temperature, water and battery level, with historical charts backed by a time-series store.
- Threshold-based alerting with background push notifications, so a dry planter or a low battery reaches the user immediately.
- Offline-tolerant sync that queues configuration changes and applies them the next time the device wakes.
- Multi-user device pairing: each user can connect their own ESP32-C3 and camera, and the latest plant photo automatically updates inside the mobile app.
Results
- Selected out of 42 competing freelance offers on a publicly posted project.
- Delivered Android and iOS apps for the price and timeline of an Android-only build.
- Owners can now change planter behaviour remotely instead of reflashing firmware.
- Watering and battery incidents are caught by push alerts rather than discovered late.
- Multiple users can each manage their own planter and camera, with fresh plant photos appearing automatically in the app.
Tech stack
This mobile app was built with Flutter. Explore our Flutter app development services.
GOT A SIMILAR PROJECT?
Mobile app, IoT dashboard or SaaS MVP — let's scope it together.
Book a free call