📡 Connecting to Firebase...
BRIDGE VIEW
S1 S2 S3
EMPTY
S1 HIGH P1
S2 HIGH P2
S3 HIGH P3
LIVE DEVICE FEED
Connecting to Firebase...
📍 Firebase · asia-southeast1
🔑 Path: /sensors
Last update: —
SERIAL MONITOR · 115200 BAUD
FloodSense v1.0 — ESP32
SETUP GPIO configured OK
READY Polling every 10ms
mode: LIVE
HARDWARE CONNECTIONS

Full pinout — 3× PP horizontal float switches (active LOW) + 3× LEDs. Use INPUT_PULLUP on all sensor pins.

WIRING DIAGRAM
ESP32 GPIO 25 GPIO 26 GPIO 27 GPIO 21 GPIO 22 GPIO 23 GND FLOAT SWITCH S1 HIGH FLOAT SWITCH S2 MID FLOAT SWITCH S3 LOW LED1 HIGH LED2 MID LED3 LOW GND SENSORS (INPUT) LEDs (OUTPUT) MCU
SENSOR INPUTS
SENSORGPIOMODEPRIOPOS
Float Switch 125PULLUPHIGHTop
Float Switch 226PULLUPMIDMiddle
Float Switch 327PULLUPLOWBottom
LED OUTPUTS
LEDGPIOMODEPRIOTRIGGER
LED 1 — Red21OUTPUTHIGHS1 LOW
LED 2 — Orange22OUTPUTMIDS2 LOW
LED 3 — Green23OUTPUTLOWS3 LOW
⚠️
USE INPUT_PULLUP
Open float switches float the pin — causes false triggers. ESP32 internal pull-up is sufficient.
pinMode(sensor1,
 INPUT_PULLUP);
LED RESISTORS
Add 220Ω–330Ω in series with each LED. ESP32 GPIO max source is 12mA per pin.
GPIO→220Ω→LED→GND
🔁
ACTIVE LOW LOGIC
Float rises → closes to GND → pin reads LOW = triggered. S1 always checked first.
if(s1 == LOW) {
 // HIGH LEVEL
}