Built to order

Water Tank Overflow Alarm Project with LoRa Remote Display

This project builds an alarm-first water-tank monitoring system with two LoRa-linked units: a solar-assisted tank node that reads float-switch water levels and a remote in-home display unit that shows tank level % and sounds full/empty alarms. The LoRa link carries level updates from the terrace tank to the receiver kept inside the house, so nobody climbs to the roof to check water. An optional relay can auto-cut the pump at full tank. Suitable for B.E./B.Tech final-year projects in Electronics, Electrical and IoT.

IoT & Embedded ESP32Arduino IDESX1278 LoRa Ra-02 · 433 MHz16×2 LCD · I2CMagnetic float switchesActive buzzer · LED alarm6 V solar panel · TP4056 · 186505 V relayHardware
Water Tank Overflow Alarm Project with LoRa Remote Display — project thumbnail preview
More project photos (2)

The problem

Overhead water tanks fill silently: someone switches on the motor, forgets it, and hundreds of litres spill over the terrace until a neighbour knocks. Common single-box "level indicator" projects solve only half of this — they display the level at the tank itself, which nobody watches, or they add an app that needs Wi-Fi on the terrace. This project takes the alarm-first view: the level sensor lives on the tank, but the information is delivered where the family actually is — a small indoor display unit in the kitchen or hallway that shows the tank level in percent and sounds an alarm the moment the tank is full or runs empty. An SX1278 LoRa radio link connects the two units at 433 MHz, needing no Wi-Fi, no internet and no phone app at the tank site. The tank node runs on a small solar panel with a battery backup, so it keeps reporting even through power cuts. Pump auto-cut via relay is available as an optional add-on, but the base project deliberately focuses on the one behaviour that matters daily: you hear the alarm before a single litre overflows.

SYSTEM FLOW

5 components 4 connections

Live flow
Drag to explore
100%
sensorFloat switches

Three magnetic float switches on a rod inside the tank sense the water level at empty, mid and full positions.

Follow the working sequence

How it works

  1. Three magnetic float switches on a mounting rod inside the tank detect the water level at empty, mid and full positions.
  2. The tank-node microcontroller (ESP32) reads the switch states on every wake cycle and converts them to a level percentage.
  3. The tank node powers up its SX1278 LoRa module, transmits the level packet at 433 MHz, and returns to deep sleep until the next interval.
  4. The indoor receiver's LoRa module picks up the packet (no pairing or internet needed) and passes it to its microcontroller over SPI.
  5. The receiver updates the 16×2 LCD with the tank level percent and the current alarm state.
  6. When a full or empty condition arrives, the receiver sounds its buzzer and flashes the alarm LED until the acknowledge button is pressed.
  7. If no packet arrives within the configured timeout, the display flags a link-loss warning instead of showing stale data.
  8. Optionally, a relay module at the tank node opens the pump circuit when the full condition is detected, stopping the motor automatically.

Tech stack:

  • ESP32 dev boards (tank node + receiver)
  • SX1278 Ra-02 LoRa modules (433 MHz, SPI)
  • Arduino IDE (firmware for both units)
  • 16×2 LCD with I2C backpack (remote display)
  • Magnetic float switches ×3 (level sensing)
  • 5 V active buzzer + alarm LED
  • 6 V solar panel + TP4056 + 18650 (tank-node power)
  • 5 V relay module (optional pump auto-cut)
Parameter Value
Radio module SX1278 Ra-02, 433 MHz ISM band (datasheet value)
TX power +20 dBm max (SX1278 datasheet value)
RX sensitivity Down to −148 dBm (SX1278 datasheet value)
Max link budget 168 dB (SX1278 datasheet value)
Practical range Design target: approx. 1–2 km line-of-sight with spring antennas; indoor-to-roof through floors varies and is not guaranteed
Level sensing 3 magnetic float switches (empty / mid / full) — design target ±1 step resolution
Display 16×2 character LCD, backlit, I2C interface
Tank-node power 6 V solar panel (approx. 1–2 W) + TP4056 charger + 18650 Li-ion cell
Transmit interval Configurable in firmware; design target: every 60 s wake + transmit
Battery backup Expected: overnight operation on 18650, varies with panel sizing and sunshine
Controller ESP32 dev board on each unit (3.3 V logic; LoRa modules wired via SPI)

