FROM TWIN TO HARDWARE

Device protocol

ESP32-S3 → JSON batch every 15 minutes. Three readings, original timestamps.

SIMULATED DATA

POST /api/ingest

Click “Prepare test payload” to create a timestamped, deterministic 3-reading batch.

ESP32-S3 · pin map

PeripheralPin assignment
ADS1115 I²C SDAGPIO 8
ADS1115 I²C SCLGPIO 9
pH probeADS A0
TDS / EC probeADS A1
Turbidity probeADS A2
DS18B20 temperatureGPIO 4
RGB status lampGPIO 18
Sample pump / valveGPIO 17 · MOSFET + flyback diode
BuzzerGPIO 16
microSD SPICS 10 / MOSI 11 / SCK 12 / MISO 13

Device-side detection, timestamped SD evidence and GSM alerts continue during Wi-Fi loss. The server validates shape and runs stateless sensor-fault and hard-bound checks. Stateful persistence decisions remain on the node.

EC25 = EC / (1 + 0.02 × (T − 25)); TDS = 0.5 × EC25. Flow is usage context. No drinking-safety conclusion has been made.