[OBSOLETE]Intermatic PE653 Pool Control System

Ok, sniffer success. I made the following edit and I am in business.

// def getPOOL_SPA_CHAN () { 39 } // Pool/Spa channel - 0x27
def getPOOL_SPA_CHAN () { 04 } // Pool/Spa channel - 0x04 Barrett edit

@Barrett_Richardson, this is great news. As soon as I get my pool cleaned up( I hate opening, lol) Iā€™m going to attempt the change. Please donā€™t hesitate to PM with PayPal info too.

Done. @KeithR curious if the new value also works for you or if there is a version difference or something.

Very curious and unexpected. (Was out of town this past week so just catching up). For me, channel 04 is switch 4, which controls my third actuator (waterfall). The first 5 channels correspond to the 5 switches.

Itā€™s got to be an Intermatic version thing. Most of us run firmware ā€œ34ā€. I canā€™t believe we havenā€™t already covered this.

Please check your 953 remote and post the firmware numbers in-the upper right corner. As long as I can detect a difference in version I can have the DTH adapt to the difference.

Now iā€™m Curious what the log would show if you turn switch 4 on/off.

BTW, pls PM me your PayPal info. This has been well worth the investment.

Now that is interesting. Definitely at firmware 34. BUT the fact that it is Switch 4 makes some sense. My switch 4 does nothing from the 953, as it is wired to the P4243ME that operates the valves when going between Pool and Spa. Do you or @gt1gt1 have the P4243ME? I donā€™t remember which config drives this but I guess the 953 knows to use 0x04 over 0x27 in this case.

Ok, thatā€™s it then. I have the P5043ME instead. Now I can do some further research on the differences.

@gt1gt1, have you ever tried changing SW4 in the ST App? From what weā€™re seeing that might just change pool/spa mode.

Once i learn more iā€™ll Consider a more robust fix.

@Barrett_Richardson, thanks for sending the manual. They only part different from my manual is on page 36, but that clearly shows that the PE4243ME is directly controlled by ā€œcircuit 4ā€ of the 653. Interesting that the 953 suppresses the #4 button when in this mode.

My overall conclusion is that if pool/spa is enabled then the 653 detects whether or not there is a PE5043ME attached to the ā€œserialā€ link. If so, all 5 switches are enabled and pool/spa mode is controlled by switch 39. If not, pool/spa is controlled by switch 4.

Although the physical switch 4 on the 953 is disabled, I believe that the switch 4 on the ST App will control pool/spa in your case (and @gt1gt1). Likewise, if you either use the P/S button on the 953, or the pool/spa button in the ST app that the ST app should show switch 4 changing at the same time.

Please confirm this in case I am still missing something. Thanks for all the info!

@KeithR, @Barrett_Richardson,
Finally got a chance to work on this. I have the same scenario having a P4043ME wired for my valve control. After reading the switch 4 comment, I just used the stock DTH and turned on switch 4 which kicked everything over. I then changed the DTH with @Barrett_Richardsonā€™s change, and was able to switch modes (only tested SPA to POOL), but assuming works the other direction. On a side note, I changed the name of switch 4 to Hot Tub, then did a discover in Alexa, and was able to do a turn on/turn off via Alexa. Thank you both for everything you have done!!

Awesome. Good validation of the issue. And I too got Alexa communicating which has been the #1 goal of this adventure for me!

@Barrett_Richardson, While you were sniffing the 953, did you happen to catch the Heating event? Now that we know that if you have a PE4XXX attached and need to monitor switch 4 for Pool/Spa, Iā€™m wondering if we just need to monitor switch 5 to capture ā€œHeatingā€, and as such can leverage the Heating Tile just by tying it to switch 5 status (since it looks like it is only On/Off to flip the status). @KeithR, any insight is greatly appreciated.

@gt1gt1. We shouldnā€™t even need the sniffer to track down the heating event, the DTH logging should help me, now that we understand that the PE4243 behaves differently than the PE5043.

If you could just capture a log from the DTH of the heater being commanded on and off. The easiest way would be setting the spa temperature up until you physically confirm the heater turned on, then set back down to turn off. Try not to change any other settings (switches, speeds, etc) at the same time.

Iā€™ll be looking at the ManufacturersProprietary messages coming from the PE653.

I can do the sniffer but I am not sure what I am doing. The 653 calls for heat by closing switch 5 based on the current temp and set temp. I donā€™t know if switch 5 is an override to turn it off despite the temp setting but I can try that. Is your heater wired to the 653?

@gt1gt1, any luck pulling those logs?

This will help me determine if I can tell what type of expansion module is attached and avoid needing to add a new configuration item that you have to set depending on your module. I assume most people wonā€™t know without digging around in their panel.

Thanks for your help!

@KeithR, Sorry for the delay. Steps to produce logs below are as follows (starting with system off)

  1. Increase temp on 953 to a setpoint above current pool temp
  2. Turn on Speed Setting 3 (Produced logs at this point)
  3. Decreased temp on 953 below pool temp (addtional logs generated)

