ESPHome Component for Culligan Water Softeners (CS Meter Soft) - Native BLE Integration

I’ve created a native ESPHome component for Culligan CS Meter Soft water softeners that communicates directly via Bluetooth Low Energy.

Features

  • Auto-Discovery - Automatically finds your water softener by Bluetooth name (no need to find the MAC address)
  • 30+ Sensors - Real-time flow, water usage, salt level, battery, cycle times, and lifetime statistics
  • 12 Adjustable Settings - Control hardness, regeneration schedule, cycle times, salt alerts directly from Home Assistant
  • Device Control - Buttons for immediate/scheduled regeneration, time sync, counter reset
  • Display Switch - Toggle the device display on/off
  • 8 Binary Sensors - Status flags (regenerating, bypass active, display off, etc.)

Sensors Include

  • Current flow rate (GPM)
  • Soft water remaining (gallons)
  • Daily water usage
  • Salt level (lbs and %)
  • Days until regeneration
  • Total gallons treated (lifetime)
  • Total regenerations
  • Battery level
  • And many more…

Quick Start

 esp32_ble_tracker:
    scan_parameters:
      active: true
    on_ble_advertise:
      - then: []  # Required for auto-discovery

  ble_client:
    - mac_address: "00:00:00:00:00:00"  # Auto-discovery will find it
      id: culligan_ble_client

  external_components:
    - source:
        type: git
        url: https://github.com/jtubb/esphome-culligan-water-softener
        ref: main
      components: [ culligan_water_softener ]

  culligan_water_softener:
    id: water_softener
    ble_client_id: culligan_ble_client
    auto_discover: true
    password: 1234  # Default password

  sensor:
    - platform: culligan_water_softener
      culligan_water_softener_id: water_softener
      current_flow:
        name: "Water Softener Flow"
      soft_water_remaining:
        name: "Soft Water Remaining"
      brine_level:
        name: "Salt Level"
      battery_level:
        name: "Battery"

Requirements

  • ESP32 (tested with ESP32-S3)
  • Culligan water softener with “CS_Meter_Soft” Bluetooth name
  • ESPHome with ESP-IDF framework

Links

3 Likes