BWTHAF - BWT Home Assistant Integration
I’m excited to share my custom integration for BWT water softeners (tested with My Perla Optimum firmware 01.19).
What is BWTHAF?
BWTHAF (BWT Home Assistant Fetcher) is a custom component that connects to the BWT Mon Service cloud to fetch and expose your BWT water softener metrics directly in Home Assistant.
Features
Comprehensive Monitoring
- Real-time status: Online status, standby mode
- Water metrics: Daily consumption, softened water volume, consumption increments
- Hardware info: WiFi signal, network pressure, resin volume
- Water quality: Input/output hardness monitoring
- Regeneration tracking: Count and salt consumption
- Alerts: Low salt alarm, power outage detection
Smart Configuration
- Configurable polling intervals:
- Main parameters: 1 hour default (adjustable 1min - 24h)
- Consumption data: 5 minutes default (adjustable 30s - 1h)
- Auto-retry: Handles authentication and connection errors gracefully
- Config change detection: Automatically reconnects when credentials are updated
Exposed Entities
Binary Sensors
- Online status
- Standby/holiday mode
- Salt level alarm
- Power outage detection
Sensors
- Daily water consumption (L)
- Water consumption increment (L)
- Regeneration count
- Salt consumption (g)
- Salt per regeneration (g)
- Resin volume (L)
- Input/output hardness (°f)
- Network pressure (bar)
- WiFi signal strength (dBm)
- Softened water volume (L)
- Last update timestamp
Installation
- Download the integration from GitHub at the end of this topic
- Copy to your custom_components folder
- Restart Home Assistant
- Add via Config Flow (Settings → Devices & Services → Add Integration)
- Enter your BWT Mon Service credentials and device serial number
Example Configuration
username: “your.email@example_com”
password: “YourPassword”
serial_number: “SERIALNO”
interval_main: 3600 # 1 hour
interval_consumption: 300 # 5 minutes
How It Works
Daily Water Consumption: The sensor resets automatically at midnight. The increment sensor shows water used since the last measurement, allowing Home Assistant to track consumption accurately.
Salt Consumption: Automatically calculated using: Regenerations × Salt per regeneration
Error Handling:
- Authentication errors: Auto-retry every 5 minutes
- Network errors: Auto-retry every minute
- Config changes: Automatically detected and applied
Known Limitations
- Currently tested only with BWT My Perla Optimum firmware 01.19
- Requires active BWT Mon Service account
- Depends on BWT cloud availability
- BWT service updates consumption data approximately every 5 minutes
Feedback Welcome!
This is my first custom integration. I’m looking for:
- Feedback from other BWT model owners (Perla, AQA series, etc.), since it use the BWT cloud it could works too with few adjustements.
- Feature suggestions
- Bug reports
GitHub: GitHub - Maypeur/bwthaf
Issues: GitHub · Where software is built
Thanks to the Home Assistant community for the amazing platform! ![]()
![]()