Sump pit monitor with Alexa, text,and email alerts and remote monitoring
Posted: Wed May 06, 2026 12:53 am
Subject: ESP32 “Sump Monitor” Project
I wanted to share a current ESP32 project that has been under development and real-world testing.
The project is called “Sump Monitor” and is designed for monitoring sump pump operation and sump pit conditions using an ESP32-based web interface.
Sump-Monitor --web pages
The system uses:
• ESP32-S3 N16R8 module
• AsyncWebServer
• Real-time web monitoring
• Remote/Local network browser access
• Sensor-based sump monitoring
• Dynamic web page updates
• OTA update capability
The project currently only runs reliably on an ESP32-S3 N16R8 due to memory requirements. Standard ESP32 modules did not have enough available memory once the web interface, embedded resources, async server functions, and monitoring features were combined. Raspberry Pi 5 runs NVMe SSD, Tailscale, Docker containers for InFluxdb, Grafana, and Caddy.
One major goal of the project was building a responsive local monitoring interface without requiring cloud services or external subscriptions.
Current functions include:
• Sump activity monitoring
• Web-based status display
• Grafana graphs
• Real-time sensor updates
• Embedded HTML pages stored in program memory
• OTA firmware update support
• Async web server handling multiple requests
• Watchdog/recovery techniques for long-term stability
The project makes heavy use of embedded web resources and placeholder processing for dynamically updating displayed values.
Example concept:
String processor(const String& var)
{
if(var == "SUMPSTATE")
{
return sumpState;
}
if(var == "WATERLEVEL")
{
return String(waterLevel);
}
return String();
}
One issue encountered during development involved URL-to-filename processing for embedded resources and placeholder substitution inside HTML pages stored in memory. After debugging, the processor system now works reliably with the embedded page structure.
The project also uses:
• Software watchdog recovery
• ESP.restart() recovery methods
• Async HTTP handling
• Embedded HTML/CSS resources
• Remote/Local browser-based monitoring
This project continues my long-term interest in practical ESP32 monitoring systems and low-maintenance embedded web servers.
GitHub:
Tailscale, remote sump pit monitor MIT Licensed
Suggestions and technical feedback are always appreciated.
73’s,
William Lucid, AB9NQ / Tech500
I wanted to share a current ESP32 project that has been under development and real-world testing.
The project is called “Sump Monitor” and is designed for monitoring sump pump operation and sump pit conditions using an ESP32-based web interface.
Sump-Monitor --web pages
The system uses:
• ESP32-S3 N16R8 module
• AsyncWebServer
• Real-time web monitoring
• Remote/Local network browser access
• Sensor-based sump monitoring
• Dynamic web page updates
• OTA update capability
The project currently only runs reliably on an ESP32-S3 N16R8 due to memory requirements. Standard ESP32 modules did not have enough available memory once the web interface, embedded resources, async server functions, and monitoring features were combined. Raspberry Pi 5 runs NVMe SSD, Tailscale, Docker containers for InFluxdb, Grafana, and Caddy.
One major goal of the project was building a responsive local monitoring interface without requiring cloud services or external subscriptions.
Current functions include:
• Sump activity monitoring
• Web-based status display
• Grafana graphs
• Real-time sensor updates
• Embedded HTML pages stored in program memory
• OTA firmware update support
• Async web server handling multiple requests
• Watchdog/recovery techniques for long-term stability
The project makes heavy use of embedded web resources and placeholder processing for dynamically updating displayed values.
Example concept:
String processor(const String& var)
{
if(var == "SUMPSTATE")
{
return sumpState;
}
if(var == "WATERLEVEL")
{
return String(waterLevel);
}
return String();
}
One issue encountered during development involved URL-to-filename processing for embedded resources and placeholder substitution inside HTML pages stored in memory. After debugging, the processor system now works reliably with the embedded page structure.
The project also uses:
• Software watchdog recovery
• ESP.restart() recovery methods
• Async HTTP handling
• Embedded HTML/CSS resources
• Remote/Local browser-based monitoring
This project continues my long-term interest in practical ESP32 monitoring systems and low-maintenance embedded web servers.
GitHub:
Tailscale, remote sump pit monitor MIT Licensed
Suggestions and technical feedback are always appreciated.
73’s,
William Lucid, AB9NQ / Tech500