ESP32-S3 // 1D KALMAN GATE // SAINT-VENANT WAVE // SX1276 865MHZ LORA

STATIC WATER
ALARMS FAIL BEFORE
THE WAVE HITS.

Single-point threshold gauges trigger only after downstream embankments breach, while floating logs and storm debris cause rampant false alarms on raw ultrasonic sensors. AegisFlood is a 5-Node River Basin Hydrological Digital Twin and distributed early warning system combining ESP32-S3 1D Kalman filtering (|r_k| > 3.8σ debris rejection), 1D Saint-Venant kinematic wave forecasting (+15 to +120 min ahead), dynamic Dijkstra evacuation routing, and automatic 865 MHz LoRaWAN mesh failover.

HYDRO_MESH_BUS // 5-STATION RIVER BASIN STATUS● KALMAN: 10Hz LOCK
NODE_01 // DEVPRAYAG_GORGE[KM 0.0 · 830m ASL]
HEADWATER
Stage: 3.40m / Danger: 6.40mCAPACITY: 45%
NODE_02 // TAPOVAN_BARRAGE[KM 14.5 · 490m ASL]
SPILLWAY
Stage: 3.10m · Q: 295 m³/sCAPACITY: 44%
NODE_03 // RISHIKESH_BASIN[KM 28.0 · 340m ASL]
KALMAN_OK
Kalman Δ: 0.01m · SF9 LoRaCAPACITY: 48%
NODE_04 // HARIDWAR_PLAINS[KM 42.0 · 295m ASL]
ROUTING_OK
Dijkstra G(V,E): 4 Zones ClearCAPACITY: 52%
1D SAINT-VENANT CONTINUITY & EDGE KALMAN GAIN
∂A/∂t + ∂Q/∂x = q_L  |  K_k = P_k⁻ / (P_k⁻ + R_eff)  |  x̂_k = x̂_k⁻ + K_k(z_k - x̂_k⁻)
INNOVATION GATE: |z_k - x̂_k⁻| > 0.45m → R×65INJECT CLOUDBURST & DEBRIS LIVE →
58.0 KM
5-NODE RIVER BASIN MESH
Devprayag (830m) → Roorkee Delta (268m)
3.8σ GATE
1D KALMAN DEBRIS REJECTION
Blocks +2.0m floating timber sonar spikes
+120 MIN
KINEMATIC WAVE LEAD TIME
Manning Q + soil moisture runoff coupling
G(V, E)
DYNAMIC DIJKSTRA EVACUATION
Prunes submerged bridges (w = ∞) in <2ms
DISTRIBUTED EARLY WARNING ARCHITECTURE // 4-STAGE DETERMINISTIC PIPELINESENSE → KALMAN FILTER → KINEMATIC FORECAST → DIJKSTRA DISPATCH
S01 // SENSE10 Hz Sampling

MULTI-MODAL TRANSDUCER FUSION

Fuses 24 GHz FMCW radar / JSN-SR04T ultrasonic time-of-flight water stage (h = H_datum - c·t/2) with 0.2 mm tipping-bucket hyetograph interrupts and capacitive soil moisture probes.

S02 // FILTER|r_k| > 3.8σ → R×65

EDGE 1D KALMAN & INNOVATION GATE

Executes a continuous 1D Kalman state estimator on the ESP32-S3. Instantaneous acoustic spikes (>0.45 m/s) caused by floating timber or debris trigger covariance inflation, preventing false community sirens.

S03 // FORECAST+15m to +120m Horizon

KINEMATIC WAVE PROPAGATION

Couples Manning's open-channel discharge (Q = A·n⁻¹·R²/³·S¹/²) with 1D Saint-Venant kinematic wave celerity to project downstream flood crest arrival and ETA-to-Danger across all 5 river sectors.

S04 // DISPATCHw(e) = ∞ on Submerge

DIJKSTRA ROUTING & LORA/CAP ALERT

