Built to order

IoT Touchless Soap Dispenser with Level Alert

This project is a touchless automatic soap dispenser built on an ESP32: an IR proximity sensor detects a hand and a peristaltic pump dispenses a measured dose of liquid soap. A level sensor tracks the soap remaining, shown as a bar on a small OLED, and the ESP32 pushes low-level alerts and usage counts to a cloud dashboard over Wi-Fi. The build demonstrates sensor-actuator interfacing, dosing control and IoT telemetry in one compact product-style prototype. Suitable for B.E./B.Tech final-year projects in Electronics, Computer and IoT programs.

IoT Touchless Soap Dispenser with Level Alert — project thumbnail preview
More project photos (4)

The problem

Shared soap dispensers in washrooms are touched by hundreds of hands a day, which defeats the purpose of hand hygiene — and in hostels, labs and clinics, nobody notices the dispenser is empty until it matters. Manual pump bottles solve neither problem: they need contact, and refill depends on someone checking. Touchless dispensers exist commercially, but they are sealed black boxes with no refill warning. The useful engineering gap is a dispenser that dispenses without contact, meters its own soap level, and tells the facility staff before it runs dry. This project builds exactly that on an ESP32: IR hand detection, a peristaltic pump for positive-displacement dosing, level sensing with an on-device OLED bar, and Wi-Fi telemetry that logs each dispense and raises a low-level alert on the dashboard. Every subsystem is student-built and documented, so the report and viva can walk through sensing, actuation, dosing math and the IoT data path.

How it works

  1. The IR proximity sensor continuously watches the dispense zone; when a hand is detected within range, it signals the ESP32.
  2. The ESP32 runs the peristaltic pump for the configured dose duration, pushing a measured volume of soap through the nozzle tube.
  3. A level sensor measures the soap remaining in the reservoir; the ESP32 converts it to a percentage and renders a bar on the OLED.
  4. Each dispense increments a usage counter stored on the device.
  5. Over Wi-Fi, the ESP32 publishes the dispense event, current level and counter to the cloud dashboard at each event and on a periodic heartbeat.
  6. When the level falls below the low threshold, the device buzzes locally and the dashboard flags a refill alert.

Tech stack:

  • ESP32 development board (Wi-Fi + Bluetooth)
  • IR proximity sensor module (hand detection)
  • 12 V DC peristaltic pump with silicone tubing
  • Soap-level sensor (float/ultrasonic, per build)
  • 0.96-inch OLED display (level bar, status)
  • Cloud dashboard (Blynk/ThingSpeak class) for telemetry and alerts
  • Arduino IDE (C/C++ firmware)
  • 12 V adapter with buck converter + rechargeable battery pack
Parameter Value
Controller ESP32 dev board, Wi-Fi 802.11 b/g/n
Hand detection IR proximity sensor, design range approx. 5–10 cm (adjustable)
Dosing 12 V peristaltic pump; dose set by firmware duration, design approx. 1–3 mL per dispense
Level sensing Reservoir level sensor with OLED bar + low-level threshold
Alerts Local buzzer + cloud dashboard low-level flag
Telemetry Dispense events, level %, usage counter over Wi-Fi (MQTT/HTTP)
Reservoir Design approx. 500 mL translucent tank
Power 12 V DC adapter with buck converter; rechargeable battery backup

Project features

  • [Touchless IR dispensing] An IR proximity sensor detects a hand under the nozzle and triggers a dispense with no contact.
  • [Peristaltic pump dosing] A 12 V peristaltic pump gives positive-displacement metering, so each dispense delivers a repeatable dose and the soap path stays sealed.
  • [Configurable dose size] Dispense duration is adjustable in firmware, letting the student demonstrate small versus large dose settings.
  • [Soap-level sensing with OLED bar] A level sensor tracks the reservoir and the OLED shows a live level bar, so the device itself reports when it is running low.
  • [Low-level buzzer alert] When the level crosses the low threshold, a buzzer sounds at the unit in addition to the dashboard alert.
  • [IoT dashboard and alerts] The ESP32 publishes dispense events, level readings and low-level alerts over Wi-Fi to a cloud dashboard for remote monitoring.
  • [Usage counter] Every dispense is counted and timestamped, giving refill planning data on the dashboard.
  • [Battery-backed operation] A rechargeable battery pack keeps the unit running during power cuts; mains adapter charging included.

