Saravanan — Portfolio 2026

Skip to content
All products

Smart water motor control

AquaPilot

Run your water pump and watch your tank level from anywhere in India, over Wi-Fi, 4G or SMS.

Role
Product design and Flutter development (Android and iOS)
Status
Internal testing on Google Play · v1.0.0
Stack
Flutter, Dart, flutter_bloc (Cubit), MQTT over TLS, ESP32, Encrypted storage
AquaPilot dashboard with the motor running

Results

automated tests
242
ways to reach the motor: Wi-Fi, 4G and SMS
3
languages: English and Tamil
2

01Problem

In many Indian homes the water tank is on the roof and the motor is on the ground floor. People climb stairs to check the level, forget to switch the motor off, and waste water and electricity. Pumps burn out when they run dry or the voltage drops, and most smart switches stop working when the Wi-Fi goes down.

02Architecture

A Flutter app talks to an ESP32 motor box over MQTT with TLS, with a wireless tank sensor on the roof. Each motor box gets its own connection class and set of cubits, so switching motors cleanly resets everything. The broker keeps the last copy of each message, so rules keep working with the phone off and alerts are not lost while the app is closed.

03Key decision

Putting protection in the motor box rather than the phone. Dry run, low or high voltage, overload and maximum run time are all enforced even when the phone is off, and the motor stops safely if the tank sensor goes quiet. Wi-Fi comes first, 4G is the backup and SMS commands work with no internet at all.

04Result

Version 1.0.0 is in internal testing on Google Play, in English and Tamil, with 242 automated tests. Tests cover the safety rules: starting always asks first, stopping is instant, and emergency stop always gets through. A demo mode simulates the motor box, so the app can be tried without hardware.

Screens

AquaPilot motor controls
AquaPilot automation settings
AquaPilot run history
AquaPilot dashboard in Tamil