FlyingDiver / Indigo-Pentair

MIT License
0 stars 0 forks source link

No custom States with python 3 version #1

Closed farberm closed 7 months ago

farberm commented 8 months ago

I am connecting thru i-link and network socket. The connection is successful. I can see thru debug that the temps for air, pool and spa are being sent (see code below). No other data is displayed. With the prior version of the plugin I was receiving custom states for the following but they are no longer available. Also none of the circuits update their times etc. I have included all info when the plugin starts

freezemode airsensor airtemp chlorerr chlorname model opmode pool_chlor readystate salt solar_sensor solar_sensor_2 solartemp spa_chlor super_chlor temp_corr_salt version water_sensor water_sensor_2

Pentair Pool Debug              Pentair: b'!00 SPATMP = 47 F\r!00 AIRTMP = 47 F'
   Pentair Pool Debug              Pentair: b'!00 POOLTMP = 51 F\r!00 AIRTMP = 46 F'
   Pentair Pool Debug              Pentair: b'!00 AIRTMP = 47 F'

Code when starting

Started plugin "Pentair Pool 2022.0.2"
 Pentair Pool Debug               Serial Port URL is socket://192.168.2.73:4999
   Pentair Pool                          Serial Port Open at socket://192.168.2.73:4999
   Pentair Pool Debug              RSPFMT = 0
   Pentair Pool Debug              Pentair: b'!00 RSPFMT = 0'
   Pentair Pool Debug              COSMSGS = 1
   Pentair Pool Debug              Pentair: b'!00 COSMSGS = 1'
   Pentair Pool Debug              AIRTMP ?
   Pentair Pool Debug              Pentair: b'!00 AIRTMP = 45 F'

I deleted all the old Circuits and Spa and Pool. There is now no system device for me to add?

Any help much appreciated.

FlyingDiver commented 8 months ago

Something very strange going on here. The code I ported doesn't look anything like the most recent Python2 version. Mine is based on a really old version. So I'm going to have to take his most recent Python2 version and redo the port.

farberm commented 8 months ago

thanks for your help

FlyingDiver commented 8 months ago

Try https://github.com/FlyingDiver/Indigo-Pentair/releases/tag/2023.0.0

FlyingDiver commented 8 months ago

I tested basic functionality - pool, spa, aux circuits. I do not have pool chemistry or freeze sensors or anything like that, so I was unable to test those.

farberm commented 8 months ago

Seems to be working well. Had to redo all Aux Circuits. Will test tonight to see about freeze mode butmy guess it that it should be working.

FlyingDiver commented 8 months ago

Are you getting all the other custom states you were expecting?

farberm commented 8 months ago

I think I am... waiting until tinight or tomorrow when the temp drops enough to check the freeze mode.

farberm commented 8 months ago

It does not seem to be working after further investigation. Still no custom states. Let me know how I can help debug with you

FlyingDiver commented 8 months ago

Right click on your controller device in the Indigo UI, select "print device details to log", and post that.

farberm commented 8 months ago

Info from controller device

 Script                          address : SYSTEM
batteryLevel : None
buttonGroupCount : 0
configured : True
description : 
deviceTypeId : system
displayStateId : 
displayStateImageSel : NoImage
displayStateValRaw : None
displayStateValUi : 
enabled : True
energyAccumBaseTime : None
energyAccumTimeDelta : None
energyAccumTotal : None
energyCurLevel : None
errorState : 
folderId : 654691166
globalProps : MetaProps : (dict)
     com.jeremyswancoat.indigoplugin.pentairpool : (dict)
          address : SYSTEM (string)
          circuitselect : SYSTEM (string)
id : 1831648956
lastChanged : 2023-12-19 10:58:03
lastSuccessfulComm : 2023-12-19 10:58:03
model : System
name : Home Pool Control
ownerProps : com.jeremyswancoat.indigoplugin.pentairpool : (dict)
     address : SYSTEM (string)
     circuitselect : SYSTEM (string)
