1.26 fixed the problem. Thanks
Yes, I have the following:
switch:
- platform: mqtt
name: pentair_pool
command_topic: /pentair/pool/command
state_topic: /pentair/pool/state
- platform: mqtt
name: pentair_spa
command_topic: /pentair/spa/command
state_topic: /pentair/spa/state
sensor:
- platform: mqtt
name: pentair_pooltemp
state_topic: /pentair/pooltemp/state
- platform: mqtt
name: pentair_spatemp
state_topic: /pentair/spatemp/state
- platform: mqtt
name: pentair_airtemp
state_topic: /pentair/airtemp/state
- platform: mqtt
name: pentair_alkalinity
state_topic: /pentair/alkalinity/state
- platform: mqtt
name: pentair_calcium
state_topic: /pentair/calcium/state
- platform: mqtt
name: pentair_cyanuricacid
state_topic: /pentair/cyanuricacid/state
- platform: mqtt
name: pentair_ph
state_topic: /pentair/ph/state
- platform: mqtt
name: pentair_saltppm
state_topic: /pentair/saltppm/state
- platform: mqtt
name: pentair_saturation
state_topic: /pentair/saturation/state
I think it has to do with the sensor configuration, because in the MQTT Explorer I can see that there are the values.
What is the exact issue? Are the sensors in HA not updating with the values you see coming across on MQTT?
Yes, that is the problem
This is working great! On my pool spa, I only have one temperature probe and itâs by the equipment rather than in the swim area. This means most of the day the temperatures are reporting incorrectly. I would like it to ONLY report temperatures when the water is flowing through the system (pool or spa are on). How can I change this template sensor to ONLY update temperatures when the pool or spa are on?
- platform: mqtt
name: pentair_pooltemp
state_topic: pentair/pooltemp/state
unit_of_measurement: '°F'
- platform: mqtt
name: pentair_spatemp
state_topic: pentair/spatemp/state
unit_of_measurement: '°F'
This addon only knows what the ScreenLogic system is reporting. If your system is reporting temperature changes when the pumps are not running this addon is going to get those changes too. My system doesnât update the temperatures when the pumps arenât running. Are the temperatures in the ScreenLogic app incorrect?
You might be able to accomplish what you want using template sensors in HA, but Iâm not an expert on how to do that. There is a lot of documentation on it though.
Thank you for this add-on
I cannot get it to connect
The logs show this
[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] done.
[services.d] starting services
[services.d] done.
events.js:292
throw er; // Unhandled 'error' event
^
Error: connect ETIMEDOUT 191.168.0.246:80
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1141:16)
Emitted 'error' event on UnitConnection instance at:
at Socket.<anonymous> (/node_modules/node-screenlogic/index.js:162:13)
at Socket.emit (events.js:315:20)
at emitErrorNT (internal/streams/destroy.js:92:8)
at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
at processTicksAndRejections (internal/process/task_queues.js:84:21) {
errno: 'ETIMEDOUT',
code: 'ETIMEDOUT',
syscall: 'connect',
address: '191.168.0.246',
port: 80
}
events.js:292
throw er; // Unhandled 'error' event
^
Error: connect ETIMEDOUT 191.168.0.246:80
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1141:16)
Emitted 'error' event on UnitConnection instance at:
at Socket.<anonymous> (/node_modules/node-screenlogic/index.js:162:13)
at Socket.emit (events.js:315:20)
at emitErrorNT (internal/streams/destroy.js:92:8)
at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
at processTicksAndRejections (internal/process/task_queues.js:84:21) {
errno: 'ETIMEDOUT',
code: 'ETIMEDOUT',
syscall: 'connect',
address: '191.168.0.246',
port: 80
}
events.js:292
throw er; // Unhandled 'error' event
^
Error: connect ETIMEDOUT 191.168.0.246:80
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1141:16)
Emitted 'error' event on UnitConnection instance at:
at Socket.<anonymous> (/node_modules/node-screenlogic/index.js:162:13)
at Socket.emit (events.js:315:20)
at emitErrorNT (internal/streams/destroy.js:92:8)
at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
at processTicksAndRejections (internal/process/task_queues.js:84:21) {
errno: 'ETIMEDOUT',
code: 'ETIMEDOUT',
syscall: 'connect',
address: '191.168.0.246',
port: 80
}
I have the same issue
did you figure it out? Thanks
Thanks for providing this addaddon. Works great!
Newb here. What am I doing wrong?
I took these steps:
-
Went into Supervisor / Add-ons and added the repo. The Pentair Add-on appeared! Yaay
-
Installed the Pentair add-on
-
Clicked the Configuration tab in the Pentair add-on and set the MQTT server, user, pass and port, and set the Screenlogic Server
-
Started the Add-on. Looked good - Log showed:
[s6-init] making user provided files available at /var/run/s6/etcâŚexited 0.
[s6-init] ensuring user provided files have correct permsâŚexited 0.
[fix-attrs.d] applying ownership & permissions fixesâŚ
[fix-attrs.d] done.
[cont-init.d] executing container initialization scriptsâŚ
[cont-init.d] done.
[services.d] starting services
[services.d] done.
version=POOL: 5.2 Build 738.0 Rel
pool ok=1
pool active=false
pool temp=56
pool settemp=40
pool heatStatuse=0
pool heatStatuse=off
spa active=false
spa temp=51
spa settemp=100
spa heatStatuse=heat
salt ppm=3300
pH=0
orp=0
saturation=0
air temp=54
freezeMode=0
alarms=0
Number of circuitArray Objects=9
calcium=0
cyanuric acid=0
alkalinity=0
controller is in celsius=false
controllerId=100
pumpCircArray=134,0,0,0,0,0,0,0
Number of bodyArray Objects=9
bodyArray=
circuitId: 500
name: Spa
circuitId: 501
name: Pool Light
circuitId: 502
name: Spa Light
circuitId: 503
name: Air Blower
circuitId: 504
name: Waterfall
circuitId: 505
name: Pool
circuitId: 506
name: Spa SAL
circuitId: 507
name: Spa SAm
circuitId: 508
name: Pool High
numPumps=1
pumpID 0 watts=0
pumpID 0 rpms=0
pumpID 0 gpms=255
salt cell installed=false
salt cell satus=129
salt cell level 1=99
salt cell level 2=20
CLOSING CONNECTION -
Looked around and realized nothing really changed, so re-read the instructions and it mentions adding options from configuration-entries.yaml to HASS, so I believe that means using the File Editor Add-on and editing my configuration.yaml file. So for testing, I just copied everything except the cards: section into that file and restarted
-
That didnât work, got tons of errors, so then I tried minimizing the configuration.yaml file to just a few switches and sensors, but that also failed. Hereâs what I tried:
switch:
- platform: mqtt
name: pentair_pool
command_topic: pentair/circuit/505/command
state_topic: pentair/circuit/505/state
- platform: mqtt
name: pentair_spa
command_topic: pentair/circuit/500/command
state_topic: pentair/circuit/500/state
When I start things up, I get this error:
2021-02-07 21:33:38 ERROR (MainThread) [homeassistant.setup] Setup failed for mqtt: Integration failed to initialize.
2021-02-07 21:33:38 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform mqtt.switch: Unable to set up component.
2021-02-07 21:33:38 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform mqtt.switch: Unable to set up component.
There are no other errors, details, or anything.
What am I doing wrong?
Well, Iâm dumb. The issue is mqtt wasnât defined as a platform in configuration.yaml and had nothing to do with this plugin.
Core version 2021.2.1 reports: âAdd-on config âstartupâ with âbeforeâ is deprecated. Please report this to the maintainer of Pentair Screenlogicâ, any clue if an update of this add-on is in the works to revise the deprecated parameters?
Where are you seeing this?
Just wanted to stop in and thank you for this add-on. Iâve been using it for a while now and itâs rock solid.
@bwoodworth I am seeing the same warning about âstartupâ with âbeforeâ being deprecated. Itâs in the Supervisor log.
This add-on has been great! Thank you for this!
I have a question - the temperature sensor/device in HA works, but only shows heat or no heat. But our system has the option for Solar + Heat or Solar Preferred on the original Pentair Screenlogic controller. Is there any way to trigger these options in this add-on? In other words, the Pentair supports more modes than just off and heat. How can I represent that here?
great work Brian. getting my pool into some sort of home automation has been a goal of mine for a while.
I feel like im very close, just not seeing the active results in HA. Was wondering if someone might know what im missing.
my MQTT config is this:
logins:
- username: mosquitto
password: pw
anonymous: true
customize:
active: false
folder: mosquitto
certfile: fullchain.pem
keyfile: privkey.pem
require_certificate: false
this is what i see in the MQTT log
1617733292: New client connected from 172.30.32.1 as mosq-YJkBdza6QXQnSjdPtX (p2, c1, k60, uâmosquittoâ).
1617733292: Client mosq-YJkBdza6QXQnSjdPtX disconnected.
1617733292: New connection from 172.30.32.1 on port 1883.
1617733292: New client connected from 172.30.32.1 as mosq-7xpOKoBcGJ9z5JMjjI (p2, c1, k60, uâmosquittoâ).
1617733292: Client mosq-7xpOKoBcGJ9z5JMjjI disconnected.
1617733292: New connection from 172.30.32.1 on port 1883.
1617733292: New client connected from 172.30.32.1 as mosq-7o1latlLtHgyk3i1PM (p2, c1, k60, uâmosquittoâ).
1617733292: Client mosq-7o1latlLtHgyk3i1PM disconnected.
1617733292: New connection from 172.30.32.1 on port 1883.
1617733292: New client connected from 172.30.32.1 as mosq-SD2H6WHsulbkVLNA4x (p2, c1, k60, uâmosquittoâ).
1617733292: Client mosq-SD2H6WHsulbkVLNA4x disconnected.
1617733292: New connection from 172.30.32.1 on port 1883.
1617733292: New client connected from 172.30.32.1 as mosq-9pq1sHFfD52cPUaEOb (p2, c1, k60, uâmosquittoâ).
1617733292: Client mosq-9pq1sHFfD52cPUaEOb disconnected.
1617733292: New connection from 172.30.32.1 on port 1883.
1617733292: New client connected from 172.30.32.1 as mosq-r0WuHVnnqy1lXSVc4z (p2, c1, k60, uâmosquittoâ).
1617733292: Client mosq-r0WuHVnnqy1lXSVc4z disconnected.
1617733292: New connection from 172.30.32.1 on port 1883.
1617733292: New client connected from 172.30.32.1 as mosq-AnVVsMNJ8GmVCcYFMR (p2, c1, k60, uâmosquittoâ).
1617733292: Client mosq-AnVVsMNJ8GmVCcYFMR disconnected.
1617733292: New connection from 172.30.32.1 on port 1883.
1617733292: New client connected from 172.30.32.1 as mosq-S3B1a4crSRkXhXBvpf (p2, c1, k60, uâmosquittoâ).
1617733292: Client mosq-S3B1a4crSRkXhXBvpf disconnected.
1617733292: New connection from 172.30.32.1 on port 1883.
1617733292: New client connected from 172.30.32.1 as mosq-rI1dilM0G5VK136YaL (p2, c1, k60, uâmosquittoâ).
1617733292: Client mosq-rI1dilM0G5VK136YaL disconnected.
1617733292: New connection from 172.30.32.1 on port 1883.
1617733292: New client connected from 172.30.32.1 as mosq-M54mBa8KfvlvA0EJGJ (p2, c1, k60, uâmosquittoâ).
1617733292: Client mosq-M54mBa8KfvlvA0EJGJ disconnected.
1617733292: New connection from 172.30.32.1 on port 1883.
1617733292: New client connected from 172.30.32.1 as mosq-ELBk5ubPtEXt07618B (p2, c1, k60, uâmosquittoâ).
1617733292: Client mosq-ELBk5ubPtEXt07618B disconnected.
1617733292: New connection from 172.30.32.1 on port 1883.
1617733292: New client connected from 172.30.32.1 as mosq-5GUCdzNWrcUcElReSA (p2, c1, k60, uâmosquittoâ).
this is what i see in the pentair addon. These values are accurate, pool is on and the temp is accurate.
[s6-init] making user provided files available at /var/run/s6/etcâŚexited 0.
[s6-init] ensuring user provided files have correct permsâŚexited 0.
[fix-attrs.d] applying ownership & permissions fixesâŚ
[fix-attrs.d] done.
[cont-init.d] executing container initialization scriptsâŚ
[cont-init.d] done.
[services.d] starting services
[services.d] done.
version=POOL: 5.2 Build 738.0 Rel
pool ok=1
pool active=true
pool temp=69
pool settemp=85
pool heatStatuse=0
pool heatStatuse=off
spa active=false
spa temp=69
spa settemp=100
spa heatStatuse=off
salt ppm=0
pH=0
orp=0
saturation=0
air temp=76
freezeMode=0
alarms=1
Number of circuitArray Objects=7
calcium=0
cyanuric acid=0
alkalinity=0
controller is in celsius=false
controllerId=100
pumpCircArray=0,0,0,0,0,0,0,0
Number of bodyArray Objects=7
bodyArray=
circuitId: 500
name: Spa
circuitId: 501
name: Cleaner
circuitId: 502
name: Air Blower
circuitId: 503
name: Aux 3
circuitId: 505
name: Pool
circuitId: 510
name: Feature 1
circuitId: 511
name: Feature 2
numPumps=0
salt cell installed=true
salt cell satus=0
salt cell level 1=50
salt cell level 2=0
CLOSING CONNECTION
but when i try to just put a card for the temp in lovelace the value says âunavailableâ
i copied and pasted the example settings from the repo and put them in the configuration.yaml i feel like this isnât exactly right but not sure what i need to do.
do i need to subscribe to topics in MQTT? im not seeing any of the pentair stuff come up in the logs. Any help would be much appreciated.