ESP32-based water level monitor using an ultrasonic distance sensor and an SSD1306 OLED display, designed for Home Assistant via ESPHome.
- ESP32 dev board
- HC-SR04 ultrasonic distance sensor (trigger: GPIO27, echo: GPIO26)
- SSD1306 128x32 I2C OLED display (SDA: GPIO21, SCL: GPIO22)
- Real-time distance measurement (updated every 2s)
- OLED display showing WiFi signal strength and current distance
- WiFi signal strength as both dB and percentage (diagnostic)
- OTA update support
- Fallback WiFi AP mode
-
Copy
secrets.yaml.exampletosecrets.yamland fill in your credentials:cp secrets.yaml.example secrets.yaml
-
Flash to your ESP32:
esphome run water_level_monitor.yaml
| ESP32 Pin | Component |
|---|---|
| GPIO27 | HC-SR04 Trigger |
| GPIO26 | HC-SR04 Echo |
| GPIO21 | SSD1306 SDA |
| GPIO22 | SSD1306 SCL |
MIT