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.
IR proximity module watching the dispense zone; detects a hand with no contact.
Follow the working sequence
How it works
- The IR proximity sensor continuously watches the dispense zone; when a hand is detected within range, it signals the ESP32.
- The ESP32 runs the peristaltic pump for the configured dose duration, pushing a measured volume of soap through the nozzle tube.
- A level sensor measures the soap remaining in the reservoir; the ESP32 converts it to a percentage and renders a bar on the OLED.
- Each dispense increments a usage counter stored on the device.
- 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.
- 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
Advantages
- Touchless IR dispensing: an IR proximity sensor detects a hand under the nozzle and triggers a dispense with no contact, removing a shared touchpoint.
- Peristaltic pump dosing: the 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.
- Live level monitoring: a level sensor tracks the reservoir, the OLED shows a level bar, a buzzer sounds at the unit when the level crosses the low threshold, and the ESP32 pushes low-level alerts to the cloud dashboard.
- Usage counter with timestamps: every dispense is counted and timestamped on the dashboard, giving refill-planning data.
- Battery-backed operation: a rechargeable battery pack keeps the unit running during power cuts, with mains adapter charging included.
Disadvantages
- 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 the dashboard need Wi-Fi: without network the unit still dispenses and shows the level locally, but no remote alert is sent.
- The level sensor is an indicator, not a laboratory measurement: its accuracy depends on the reservoir geometry and sensor mounting.
- Battery runtime varies with dispense frequency and Wi-Fi duty cycle.
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 free synopsis (PDF)
Enter your name and WhatsApp number — the synopsis PDF downloads immediately. We may send occasional project updates on WhatsApp; no spam.