Built to order

IoT Baby Cry Monitor with Sound Detection and Parent Mobile Alerts (ESP32)

This project builds an ESP32-based baby cry monitor that listens through a MAX9814 electret microphone module, detects sustained loud sound with an on-device envelope threshold, and pushes an alert to the parent's phone over Telegram or Blynk. A one-button room-noise calibration adapts the sensitivity to the nursery, and a live status page served by the ESP32 shows the sound envelope, the current threshold and the alert history. Suitable for B.E./B.Tech final-year projects in IoT & Embedded Systems, Electronics & Telecommunication and Computer Engineering.

IoT & Embedded ESP32 DevKitTelegram Bot APIArduino IDE · ESP32 core5 V USB powerHTML · CSS · JavaScriptBlynk IoT platformMAX9814 electret microphone moduleWi-Fi 802.11 b/g/nHybrid
IoT Baby Cry Monitor with Sound Detection and Parent Mobile Alerts (ESP32) — project thumbnail preview
More project photos (2)

The problem

New parents cannot stay in the nursery all day, and a sleeping baby's cries go unheard from another room or during the parents' own sleep. Commercial baby monitors solve this but are closed systems: fixed sensitivity, proprietary apps, and no way to adjust the detection behavior or explain how the sound trigger works. This project builds an open, low-cost alternative around the ESP32. A MAX9814 electret microphone module feeds amplified sound to the ESP32's ADC, firmware computes a rolling sound envelope and compares it against a calibrated threshold, and sustained loud sound triggers a push alert to the parent's phone through Telegram or Blynk. A one-button room-noise calibration adapts the sensitivity to each nursery, and a live status page served directly by the ESP32 shows the sound envelope, the current threshold and the alert history. The detection logic is deliberately simple — envelope threshold plus minimum-duration confirmation — so a student can genuinely explain every stage in the viva.

SYSTEM FLOW

6 components 6 connections

Live flow
Drag to explore
100%
sensorMic module

MAX9814 electret module with AGC; outputs roughly 2 Vpp audio on a 1.25 V bias to an ESP32 ADC pin.

Follow the working sequence

How it works

  1. The MAX9814 microphone module captures room audio; its built-in AGC amplifier outputs a roughly 2 Vpp signal on a 1.25 V bias (datasheet values), wired to an ESP32 ADC pin.
  2. Firmware samples the ADC approximately every 100 ms and computes a rolling sound envelope with a peak-hold decay.
  3. The envelope is compared against the alert threshold (default 55%, set by room-noise calibration or the manual slider).
  4. Sound staying above the threshold for a continuous duration of about 4 seconds — configurable — is classified as a cry event; short spikes below that duration are ignored.
  5. On a confirmed event, the ESP32 sends an HTTPS request to the Telegram Bot API or a Blynk event, pushing a timestamped alert to the parent's phone.
  6. Simultaneously the ESP32 serves the live status page on the local network: envelope graph with the threshold line, device status, and the alert history log.
  7. A mute command from the status page pauses only the push alerts for one hour; local detection and logging continue.

Tech stack:

  • ESP32 DevKit
  • MAX9814 electret microphone module
  • Arduino IDE · ESP32 core
  • Telegram Bot API
  • Blynk IoT platform
  • HTML · CSS · JavaScript (status page)
  • Wi-Fi 802.11 b/g/n
  • 5 V USB power
Parameter Value
Controller ESP32 DevKit (dual-core, integrated Wi-Fi)
Microphone MAX9814 electret module — 2.7–5.5 V supply, selectable 40/50/60 dB gain, approximately 2 Vpp output on 1.25 V bias (datasheet values)
Detection method Sound-envelope threshold plus minimum cry duration (no ML classifier in base build)
ADC sampling Envelope sampled approximately every 100 ms
Cry confirmation Approximately 4 s of continuous above-threshold sound (configurable; design target)
Alert latency Approximately under 5 s from confirmed event to push notification (design target, Wi-Fi dependent)
Connectivity Wi-Fi 802.11 b/g/n; internet needed for Telegram/Blynk push, not for local detection
Status page Served locally by the ESP32 on the home network
Power 5 V USB; approximately 170 mA typical with Wi-Fi active (expected)
Prototype form factor Approximately breadboard-scale 16 × 6 cm (prototype, not a sealed product)

