Vistapool
The Vistapool integration connects Home Assistant to Vistapool-compatible pool controllers, including AquaRite, Vistapool, Sugar Valley, Poolwatch, Kripsol, and Dagen devices.
It communicates with the official Vistapool cloud API using real-time push updates (no polling), giving you instant visibility and control over your pool equipment.
Use case
Vistapool turns your pool controller into a live source of data and a remote that you can tie into the rest of your home. Once set up, you can keep an eye on water chemistry, get notified when something needs attention, and automate routine tasks. Typical things you can do with it:
- Watch water temperature, pH, ORP (redox), and chlorine production from a dashboard.
- Get a notification when pH or chlorine drift outside the healthy range.
- Cycle the pool light through its built-in color shows from any automation.
- Combine pool state with the rest of your home, such as turning off the filtration pump while a high-load appliance is running.
When your pool controller’s Wi-Fi module joins your network, Home Assistant detects it automatically and offers to set up the integration for you. You only need to enter your Vistapool cloud account credentials to finish.
Configuration
To add the Vistapool hub to your Home Assistant instance, use this My button:
Vistapool can be auto-discovered by Home Assistant. If an instance was found, it will be shown as Discovered. You can then set it up right away.
Manual configuration steps
If it wasn’t discovered automatically, don’t worry! You can set up a manual integration entry:
-
Browse to your Home Assistant instance.
-
In the bottom right corner, select the
Add Integration button. -
From the list, select Vistapool.
-
Follow the instructions on screen to complete the setup.
Prerequisites
- A supported Vistapool-compatible pool controller
- A Wi-Fi module connected to the internet
- The controller must already be linked to your Vistapool cloud account
Supported devices
Any pool controller compatible with the Vistapool cloud platform, including:
- AquaRite
- Vistapool
- Sugar Valley
- Poolwatch
- Kripsol
- Dagen
Supported functionality
The Vistapool integration provides the following entities.
Buttons
If your controller drives a multi-color LED light fixture, the integration exposes a one-shot button to cycle through the available colors from Home Assistant.
- LED next color: advance the LED fixture to its next color. The integration briefly toggles the pool light off and back on (or just turns it on if it was off). The physical fixture interprets the power cycle as the color-advance signal, just as the Next button under LED Color does in the Vistapool app’s Illumination screen. Available only if your controller reports an LED fixture.
Examples
The following automations show how you can wire pool state into the rest of your home. Replace the entity IDs with the ones your controller exposes.
Notify when chlorine production drops, which usually means the salt level or cell needs attention:
alias: "Pool: low chlorine production"
triggers:
- trigger: numeric_state
entity_id: sensor.my_pool_electrolysis
below: 5
for:
minutes: 30
actions:
- action: notify.persistent_notification
data:
title: "Pool chlorine low"
message: "The salt cell is producing less than 5 gr/h. Check salt level or clean the cell."
Notify when pH drifts outside the healthy range:
alias: "Pool: pH out of range"
triggers:
- trigger: numeric_state
entity_id: sensor.my_pool_ph
below: 7.0
- trigger: numeric_state
entity_id: sensor.my_pool_ph
above: 7.6
actions:
- action: notify.persistent_notification
data:
title: "Pool pH out of range"
message: "pH is {{ states('sensor.my_pool_ph') }}. Healthy range is 7.0 to 7.6."
Cycle the pool light to the next color at sunset every evening:
alias: "Pool: advance LED color at sunset"
triggers:
- trigger: sun
event: sunset
actions:
- action: button.press
target:
entity_id: button.my_pool_led_next_color
Sensors
The integration provides the following sensors:
- Water temperature: current pool water temperature
- pH: current pH level (if pH module installed)
- ORP / Rx: redox potential in mV (if Rx module installed)
- Chlorine (Cl): chlorine level (if Cl module installed)
- CD: conductivity level (if CD module installed)
- UV: UV module reading (if UV module installed)
- Electrolysis / Hydrolysis: current production level in gr/h
- Filtration intel time: daily runtime in Intel mode
- Wi-Fi signal strength: controller RSSI (diagnostic, disabled by default)
Binary sensors
The integration provides the following binary sensors, grouped by what they report.
State of pool equipment
- Filtration: whether the filtration pump is running
- Backwash: whether a backwash cycle is in progress
- Heating: whether the heating relay is on
- pH acid pump: whether the acid dosing pump is currently active (if pH module installed)
- pH base pump: whether the base dosing pump is currently active (if pH module installed)
- Chlorine pump: whether the chlorine dosing pump is currently active (if chlorine module installed)
- Redox pump: whether the redox dosing pump is currently active (if redox module installed)
- Hidro cover reduction: whether the cell is running at reduced output because the cover is closed (if hydrolysis/electrolysis module installed)
Alarms and faults
- pH pump alarm: pH pump dosing alarm (if pH module installed)
- Hidro flow: flow alarm on the cell (if hydrolysis/electrolysis module installed)
- Hidro FL2: secondary flow alarm reported by the chlorine module (if hydrolysis/electrolysis and chlorine modules are installed)
- Electrolysis low / Hydrolysis low: production has dropped below the configured threshold. The name reflects which cell technology your controller reports (if hydrolysis/electrolysis module installed)
- Dosing tank: at least one installed dosing tank reports a low level (if any chemical dosing module is installed)
Diagnostic entities
These entitiesAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] are disabled by default and let you template against which modules are installed on the controller.
- Conductivity module
- Chlorine module
- Redox module
- pH module
- Hidro module
- IO module
To use any of the diagnostic entities, enable them in Settings > Devices & services > Entities.
Light
The integration exposes the pool light wired through the controller as a standard Home Assistant entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more], so you can switch it from any dashboard, voice assistant, or automation. The controller treats the light as a simple on/off output. Brightness and color are not reported by the API and aren’t exposed.
- Pool light: turn the pool light on or off.
Numbers
The integration provides the following adjustable values, grouped by what they configure. Each is exposed as a configuration entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more], so they appear under the Configuration section of the device page rather than in the main controls.
Chemical setpoints
- Redox setpoint: target redox potential in mV (500–800). Available if a redox module is installed.
- pH minimum: lower bound of the pH target window (6.00–8.00). Available if a pH module is installed.
- pH maximum: upper bound of the pH target window (6.00–8.00). Available if a pH module is installed.
- Electrolysis setpoint: target cell production in g/h. The maximum value is read from the cell’s hardware-reported maximum, so the slider adapts automatically to different cell sizes. Available if a hydrolysis or electrolysis module is installed.
Temperature targets
- Intel temperature: target temperature used by INTEL filtration mode (5–40 °C).
- Heating minimum temperature, Heating maximum temperature: lower and upper bounds of the HEAT mode temperature range (5–40 °C each). Available only if your controller supports HEAT mode.
- Smart minimum temperature, Smart maximum temperature: lower and upper bounds of the SMART mode temperature range (5–40 °C each). Available only if your controller supports SMART mode.
Selects
The integration provides the following select entitiesAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more], grouped by what they control. Each is exposed as a configuration entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more], so they appear under the Configuration section of the device page rather than in the main controls.
Filtration mode and speed
-
Pump mode: how the filtration pump decides when to run. Options are
manual,auto,heat(run while heating is active),smart(Smart filtration mode), andintel(Intel filtration mode). -
Pump speed: speed used when the pump is running in manual mode. Options are
slow,medium, andhigh.
Timer speeds
The controller has three independent timer slots. Each slot lets you choose the speed the pump should use when that slot is active.
-
Filtration timer speed 1: speed used for the first timer slot. Options are
slow,medium, andhigh. - Filtration timer speed 2: same, for the second slot.
- Filtration timer speed 3: same, for the third slot.
Data updates
Vistapool uses real-time cloud push. Home Assistant subscribes to the Vistapool cloud once and the controller streams every change as it happens, so dashboards and automations react within a second or two of the physical event, with no fixed polling interval.
When the connection drops, the integration reconnects automatically with exponential backoff. Entities go to Unavailable while the connection is down and recover as soon as the stream is back.
Known limitations
- The integration requires an active internet connection as it communicates via the Vistapool cloud API
- Sensor availability depends on which modules are physically installed on your controller
Troubleshooting
Entities show “Unavailable”
Check your internet connection and verify the controller is online in the Vistapool app. The integration will automatically reconnect when the connection is restored.
Reauth notification appears
Your stored password is no longer accepted by Vistapool. Select the notification to re-enter your password and restore the connection. Your username stays the same.
Entities not updating
The integration uses real-time cloud push. If updates stop, try reloading the integration from Settings > Devices & services.
Removing the integration
This integration follows standard integration removal.
To remove an integration instance from Home Assistant
- Go to Settings > Devices & services and select the integration card.
- From the list of devices, select the integration instance you want to remove.
- Next to the entry, select the three dots
menu. Then, select Delete.