Case Studies

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.

Connected Planter Management App with Flutter and ESP32-C3
Client
Private IoT product owner (France)
Industry
IoT / Smart Agriculture
Platform
Flutter · Android + iOS · ESP32-C3
Timeline
4 weeks

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

FlutterDartESP32-C3WiFiFirebase Cloud MessagingPush NotificationsAndroidiOSCamera Sync

GOT A SIMILAR PROJECT?

Mobile app, IoT dashboard or SaaS MVP — let's scope it together.

Book a free call