Prunes inundated low-lying bridges from the community road graph G(V,E), computes shortest high-ground shelter paths via Dijkstra's algorithm, and broadcasts ITU-T CAP v1.2 alerts over 4G-MQTT + 865 MHz LoRa mesh.

TELEMETRY & EVACUATION EXECUTION PIPELINE // 12-STEP CYCLEPHASE 1: EDGE SENSING & KALMAN [01–06] · PHASE 2: WAVE FORECAST & ROUTING [07–12]
STEP 01 // PHASE 1SENSE

Acoustic / Radar Time-of-Flight Burst

ESP32-S3 triggers a 10 µs pulse on GPIO4 and measures echo duration t_us on GPIO5, computing raw river stage h_raw = H_datum - (t_us / 5800).

SUBSYSTEM: JSN-SR04T / 24GHz Radar (GPIO4/5)
STEP 02 // PHASE 1SENSE

Tipping-Bucket Hyetograph Interrupt

Hardware ISR on GPIO19 counts 0.2 mm rainfall bucket tips over a rolling 60-second window to compute instantaneous precipitation intensity I (mm/hr).

SUBSYSTEM: Reed Switch ISR (GPIO19)
STEP 03 // PHASE 1SENSE

Soil Saturation & Runoff Coefficient

12-bit SAR ADC on GPIO34 samples volumetric soil moisture θ_v. When θ_v > 80%, infiltration drops and surface runoff coefficient C_r scales up to 1.6x.

SUBSYSTEM: Capacitive Probe (ADC1_CH6)
STEP 04 // PHASE 1FILTER

Kalman Prior State Prediction

Edge filter projects prior water stage x̂_k⁻ = x̂_{k-1} and increments error covariance P_k⁻ = P_{k-1} + Q (process variance Q = 0.008 m²).

SUBSYSTEM: ESP32-S3 FPU (32-bit Float)
STEP 05 // PHASE 1FILTER

Innovation Gate Debris Rejection

Computes innovation residual r_k = |z_k - x̂_k⁻|. If floating logs or foam cause r_k > 0.45 m (3.8σ), measurement noise R is dynamically scaled by 65x.

SUBSYSTEM: Edge Anomaly Gate (Z-Score)
STEP 06 // PHASE 1FILTER

Posterior Stage & Velocity Update

Updates Kalman gain K_k = P_k⁻ / (P_k⁻ + R_eff) and true stage x̂_k, then derives vertical rate-of-rise dh/dt (m/hr) from a 15-sample ring buffer.

SUBSYSTEM: SRAM Ring Buffer (15 Samples)
STEP 07 // PHASE 2FORECAST

Manning Open-Channel Discharge

Computes wetted cross-sectional area A(h), hydraulic radius R_h, flow velocity v = n⁻¹·R_h^(2/3)·S^(1/2), and volumetric discharge Q = A·v (m³/s).

SUBSYSTEM: Hydrological Solver Engine
STEP 08 // PHASE 2FORECAST

1D Saint-Venant Kinematic Wave Lag

Propagates upstream discharge surges (Node 01 → Node 05) using kinematic wave celerity c_k = (5/3)·v, scheduling downstream crest arrival times.

SUBSYSTEM: Kinematic Wave Queue
STEP 09 // PHASE 2FORECAST

Multi-Horizon Stage Projection

Synthesizes local dh/dt, upstream excess head, and queued wave energy into +15m, +30m, +60m, and +120m water level forecasts and ETA-to-Danger.

SUBSYSTEM: Multi-Horizon Forecaster
STEP 10 // PHASE 2DISPATCH

Cellular-to-LoRaWAN Mesh Failover

Transmits telemetry over 4G-LTE MQTT TLS. On cellular backhaul timeout, automatically switches to 865 MHz SX1276 LoRa P2P multi-hop mesh.

SUBSYSTEM: SX1276 Transceiver (SPI / 865MHz)
STEP 11 // PHASE 2DISPATCH

Dynamic Graph Edge Submergence Pruning

Evaluates road network G(V,E) against node water stages. Low-lying bridges with h_node ≥ H_submerge receive edge weight w(e) = ∞.