Let me know if you need anything else.

Thanks

79451464-fb0c-4b05-98db-2afb75ae8780 11:51:20 PM: debug <<<<< rspFlg=true dly:1000/1000
<<<<< Event: ā€œoffā€ to child: 28-ep5:Pool Heater Trigger
<<<<< Event: [name:switch5, value:off, isStateChange:true, displayed:true, descriptionText:(switch5 set to off), linkText:Pool Controller]
<<<<< Event: [name:temperature, value:74, unit:F, displayed:true, isStateChange:true, linkText:Pool Controller, descriptionText:Pool Controller temperature is 74Ā°F]
<<<<< Event: [name:clock, value:23:50, displayed:false, descriptionText:PE653 Clock: 23:50, isStateChange:true, linkText:Pool Controller]

79451464-fb0c-4b05-98db-2afb75ae8780 11:51:20 PM: debug respType:84 oldResp: [5, 64, 2, 2, -124, -1, 16, 2, 20, 0, 2, 1, 72, 71, 0, 23, 49, 1, 0, 0, 4, 3, 4, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

79451464-fb0c-4b05-98db-2afb75ae8780 11:51:19 PM: debug ManufacturerProprietary event, [1]:40 [4]:84 payload: 05 40 02 02 84 00 10 02 04 00 02 01 4A 47 00 17 32 01 00 00 04 03 04 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

79451464-fb0c-4b05-98db-2afb75ae8780 11:50:50 PM: debug respType:84 oldResp: [5, 64, 2, 2, -124, -1, 16, 2, 20, 0, 2, 1, 72, 71, 0, 23, 49, 1, 0, 0, 4, 3, 4, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

79451464-fb0c-4b05-98db-2afb75ae8780 11:50:50 PM: debug ManufacturerProprietary event, [1]:40 [4]:84 payload: 05 40 02 02 84 FF 10 02 14 00 02 01 48 47 00 17 31 01 00 00 04 03 04 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

79451464-fb0c-4b05-98db-2afb75ae8780 11:50:49 PM: debug <<<<< rspFlg=true dly:1000/1000
<<<<< Event: ā€œonā€ to child: 28-ep5:Pool Heater Trigger
<<<<< Event: [name:switch5, value:on, isStateChange:true, displayed:true, descriptionText:(switch5 set to on), linkText:Pool Controller]
<<<<< Event: ā€œonā€ to child: 28-ep9:Pool High
<<<<< Event: [name:swVSP3, value:on, isStateChange:true, displayed:true, descriptionText:(swVSP3 set to on), linkText:Pool Controller]

79451464-fb0c-4b05-98db-2afb75ae8780 11:50:49 PM: debug respType:84 oldResp: [5, 64, 2, 2, -124, 0, 16, 2, 4, 0, 2, 1, 72, 71, 0, 23, 49, 1, 0, 0, 0, 3, 4, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

79451464-fb0c-4b05-98db-2afb75ae8780 11:50:49 PM: debug ManufacturerProprietary event, [1]:40 [4]:84 payload: 05 40 02 02 84 FF 10 02 14 00 02 01 48 47 00 17 31 01 00 00 04 03 04 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

@gt1gt1, is your heater wired to Switch 5? (independent of power of course) There is an update to the remote that changes the display (shows ā€˜5ā€™ and the word ā€˜heatingā€™), but there is no signal the 953 for pressing ā€˜5ā€™ in my case. Changing the set point (or water temp change) causes the 653 to call for heat by closing switch 5 (or opening the switch to turn heater off) and letting primary and secondary controllers (ST or 953) know that it happened as near as I can tell.

What behavior are you wanting?

@Barrett_Richardson, I am honestly just looking to leverage the heating tile to show the status. Not a requirement by any stretch. Iā€™m figuring if I can read the switch 5 on/off status, it would accomplish the goal. Not sure if the change below would do it. I guessed at the 05 based on 04 change for the Pool/Spa switch.

Original: def getHEATER_87 () { 15 }
Revised: def getHEATER_87 () { 05 }

@Barrett_Richardson/@KeithR,
Have either of you had any issues getting the pool setpoint to take? Not sure if there is a delay on it setting, or something else going on. If you guys can recommend any debug suggestions, Iā€™d greatly appreciate it.

Thanks!!

I think that would do it.

That has worked for me. But I rarely change it.

@gt1gt1, for the heater tile you have the right idea, but I donā€™t see getHEATER in mine. However, if you change device.heater to device.switch5, I think you get the effect you want. Worked for me. Like so:

	standardTile("heaterTile", "device.switch5", width: 2, height: 1, canChangeIcon: true) {
		state "off",        label: "heater off",   icon: "st.Health & Wellness.health2",  backgroundColor: "#ffffff"
		state "on",         label: "*HEATING*",  icon: "st.Health & Wellness.health2", backgroundColor: "#bc2323"
	}