pluginId : com.jeremyswancoat.indigoplugin.pentairpool
pluginProps : emptyDict : (dict)
protocol : Plugin
remoteDisplay : True
sharedProps : com.indigodomo.indigoserver : (dict)
states : States : (dict)
     air_sensor : 0 (integer)
     air_sensor.error : false (bool)
     air_sensor.ok : false (bool)
     airtemp : 52 (integer)
     chlorerr :  (string)
     chlorname :  (string)
     freeze : off (on/off bool)
     model : 0 (integer)
     model.i10p3S : false (bool)
     model.i5p3 : false (bool)
     model.i5p3S : false (bool)
     model.i7p3 : false (bool)
     model.i9p3 : false (bool)
     model.i9p3S : false (bool)
     opmode : 0 (integer)
     opmode.auto : false (bool)
     opmode.service : false (bool)
     pool_chlor : 0 (integer)
     readystate : 0 (integer)
     readystate.gettingData : false (bool)
     readystate.ready : false (bool)
     readystate.startingUp : false (bool)
     salt : 0 (integer)
     solar_sensor : 0 (integer)
     solar_sensor.error : false (bool)
     solar_sensor.ok : false (bool)
     solar_sensor_2 : 0 (integer)
     solar_sensor_2.error : false (bool)
     solar_sensor_2.ok : false (bool)
     solartemp : 0 (integer)
     spa_chlor : 0 (integer)
     super_chlor : 0 (integer)
     temp_corr_salt : 0 (integer)
     version :  (string)
     water_sensor : 0 (integer)
     water_sensor.error : false (bool)
     water_sensor.ok : false (bool)
     water_sensor_2 : 0 (integer)
     water_sensor_2.error : false (bool)
     water_sensor_2.ok : false (bool)
subModel : 
subType : 
supportsAllLightsOnOff : False
supportsAllOff : False
supportsOnState : False
supportsStatusRequest : False
version : None
FlyingDiver commented 8 months ago

Ok, so the states are there, but not populated with real data.

Only thing to do now is leave debug logging on, and capture when the iLink reports that data to the plugin. If I can get the messages it's sending, I can fix whatever is causing it to not populate the states. Up to you to find those reports in the log and report them here.

farberm commented 8 months ago

Unfortunately, I do not see any information being transmitted about the custom states? Just the following. After this I get the POOLTMP, AIRTMP and SPATMP being sent repeatedly. Nothing else?