SUBSYSTEM: Dijkstra Graph Engine
STEP 12 // PHASE 2DISPATCH

CAP v1.2 & Telegram Community Broadcast

Dispatches structured alerts containing current stage, +60m forecast, and turn-by-turn high-ground NDRF shelter routing to community channels.

SUBSYSTEM: CAP v1.2 / Telegram Bot API
EDGE SENSING & TELECOM STACK // 6 SUBSYSTEMSINSPECT SCHEMATIC →
[MOD_01]ESP32-S3 Dual-Core Edge MCUGPIO4 (Trig), GPIO5 (Echo), GPIO19 (Rain ISR), GPIO34 (Soil ADC), SPI (LoRa)

1D Kalman Filtering, Sensor Fusion & Telemetry Framing

[MOD_02]JSN-SR04T / 24GHz Non-Contact Stage SensorVCC: 5V

Bridge-Mounted Vertical River Stage Ranging

[MOD_03]Semtech SX1276 865 MHz LoRaWAN TransceiverNSS: GPIO10

Disaster-Resilient P2P Mesh Backhaul (Cellular Failover)

[MOD_04]Tipping-Bucket Hyetograph & Soil Moisture ArrayRAIN_ISR: GPIO19 (Pull-Up)

Catchment Precipitation & Surface Runoff Coefficient Estimation

[MOD_05]Solar MPPT + 6000mAh LiFePO4 Power SubsystemSOLAR_IN: 18V 20W Panel

Autonomous Off-Grid Monsoon Operation

[MOD_06]Acoustic Siren Relay & CAP v1.2 GatewayRELAY_GATE: GPIO21 (Opto-Isolated)

Community Strobe/Siren Actuation & Mobile Push Dispatch

PRODUCTION ARTIFACTS // FIRMWARE & DIGITAL TWIN
// Flash to ESP32-S3 Edge Node (240 MHz Xtensa LX7 + FPU)
// JSN-SR04T/Radar: GPIO4/5 | Rain ISR: GPIO19 | SX1276 LoRa: SPI (865 MHz)
float stepEdgeKalman(float rawStageM, bool &anomalyRejected, float &residualM) {
  residualM = fabs(rawStageM - kf.x);
  anomalyRejected = (residualM > 0.45f); // 3.8σ Innovation Gate (Debris Reject)
  kf.p = kf.p + 0.008f;                  // Prior covariance update
  float effectiveR = anomalyRejected ? (0.080f * 65.0f) : 0.080f;
  kf.k = kf.p / (kf.p + effectiveR);
  kf.x = kf.x + kf.k * (rawStageM - kf.x);
  kf.p = (1.0f - kf.k) * kf.p;
  return kf.x;
}
ARCHITECTURE COMPARISON // REACTIVE GAUGES VS. DISTRIBUTED EDGE-AI DIGITAL TWINEVALUATION ACROSS 5 CRITICAL DIMENSIONS
ArchitectureSensing ModalityDebris / Glitch ImmunityForecast Lead TimeEvacuation RoutingStorm Backhaul
MECHANICAL FLOAT SWITCHSingle Binary ContactJAMS ON SILT / FLOATING LOGS0 MIN (REACTIVE ONLY)Static Siren OnlyWired / Local
RAW ULTRASONIC + BUZZERUnfiltered HC-SR04 / JSN-SR04TFALSE SIRENS ON SURFACE DEBRIS0 MIN (THRESHOLD ONLY)NoneWi-Fi (Fails in Storm)
CLOUD-ONLY 4G GAUGEPeriodic 15-Min PollingDelayed Moving Average10–15 MIN LAGFixed Map PDF4G Only (Blackout Prone)
★AEGISFLOOD (EDGE-KALMAN + MESH)5-Node Radar + Rain + Soil Fusion1D KALMAN 3.8σ INNOVATION GATE+15m TO +120m KINEMATIC WAVEDYNAMIC DIJKSTRA G(V,E)4G-MQTT + 865MHz LORA MESH