[New Addon] Pentair Screenlogic

Brian:

One clarification for me as a noob. I noticed in the Mosquitto log that the ipaddress was 172.30.32.1 for the devices connecting to the Mosquitto broker even though the broker was installed on Synology device with static ip 192.168.2.113.

When I use 192.168.2.113 - I do not get any connection
When I use 172.30.32.1 - This one works

Is this from the container issue? In other words is the container assigning a 172.30.x.x based address even though my network is 192.168.x.x based network?

When I log onto Hassio it is 192.168.2.113:8123.

If this is the case is there any way to change the container assignment to be 192.168.x.x based

Needless to say I am a little confused about these issues

Ok thanks. Iā€™m not sure how these libraries are are incorporated into the add on but would this help at all?

https://developer.aliyun.com/mirror/npm/package/nodejs-pentair/v/1.0.0

Yes, the 172.x.x.x IP address is internal to docker. If you want to use your actual subnet IP address you would need to forward the traffic to the proper IP within docker.

Iā€™m not sure how the MQTT broker on the Synology works, but maybe you donā€™t have that forwarding in place.

That looks like it is not for the ScreenLogic, but rather a direct serial connection to the controller.

Created a pull request (https://github.com/bwoodworth/hassio-addons/pull/5) for the lighting integration

I have a Pentair ScreenLogic system here at home and was able to test the changes successfully. Nonetheless, looking for feedback from others on how itā€™s working. Be sure to check out the configuration-entries.yaml file which has an example of how I implemented the lighting controls.

Thanks! I have merged your pull request. I donā€™t really have the ability to fully test it so anyone who does please report how it is working.

I am very new to HASSIO and switching from ST. Today I setup the MQTT in docker for this Add-on specifically. Actually your add-on is a primary reason for choosing HASSIO. The lights and all are working swimmingly except for the all on and off cmd not working the spa light (i think this is a easytouch config issue and will continue to troubleshoot). The WAF is 100% which is more that I could say for their native app.

THANK YOU!!!

Only critique is that the config for the add-on didnā€™t accept my MQTT password without ā€˜passwordā€™. I donā€™t know much about the scripting side yet but thought it worth a mention.

How can I implement the ā€œcardsā€ noted in the documentation. Iā€™m in advanced mode, but when I update the configuration.yaml file to include cards I get a messages that cards is not understood. Iā€™m guessing I need to add a script via the dashboard resources menu, but I do not know what I should add or how.

The cards section of the configuration-entries.yaml are actually for the lovelace UI. You can add a manual card and copy the yaml to the editor. The contents in the configuration-entries.yaml file are just meant to be examples of what can be done. Everyoneā€™s system will be set up differently

1 Like

This is excellent work, and I love it. Thanks Brian.
Is it possible to get and set variable speeds on pumps with their api?

1 Like

I love this add on and would love it even more if we could get that implemented, he (Brian) mentioned it being a limitation of the screenlogic library at the moment. I donā€™t know how to dive deeper in to the issue, but if the screenlogic app reports RPM, I donā€™t understand how it gets that dataā€¦

This addon relies on a nodejs library that accesses the ScreenLogic API: https://github.com/parnic/node-screenlogic

The ScreenLogic API most likely exposes the pump RPM, but this library has not yet implemented that feature of the API. Short of writing our own library to access the ScreenLogic API directly we are at the mercy of the features in the nodejs library. You could request that feature be added to that library. It is still being actively developed.

At first I was thinking, hey Iā€™ll locate the docs and write an interface. Then I found a ridiculously hard to find, incomplete copy of the IP Protocol documentation and remembered how much I hate buffers, especially in javascript. Yuk!

Yeah, the ScreenLogic API is not published. The author of the nodejs library is basically sniffing network traffic to reverse engineer it.

@joe2 did you ever try this add-on with your IntelliCenter system? I just installed my IntelliCenter this week and would love to get it working with HA.

I did test itā€¦ no dice. Sorry. Next on my list to test out is this:

with this MQTT addon:

Only downside is this will require a hardwired serial connection in my boxā€¦ looks straight forward and I already bought the adapter iā€™ll put on a rpiā€¦ i would have preferred an IP based solution i could dockerize and put in hassio

1 Like

@joe2 I run a standalone pump with nodejs-poolController just setup pm2 on your pi and run nodejs-poolController as a service restarts and stays alive just well then you have what you are looking for. I like your project @bwoodworth but only wanted pump control so I left my setup alone. I did try the mqtt setup for nodejs-poolController but settled on making my own API of sorts using Node Red and MQTT

Iā€™ve added a Feature recently, in my configuration. I use it to vary the variable speed on my pump.
I added it as a switch to HA, and while it reflects the state set in ScreenLogic, I cannot change it from HA. When I change it, it toggles right back to previous state.

image

I have an AUX configuration that I use for a similar purpose that works as expected.

image

Iā€™ll note, that if I toggle it in ScreenLogic it does what I expect it to do.

I see nothing in the logs in HA of value to this situation. Any advice?

Iā€™m not clear on what you actually did. Did you update the addon or just do something with your configuration yaml?

In the IntelliTouch configuration, I added a Feature. I gave this feature an Intelliflo setting.
I created a switch in HA yaml.

The switch in HA properly reflects the operating state of the feature I created in IntelliTouch, but in HA I am unable to control whether the feature is on or off. When toggled in IntelliTouch (via ScreenLogic2), HA properly reflects the new state. At no time can I control a feature that is not assigned to pool, spa or an AUX from HA.