`Started plugin "Pentair Pool 2023.0.1" Pentair Pool Debug Startup Called Pentair Pool Serial Port URL issocket://192.168.2.73:4999 Pentair Pool Serial Port Open at socket://192.168.2.73:4999 Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX1 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX42 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX43 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX44 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX45 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX46 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX47 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX48 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX49 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX5 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX50 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX8 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX6 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX41 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX4 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: SYSTEM to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: POOLHT to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX2 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: POOL to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: SPAHT to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX3 to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: SPA to circuitdev Pentair Pool Debug deviceStartComm called Pentair Pool Debug Just added: AUX7 to circuitdev Pentair Pool Debug To Pentair: AUX1 ? Pentair Pool Debug From Pentair: !00 AUX1 = 0 Pentair Pool Aux 1 is off Pentair Pool Debug To Pentair: AUX42 ? Pentair Pool Debug From Pentair: !00 AUX42 = 0 Pentair Pool Aux 42 is off Pentair Pool Debug To Pentair: AUX43 ? Pentair Pool Debug From Pentair: !00 AUX43 = 0 Pentair Pool Aux 43 is off Pentair Pool Debug To Pentair: AUX44 ? Pentair Pool Debug From Pentair: !00 AUX44 = 0 Pentair Pool Aux 44 is off Pentair Pool Debug To Pentair: AUX45 ? Pentair Pool Debug From Pentair: !00 AUX45 = 0 Pentair Pool Aux 45 is off Pentair Pool Debug To Pentair: AUX46 ? Pentair Pool Debug From Pentair: !00 AUX46 = 0 !00 SPATMP = 47 F Pentair Pool Aux 46 is off Pentair Pool Debug To Pentair: AUX47 ? Pentair Pool Debug From Pentair: !00 AUX47 = 0 Pentair Pool Aux 47 is off Pentair Pool Debug To Pentair: AUX48 ? Pentair Pool Debug From Pentair: !00 AUX48 = 0 Pentair Pool Aux 48 is off Pentair Pool Debug To Pentair: AUX49 ? Pentair Pool Debug From Pentair: !00 AUX49 = 0 Pentair Pool Aux 49 is off Pentair Pool Debug To Pentair: AUX5 ?

Pentair Pool Debug From Pentair: !00 AUX5 = 0 Pentair Pool Aux 5 is off Pentair Pool Debug To Pentair: AUX50 ? Pentair Pool Debug From Pentair: !00 AUX50 = 0 Pentair Pool Aux 50 is off Pentair Pool Debug To Pentair: AUX8 ? Pentair Pool Debug From Pentair: !00 AUX8 = 0 Pentair Pool Aux 8 is off Pentair Pool Debug To Pentair: AUX6 ? Pentair Pool Debug From Pentair: !00 AUX6 = 0 Pentair Pool Cleaner-6 is off Pentair Pool Debug To Pentair: AUX41 ? Pentair Pool Debug From Pentair: !00 AUX41 = 0 Pentair Pool Fountain 1 is off Pentair Pool Debug To Pentair: AUX4 ? Pentair Pool Debug From Pentair: !00 AUX4 = 0 Pentair Pool Fountain-4 is off Pentair Pool Debug To Pentair: POOLHT ? Pentair Pool Debug From Pentair: !00 POOLHT = 0 Pentair Pool Pool Heater Mode is 0 Pentair Pool Debug To Pentair: POOLSP ? Pentair Pool Debug From Pentair: !00 POOLSP = 79 F Pentair Pool Pool Heater Set Point is 79 Pentair Pool Debug To Pentair: POOLTMP ? Pentair Pool Debug From Pentair: !00 POOLTMP = 51 F Pentair Pool Debug To Pentair: AUX2 ? Pentair Pool Debug From Pentair: !00 AUX2 = 0 !00 SPATMP = 46 F Pentair Pool Pool Lights is off Pentair Pool Debug To Pentair: PUMP ? Pentair Pool Debug From Pentair: !00 PUMP = 1 Pentair Pool Pool Pump is on Pentair Pool Debug To Pentair: SPAHT ? Pentair Pool Debug From Pentair: !00 SPAHT = 0 Pentair Pool Spa Heater Mode is 0 Pentair Pool Debug To Pentair: SPASP ? Pentair Pool Debug From Pentair: !00 SPASP = 99 F Pentair Pool Spa Heater Set Point is 99 Pentair Pool Debug To Pentair: SPATMP ? Pentair Pool Debug From Pentair: !00 SPATMP = 46 F Pentair Pool Debug To Pentair: AUX3 ?

Pentair Pool Debug From Pentair: !00 AUX3 = 0 Pentair Pool Spa Jets 3 is off Pentair Pool Debug To Pentair: SPA ? Pentair Pool Debug From Pentair: !00 SPA = 1 Pentair Pool Spa Pump is on Pentair Pool Debug To Pentair: AUX7 ? Pentair Pool Debug From Pentair: !00 AUX7 = 0 Pentair Pool Spa Water High 7 is off Pentair Pool Debug From Pentair: !00 POOLTMP = 52 F !00 SPATMP = 47 F `

FlyingDiver commented 8 months ago

If it's not sending the info, nothing I can do.

farberm commented 8 months ago

I installed itest (Mac App Store) and connected to the i-link over the serial connector. When I send the command #MODEL ? it returns !00 MODEL = I10+3D. I have looked at the i-link protocol docs (below) but do not see commands for the other custom states or commands for freeze mode and chlor etc....or a command to request all the system settings? Is it possible that these are located somewhere in the old plugin?

https://www.pentair.com/content/dam/extranet/nam/product-related/product-manuals/pool-and-spa-equipment/intellitouch/IntelliTouch_i-Link_Protocol_Interface_Adapter_Users_Guide_English.pdf

FlyingDiver commented 8 months ago

No idea. I didn't write this plugin. I only did the Python3 port. If you can find something that I can implement, I'll give it a try. But I don't have any plans to research it myself.