Project features

  • [Sound-envelope detection] The MAX9814 microphone output is sampled by the ESP32 ADC roughly every 100 ms; firmware computes a rolling envelope and compares it against the configured threshold.
  • [Ambient-noise calibration] A single button samples five seconds of room noise and sets the alert threshold just above the measured room floor, so fans and air-conditioners don't trigger alerts.
  • [Tunable sensitivity] The threshold is adjustable from the live status page, so the parent can make the monitor more or less sensitive for different room setups.
  • [Parent mobile alerts] A confirmed cry event fires a push message to the parent's phone through the Telegram Bot API or a Blynk event, with the event timestamp.
  • [Live local status page] The ESP32 serves a web page on the home network showing the live sound envelope graph, the current threshold line, device status and recent alerts.
  • [Alert history log] Every alert is logged with a timestamp on the device and visible on the status page, so missed cries can be reviewed.
  • [Quiet-hours mute] Alerts can be muted for one hour from the status page while local monitoring continues — useful during feeding or when a parent is in the room.
  • [Cry vs noise heuristics — design target] An optional classification layer using simple on-device heuristics (envelope persistence plus zero-crossing-rate checks) is offered as a design target: it is built and tuned during the order's calibration procedure, not claimed from prior lab measurements.

What is included

  • Working prototype: ESP32 + MAX9814 microphone module on breadboard, labeled wiring
  • Complete firmware source code (Arduino IDE / ESP32 core)
  • Wiring diagram and exact component list
  • Room-noise calibration and sensitivity-tuning guide
  • Live status page demo files
  • Project report PDF matching this page
  • PPT presentation for final review
  • Viva Q&A preparation document (signal conditioning, ADC, threshold detection, Wi-Fi, push APIs)
  • Downloadable abstract PDF

Limitations & prerequisites

  • This is an academic monitoring prototype and is not a certified infant-safety device; it must never be the sole means of supervising a baby.
  • No detection accuracy is claimed — reliability depends on room acoustics and calibration; the buyer runs the calibration procedure in the actual nursery.
  • Loud non-cry sounds (television, door slams, traffic) can trigger false alerts; the approximately 4 s duration rule reduces but does not eliminate them.
  • Telegram/Blynk push alerts require working Wi-Fi and internet; the phone must be on the same network for the local status page.
  • Wi-Fi range is typical home range and degrades through thick walls; performance varies with the router.
  • The ESP32 ADC has limited resolution and noise, so very quiet environments need careful threshold tuning.
  • The prototype runs on 5 V USB power with no battery backup in the base build — backup power can be added as a customization.

Suitable for B.E./B.Tech final-year projects in IoT & Embedded Systems, Electronics & Telecommunication and Computer Engineering.

Frequently Asked Questions

Which controller and microphone are used?

An ESP32 DevKit board and a MAX9814 electret microphone amplifier module. The MAX9814's datasheet values are used throughout: 2.7–5.5 V supply, selectable 40/50/60 dB gain, and about 2 Vpp output on a 1.25 V DC bias — which the ESP32's ADC reads directly.

Does it work without internet?

Sound detection itself runs fully on the device and never needs the internet. The local status page works over home Wi-Fi without internet access. Only the Telegram/Blynk push alerts to the parent's phone need working internet.

How does it tell crying apart from background noise?

Through two honest mechanisms: a calibrated loudness threshold and a minimum cry duration (about 4 seconds), which filters out short spikes like doors closing. The optional cry-vs-noise heuristics layer is offered as a design target and is tuned during the buyer's calibration, never claimed from pre-existing test data.

What power supply is needed?

5 V over micro-USB — a standard phone charger or power bank. Typical draw is approximately 170 mA with Wi-Fi active (expected value).

Can the sensitivity be changed?

Yes. The one-button room-noise calibration sets the threshold automatically, and a slider on the status page adjusts it manually at any time.

Is this project suitable for a final-year project?

Yes — for IoT & Embedded Systems, Electronics & Telecommunication and Computer Engineering programs. It demonstrates analog signal conditioning, ADC sampling, threshold detection, Wi-Fi connectivity, push APIs and an embedded web server in one working build.

Components & software requirements
  • ESP32 DevKit
  • MAX9814 electret microphone module
  • Arduino IDE · ESP32 core
  • Telegram Bot API
  • Blynk IoT platform
  • HTML · CSS · JavaScript (status page)
  • Wi-Fi 802.11 b/g/n
  • 5 V USB power
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