Project features

  • [Alarm-first overflow design] The system is built around one job: sounding an alarm before water overflows. Full-tank and empty-tank alarms trigger on the indoor display unit, with a local backup buzzer at the tank node.
  • [Remote in-home display unit] A receiver kept inside the house shows the tank level in percent on a 16×2 LCD with a backlight, plus full/empty alarm states and an active buzzer with a mute/acknowledge button.
  • [Two-unit LoRa radio link] An SX1278 LoRa module on each unit carries level packets at 433 MHz from the terrace tank to the indoor receiver — no Wi-Fi, router or cloud account required.
  • [Solar-assisted low-power tank node] The tank node is powered by a small 6 V solar panel charging an 18650 cell through a TP4056 board, and sleeps between transmissions to keep night-time operation covered.
  • [Float-switch level sensing] Three magnetic float switches (empty, mid, full) mount on a rod inside the tank, giving a robust, calibration-free level reading that is not affected by foam or algae the way ultrasonic sensors can be.
  • [Configurable alarm thresholds and TX interval] Level alarm points and how often the tank node transmits are set in firmware, so behaviour can be tuned for different tank depths and pump schedules.
  • [Link-health indication] The remote unit shows a stale-data indicator when no packet has arrived within the expected window, so a dead radio link is visible instead of silently showing old levels.
  • [Optional pump auto-cut relay] A 5 V relay module can be added at the tank node to cut the pump contactor automatically at full level. This is an optional customization, not part of the base build.

What is included

  • Fully assembled and wired tank node (controller, LoRa module, float-switch rod, solar + battery power)
  • Fully assembled remote in-home display unit (controller, LoRa receiver, 16×2 LCD, buzzer, alarm LED, acknowledge button)
  • Firmware source code for both units with configuration notes
  • Circuit and wiring diagrams for both units
  • Component list with specifications
  • Assembly and installation guide for the tank and indoor units
  • Project report PDF (background, architecture, methodology, results, limitations)
  • PPT presentation for final review
  • Viva Q&A preparation document (LoRa, level sensing, power management, alarms)

Limitations & prerequisites

  • The base build alarms only — pump auto-cut needs the optional relay module; switching a mains pump contactor requires proper isolation and a qualified electrician.
  • Radio range is environment-dependent: thick concrete between the terrace and the indoor unit reduces link reliability; antenna placement and line-of-sight matter and should be tested on-site.
  • Float switches give 3 discrete levels (empty/mid/full), not continuous centimetre resolution — it is a level-band system, not a precision gauging instrument.
  • The 433 MHz band is shared and license-exempt for low-power devices in India (WPC rules) — it is not interference-proof, so the link-loss indicator is a necessary part of the design.
  • Tank-node battery backup depends on solar sizing and sunlight; several consecutive cloudy days can drain the cell, and the node then stops transmitting.
  • The prototype enclosure is basic weather shielding for the tank node, not an IP-rated industrial enclosure.
  • Remote unit and receiver are mains-powered indoors (USB adapter) — they are not battery-backed.

Frequently Asked Questions

How is this different from a normal water-level indicator?

Most indicators show the level at the tank, where nobody looks. This project is alarm-first: a LoRa radio link brings the level to a display unit kept inside the house, and the family hears a full/empty alarm without climbing to the terrace. The two-unit architecture is the core design decision.

Which controller is used?

An ESP32 dev board on each unit — one on the tank node (sensing + LoRa transmit + power management) and one on the indoor receiver (LoRa receive + LCD + alarm). They communicate only over the LoRa link.

Does it need Wi-Fi or internet?

No. The tank node and the indoor unit talk over a direct 433 MHz LoRa radio link, and the tank node runs on solar power. The system works through power cuts and in houses without broadband.

Can the pump be switched off automatically?

Yes, as an optional customization: a 5 V relay module is added at the tank node to open the pump circuit at full level. Mains wiring must be done by a qualified electrician with proper isolation.

What power does each unit need?

The tank node runs on a small solar panel charging an 18650 cell (no mains wiring on the terrace); the indoor receiver runs on a standard 5 V USB adapter.

Is this project suitable for a final-year project?

Yes — for Electronics, Electrical and IoT programs. It demonstrates sensor interfacing, wireless communication with LoRa, low-power design with solar charging, and two-node embedded system architecture.

Components & software requirements
  • ESP32 dev boards (tank node + receiver)
  • SX1278 Ra-02 LoRa modules (433 MHz, SPI)
  • Arduino IDE (firmware for both units)
  • 16×2 LCD with I2C backpack (remote display)
  • Magnetic float switches ×3 (level sensing)
  • 5 V active buzzer + alarm LED
  • 6 V solar panel + TP4056 + 18650 (tank-node power)
  • 5 V relay module (optional pump auto-cut)
Delivery information

Built-to-order project. Delivery timeline is shared after order confirmation based on current queue.

Support terms

Complete documentation, setup guide, and viva preparation included. Support for setup and explanation provided.

Download free synopsis (PDF)

Enter your name and email — the synopsis PDF downloads immediately. We may send occasional project updates; no spam, unsubscribe anytime.

Get a quotation