Welcome to the MeterMonitor documentation. This guide provides comprehensive information about installing, configuring, and using the MeterMonitor Home Assistant addon for AI-powered analog water meter reading.
- Getting Started - Quick start guide and installation instructions
- Architecture - System architecture and design overview
- Installation - Detailed installation instructions for different deployment methods
- Configuration - Complete configuration reference
- User Guide - Step-by-step guide for using the web interface
- API Reference - Complete REST API documentation
- ESP32 Setup - Guide for setting up ESP32-CAM devices
- ROI Extractors - Region of Interest extraction methods
- Troubleshooting - Common issues and solutions
- Development - Guide for developers and contributors
- Database Schema - Database structure documentation
- Advanced Topics - Advanced configuration and customization
MeterMonitor is an AI-powered backend system for reading analog water meters via ESP32 cameras. Instead of running OCR on-device, this solution offloads image processing and digit recognition to a server, significantly reducing device power consumption while providing superior accuracy.
- AI-Based Detection: YOLOv11 for display region detection
- CNN Digit Recognition: Trained neural network for digit classification with error correction
- MQTT Integration: Seamless image ingestion from ESP32 devices
- Multiple Sources: Support for MQTT, Home Assistant cameras, and HTTP endpoints
- Template-Based ROI: Manual region selection using ORB feature matching
- FastAPI Backend: High-performance REST API with automatic documentation
- Vue 3 Frontend: Modern, responsive web interface
- Home Assistant Integration: Native addon with MQTT auto-discovery
- History Tracking: Comprehensive evaluation and reading history
- Flow Rate Validation: Configurable max flow rate checking with correction algorithms
- Home Assistant OS or Supervised
- Architecture:
amd64oraarch64(ARM) - Minimum 2GB RAM recommended
- MQTT broker (e.g., Mosquitto add-on)
- Python 3.12+
- 2GB+ RAM
- Linux, Windows, or macOS
- MQTT broker access
- Check the Troubleshooting Guide for common issues
- Review the API Reference for integration questions
- Open an issue on GitHub for bug reports or feature requests
This project was developed as a Master Project at Hochschule RheinMain.
This project is heavily inspired by:
- AI-on-the-edge-device
- Training dataset by haverland