[Integration] BWT My Perla Optimum

:droplet: 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.

:star2: 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

:bar_chart: 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

:rocket: Installation

  1. Download the integration from GitHub at the end of this topic
  2. Copy to your custom_components folder
  3. Restart Home Assistant
  4. Add via Config Flow (Settings → Devices & Services → Add Integration)
  5. Enter your BWT Mon Service credentials and device serial number

:gear: Example Configuration

username: “your.email@example_com”
password: “YourPassword”
serial_number: “SERIALNO”
interval_main: 3600 # 1 hour
interval_consumption: 300 # 5 minutes

:memo: 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

:bug: 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

:handshake: 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! :house::sparkles:


1 Like