Z-Wave Multi Channel (PE653)


Here's the untested 3.03 code: p653-dth/intermatic-pe653-pool-control-system-v303-hubitat.groovy at master · JMack89427/p653-dth · GitHub

I'll test after the party :slight_smile:


Oops, one minor thing. I forgot to update the version string that appears in logs. Please update the following line:

def getVERSION () {"Ver 3.03"}


I updated the version and did a quick functionality test. Everything seemed to work just fine and I noticed a few of the fixes you mentioned. Looks great and thanks again!

Edit: I'm seeing this error -

[dev:192]2018-07-15 21:58:55.873:errorjava.lang.NullPointerException: Cannot invoke method size() on null object on line 1914 (parse)

[dev:192]2018-07-15 21:58:55.816:tracel -> null

[dev:192]2018-07-15 21:58:55.814:warn..... Exception in Parse() null - description:zw device: 08, command: 8614, payload: 20 01 exceptioon java.lang.NullPointerException: Cannot invoke method toJson() on null object


Morning. I will have a moment (or 3) to test over the next few days. Of note really quick... when I select 'Quick Water Temp' I get this log:

dev:2572018-07-19 08:25:23.500:warnMultiInstanceCmdEncap: Could not de-encapsulate!!!

dev:2572018-07-19 08:25:23.495:debugzwaveEventCmdEncap cmd=MultiInstanceCmdEncap(command:16, commandClass:37, instance:3, parameter:[0])

dev:2572018-07-19 08:25:23.493:debugmultiinstancev1.MultiInstanceCmdEncap cmd=MultiInstanceCmdEncap(command:16, commandClass:37, instance:3, parameter:[0])

dev:2572018-07-19 08:25:23.492:debug>>>>> MultiInstanceCmdEncap(command:16, commandClass:37, instance:3, parameter:[0]) - description:zw device: 38, command: 6006, payload: 10 25 03 00

dev:2572018-07-19 08:25:23.065:debug<<<<< rspFlg=false dly:1500/1500 <<<<< Dev cmd: MultiInstanceCmdEncap(command:2, commandClass:37, instance:16, parameter:[]) --> 6006102502, delay 1500 <<<<< HubAction: 910005400102870301, delay 1500 <<<<< HubAction: 910005400101830101

dev:2572018-07-19 08:25:23.024:debug+++++ getChanState(16)

dev:2572018-07-19 08:25:23.022:debug+++++ getTestCmds

I will test the pump and other functions tonight.

Thank You.


Hi @keithriley. I’ve been playing with the device for about a week now. Everything seems to work well except for the quick get temp function.

Just an update.


Thanks @JDogg016, great feedback. I’ll take a look at the QuickTemp function.

Thanks to the hospitality of @CAL.hub, I believe I have a fix for those users having trouble setting the temperature. It seems there are actually TWO variants of firmware v3.4. They work exactly the opposite on how to set the “thermostat”, so no single implementation will work on both. Exacerbating the issue is that Intermatic did not bother to change the version number so I can’t even use that to tailor behavior. I am testing a method that “learns” the appropriate behavior by trying both ways. I hope to have. New version in the next few days. More to come...


I’d like to take a poll here to validate my firmware theory: please check your PE953 remote firmware screen and indicate which of these two (or other) version you have, AND whether or not you are able to set the temperature using the DTH:
(1), my version:

(2). CAL7 versión:


Wish I could help but I don’t have the remote setup at all. As to the FW on the device.



Howdy y'all! New to the forums, and excited to see this particular handler in progress! I'm hoping to be able to help - @JMack89427, can I submit pull requests on your code?


. . . .and, is there anything pending/open? I don't see any issues listed in the repo. But if there's something simple, I'd love to start working with it. I'm going to switch my hot tub over from SmartThings soon.


@joshua - feel free to do whatever you'd like with the code that's out there. I'm just converting Mike's code from ST to Hubitat so if we want to get a more community-centric repo to work from I'm cool with that as well. As far as open issues, the only one that I'm aware of right now is the Quick Get Water Temp function isn't working as expected, although I think @mike.maxwell was looking into that.


Not aware of this issue...


I am looking into the quick set temp issue. I do not believe it is platform dependent. There is also an issue for some users setting the temperature in general, but I have determined that this is due to different Intermatic firmware versions, and I am working on a fix to adapt Accordingly. Just been busy lately with relatives in town. You can expect a new update in the days to come.


Referring back to post 186, could I get replies from all of you that have a working PE953 remote please? I have only heard from @JDogg016 and @CAL.hub so far. This feedback is important to create a more robust device handler. Thanks to all.


I have 3.9 mine has problem setting the temp. I am guessing it is the same issue as CAL as that change is probally in mine as well. Is there a way i can test if this is the case?

BTW I have this on my ST ATM, I am pushing staus changes for some decices to hubitat.


@magicshot About a week ago, I sent you PM on Smartthings. Did you see it?


I must have missed it. I just verified your message. I looks like that did it for me. So we have the same issue. Thanks CAL & Keith!


I got this fixed. The quickgetwatertemp function was pointing to getTestCmds instead of getWaterTemp. I posted the updated code here: https://github.com/JMack89427/p653-dth/blob/master/intermatic-pe653-pool-control-system-v303-hubitat.groovy


Yup. I can confirm this is fixed


Looks like we're getting close. @keithriley , just a reminder... when you update your composite driver for ST & Hubitat with your temp-setting-version-agnostic logic, also don't forget (not that you would :blush:) the temperature 7-bit overflow problem you saw.