This integration works with Home Assistant 2024 and later — pump programs are exposed as switch entities (not lights), which satisfies HA's supported_color_modes requirement and also works correctly with HomeKit Bridge and other automations.
Homeassistant Pentair cloud custom integration. Supports the Pentair IntelliFlo 3 VS Pump with the Wifi module. This integration creates a switch for each of the programs you have configured in your Pentair Home App, plus a set of sensors for live pump telemetry. You can use this to:
- Start/Stop a program
- Know when a program is running
- Monitor live power, speed, flow and pressure
- React to pump alarms and connectivity loss
Data is pulled from the Pentair Web service used by the Pentair Home App. Note: This project is not associated with or endorsed by Pentair.
Example Scenario: I have a Program in my Pentair Home App for when I want to run my pool cleaner. My pool cleaner is connected to a sonoff relay. Using this integration, I can detect when the pump is running the "cleaner program" and turn on the pool cleaner.
For every compatible pump (IF31 / IntelliFlo3 VSF) the integration creates:
Switches — one per configured program: start/stop the program and see whether it is currently running.
Sensors — live telemetry, refreshed on each poll (~60s):
| Entity | Unit | Source field | Notes |
|---|---|---|---|
| Power | W | s18 |
Current power draw (feeds the Energy dashboard) |
| Speed | % | s19 |
Current motor speed (of max RPM) |
| Flow | gal/min | s26 |
Current estimated flow (GPM) |
| Pressure | psi | s17 |
Current pressure |
| Alarm code | — | s20 |
Numeric fault bitfield (0 = no fault), diagnostic |
Binary sensors:
| Entity | Device class | Source | Notes |
|---|---|---|---|
| Alarm | problem | alarm flag / s20 |
On when the pump reports an alarm; alarm_code is exposed as an attribute |
| Connectivity | connectivity | online flag |
On when the pump is reachable, diagnostic |
Note: the Pentair cloud API only exposes the current alarm state — there is no alert-history endpoint. To keep a history, use the Home Assistant logbook/history of the Alarm sensor.
The simplest way to install this integration is with the Home Assistant Community Store (HACS). This is not (yet) part of the default store and will need to be added as a custom repository.
Setting up a custom repository is done by:
- Go into HACS from the side bar.
- Click into Integrations.
- Click the 3-dot menu in the top right and select
Custom repositories - In the UI that opens, copy and paste the url for this github repo into the
Add custom repository URLfield. - Set the category to
Integration. - Click the
Addbutton. Further configuration is done within the Integrations configuration in Home Assistant. You may need to restart home assistant and clear your browser cache before it appears, try ctrl+shift+r if you don't see it in the configuration list.
If you don't want to use HACS or just prefer manual installs, you can install this like any other custom component. Just merge the custom_components folder with the one in your Home Assistant config folder and you may need to manually install the pycognito and requests-aws4auth library.