What is included

  • Working touchless soap dispenser prototype (ESP32, IR sensor, pump, level sensor, OLED, enclosure)
  • Complete firmware source code (dosing, level logic, Wi-Fi telemetry, alerts)
  • Circuit and wiring documentation
  • Cloud dashboard setup guide with alert configuration
  • Component list with ratings
  • Dose and level calibration procedure (buyer-run)
  • Project report PDF (hygiene background, system design, dosing method, IoT architecture, test procedure)
  • PPT presentation for final review
  • Viva Q&A preparation document (peristaltic pumping, IR sensing, MQTT/HTTP telemetry)
  • Setup and demonstration guide

Limitations & prerequisites

  • This is a student prototype, not a waterproof commercial dispenser; the electronics must be kept dry and it is not rated for outdoor or high-splash installation.
  • Dispensed dose is a design setting verified by the buyer's own calibration (measuring actual mL per dispense); the pump tube wears over time and dose drifts, which is documented as a maintenance point.
  • Cloud alerts and dashboard need Wi-Fi; without network the unit still dispenses and shows the level locally, but no remote alert is sent.
  • Level-sensor accuracy depends on the reservoir geometry and sensor mounting; it is an indicator, not a laboratory measurement.
  • Battery runtime varies with dispense frequency and Wi-Fi duty cycle.

Frequently Asked Questions

Which controller is used?

An ESP32 development board — it handles the IR trigger, pump timing, level sensing, OLED and Wi-Fi telemetry in one chip.

Does it work without Wi-Fi?

Yes, partially: dispensing, dose control, OLED level bar and the local buzzer all work offline. Only the cloud dashboard and remote low-level alerts need Wi-Fi.

How is the dose set?

Dispense duration is a firmware constant; the calibration procedure shows how to measure the actual mL per dispense and tune it. Design dose is approximately 1–3 mL.

What power supply is needed?

A 12 V DC adapter (included design) with a buck converter for logic, plus a rechargeable battery pack for backup during outages.

What are the main limitations?

Not waterproof — indoor use; dose needs buyer calibration and drifts as the pump tube wears; cloud features need Wi-Fi; level reading is an indicator.

Is this project suitable for a final-year project?

Yes — for Electronics, Computer and IoT programs. It demonstrates sensor-actuator interfacing, positive-displacement dosing, embedded UI and an end-to-end IoT telemetry path. Suitable for B.E./B.Tech final-year projects in Electronics, Computer and IoT programs.

Components & software requirements
  • ESP32 development board (Wi-Fi + Bluetooth)
  • IR proximity sensor module (hand detection)
  • 12 V DC peristaltic pump with silicone tubing
  • Soap-level sensor (float/ultrasonic, per build)
  • 0.96-inch OLED display (level bar, status)
  • Cloud dashboard (Blynk/ThingSpeak class) for telemetry and alerts
  • Arduino IDE (C/C++ firmware)
  • 12 V adapter with buck converter + rechargeable battery pack
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 abstract (PDF)

Related guides

All guides
Blueprint-style technical illustration of an ESP32 development board at the centre, with sensor nodes, data-flow arrows and a circuit-brain motif representing an AI agent reasoning and sending decisions back.Engineering students building IoT or embedded final-year projects who want to add local AI agent behaviour with ESP32, MQTT and a small language model.

AI Agents on ESP32: Agentic IoT Final-Year Projects

An agentic IoT system observes, reasons, acts, remembers and explains. On ESP32 that means a split architecture: the chip senses and acts while a small local model (Ollama on your laptop) reasons over MQTT — a full LLM needs gigabytes of RAM the chip doesn't have. This guide covers three working patterns (host-reasoned agent, on-device tinyML on ESP32-S3, and a hybrid of both), plus Wi-Fi CSI presence sensing, parts and budget for India, code shapes, and honest limits to state in your report.

Read guide
Technical illustration of three electronic control units linked by a twisted-pair CAN bus cable carrying signal pulses between them.Electronics, E&TC, IoT and robotics students who keep hearing “CAN bus” in EV, automotive and industrial project ideas and want to understand it properly before wiring anything

CAN Bus Basics for Students: How ECUs Communicate

CAN bus is the shared network that lets dozens of controllers in a car, EV or robot communicate over two wires. This guide explains message IDs, arbitration, the physical layer, frame structure, error handling and CAN FD, then walks through building a working two-node bench network with an ESP32 and a transceiver.

Read guide
Illustration of a quadcopter drone build showing labeled parts including frame, motors, propellers, ESCs, flight controller, and battery.B.E./B.Tech Electronics, Mechanical, and Computer Science students planning to build a quadcopter drone who need to select compatible parts without wasting money on mismatched

Drone Build: Parts Selection Guide

Picking drone parts that actually work together is a sizing problem, not a shopping problem. This guide walks the compatibility chain — frame to props to motors to ESCs to battery — with the thrust math, firmware choices, LiPo safety, and the bench-test order that prevents disasters.

Read guide
Get a quotation