Z-Wave Multi Channel (PE653)

The fact that they expect people to even possibly have Windows XP around is a great example of what we're dealing with here. . . .

I'm happy to give it a try, usually these things just need some tweak or another. My version of the driver logs a ton of information - you can DM me for my email if you like, and send me a bunch of info, and we'll see.

Thanks Joshua. I will do that.

@joshua, here are a few basics about VSPs on the 653. Yes, the VSP is a series of 4 switches but there are a few caveats: these 4 switches (multi-channel instances) are not contiguous with the 5 basic 653 switches, they are 16-19 (0x10 - 0x13). They other thing is that they work like radio buttons, turning on any of the four Automatically turns off the any other speed previously set. Turning off the the speed that is on will turn the pump off completely.

The DTH maps the child devices 7-10 to these 4 instances (16-19). As was correctly mentioned above l, child 10 corresponds to VSP speed 4.

There is also logic that parses the ManufacturersProprietary response type 84 to decode which VSP speed is currently on, if any. This last bit is just to complete the picture as The sensing should not be an issue.

The issues weā€™ve had with VSP have mostly been related to Hubitat challenges with the MultiChannel processing and child device issues. Hope this helps.
Keith

Does it ever! Thank you, this is brilliant! Organized and concise. I was puzzling it out from the code and this helps a ton. Thank you @keithriley !

I've gotten some odd 84 events for the first time - non-parseable. They don't seem to be meaningful, and they are rare. I figured the manufacturer-proprietary changes flushed them out. I just wrapped them for now but will see if they add anything.

Awesome job, you guys! I've been a PE653 user on ST for about a year or so now (or is it 2 years?)...
Anyway, amazing to see, now that I've switched to Hubitat, that it works over here, too. Got my HE Monday, switched all my stuff over in the evenings this week, and saved the pool for last. I feared it was going to be some awful task, so I saved it for the weekend, but it literally took about a minute. :slight_smile:

THAT SAID: I have a question regarding setting automations, dashboard tiles, etc....

Since this didn't create multiple devices like ST did, there's no easy way to create individual tiles for, say, the pool light, the filter pump, the vacuum booster, etc., right? What I've done is create virtual switches for each switch and then used Rule Machine for each individual attribute. Essentially, for example,

Created a virtual switch called Pool Light

Created a Rule as below:

Is this considered best practice? I'm still getting used to some of the differences between the two platforms, and with the lack of individual devices created, this is what I could come up with.

Thanks for your help!

OK...I've found a better way. Hopefully you guys will tell me this is the way, or maybe I'll even be able to contribute by showing someone who didn't already know about this solution:

I found Virtual Device Sync, which, OH BOY, makes it simpler, and also solves some other issues I was having with my cirtual switches.

First of all, when you run it, you tell it you want to use the Pool Controller, and it says, yep, there are 5 endpoints. They look like switches...and it creates switches for you:

And then there they are in your devices:

The BIG TIME bonus about these devices is that they follow the state of the physical device. So, for example: When I turn on my Polaris booster pump, the main pool filter pump turns on as well (first, for 30 seconds), as controlled internally by the cleaner function of the PE653. With the virtual switches, there was no way for my dashboard to know that the filter pump was running. I was thinking of creating rules for the virtual switches to follow the physical ones, when I found the above. Now it's super clean and easy.

Maybe some of you are saying, "Duh." Maybe some of you are saying, "STUPID IDEA." If so, please tell me what I'm missing. And on the off chance someone is saying, "Ooh! that's better than what I was doing!", I'm happy I could help in some small way. I've also submitted some pretty nice POOL AND EQUIPMENT ICONS for hopeful inclusion in Sharptools. It would make me very happy to know that the community of PE653 developers and users are using my pool icons on their dashboards. :slight_smile:

2 Likes

My story for 1.5 years. :blush:

I'm curious about your experience with the remote. I recall that pairing the PE653 to ST and the PE953 was an adventure that was one part gathering documented experiences (some from Vera users) and nine parts black magic. Did you pair it? Easy?
Can you give any tips for successful pairing?

Lol I mercifully left that part out. Yes, I did pair it. Yes, it did require that good old black magic. That wasn't included in my 1 minute figure. :joy: I THINK I could do it again quickly?

My tip is that you have to pair the 953 into Hubitat as its own thing, or the 653 will never let you link with it.

The way you get it to pair with HE is, after you have reset the controller, you put HE into zwave inclusion, and then tell the 953 to controller copy -- receive net only. That will cause HE to pair with it, and it will say successful.

It will go "out of range". At this point, you should be able to include device, and it'll be all good.

....I think. You know how it is. You're begging with it and thinking yours will never work, you have a special case, you're gonna have to unpair and redo the whole thing from the start, etc... And then it'll work on you. The basic instructions are on post #238 at the other community thread that I know you know well (I recognize your name and icon). But combine that method with my tips above, and it'll work out somehow.

1 Like

@keithriley Hi, Keith. As I inch closer and closer to converting my PE653 from ST to HE, I recall that (way back) you were looking at some code to allow ST or HE to program schedules. Did that work out? Still on your roadmap?

Thanks for all your help!

I'm gonna copy this that I posted over on ST earlier. Hope no one minds:

Hey all,

So, it seems that somewhere along the way, the development for this driver (which I absolutely love) has made full use of, taken advantage of, and has flourished because of some enhancements in the 3.4 firmware. --And as such, those of us still on 3.3 are operating less-than optimally.

SIMPLY STATED: I want to upgrade my firmware. Iā€™m familiar with the process. But the stick thatā€™s required to do it is discontinued, and it looks like itā€™s expensive and rare if you can even find one online. So Iā€™m wondering: since this is a device that you presumably will have to use ONCE for just a few minutes everā€¦could we possibly work out a borrow situation, or does someone have one lying around that theyā€™d let go for cheap?

Apparently, Frank Pomeroy has retired, and Intermatic no longer will perform the flash for you (not that I want to ship my whole setup in to them anyway). In my years in such communities as these, Iā€™ve found it common that one person who has ā€œthe thingā€ (like an almond router that can flash everyoneā€™s peanut plugs to get power consumption readouts in ST, or an intermatic ZWave stick that is the only thing that can flash the firmware on a PE653/953) wants to help other fellow members out. I donā€™t want to beg or be presumptuous, but it never hurts to ask. :+1:

Now that Iā€™ve asked: Iā€™ll elaborate on my issue, for anyone who cares to continue reading: At some point, an update or two back, my internal timers on all but circuit 1 have ceased to operate the system. In my setup, I have a single speed pump on 1, a booster pump for a cleaner on 3, and a light on 4. Nothing else.
I should note that I can control all these 3 channels just fine with the remote, the buttons on the 653, and through the app. No problem. But even though I have schedules set internally in the 653 on all 3 of those circuits, only the pump on 1 will actually switch as scheduled. So, my vacuum wonā€™t run in the mornings, and my light, which I have a rule set up to turn on every day at sunset, but which I have a 653 schedule set to turn off at 9:30, never turns off.
INTERESTINGLY: I have recently moved my PE653 over to Hubitat, and I was hoping that the fresh start, including a full reset of everything, would inspire the 653 to start working reliably again. IN FACT, after fully resetting and getting everything running right on Hubitat, I set new schedules for all 3 circuits that nightā€¦and THEY WORKED THE NEXT DAY! My pump turned on at 7 am (internal timer), my booster turned on at 8 am (internal timer), they both turned off at 11 am (internal timer), my pump turned on at 6 pm (internal timer), my light turned on at sunset (Hubitat), my light turned off at 9:30 (internal timer), and my pump turned off at 10 pm (internal timer). SUCCESS!!!..untilā€¦it has never worked again. Itā€™s as if once the internal timers have turned off a timer on 3 and 4, it can never turn it back on again.:frowning:
ā€“And this is exactly the same behavior I have had with both ST and Hubitat (both of which were amazingly developed by our good friend @KeithR ). As I mentioned, Iā€™ve suspected that it has something to do with a bug in 3.3 that doesnā€™t much care for the way our automation controllers are doing things.

THANKS FOR THE READ, and hopefully someone wants to help a stranded 3.3er off the lonely island.:slight_smile:
My next move with my pool is to install a variable speed pump, and I really want to make sure Iā€™m well up to date as I add features.

@CAL.hub, a while back I created "commands" in the DTH to program the schedules. But to clarify, a command is just an exposed method that can be called either from a SmartApp or the Rule Machine. I made some posts about the calling parameters and such. I had hoped to create a SmartApp (in ST) to present a UI to use those commands, but alas I have moved to HE and there isn't an App in which to do such UI tricks. Rule Machine is the best option, although I have not yet had an opportunity to test this out, so some trial and error would be in store. They should work. Here's a quick overview:

List setSchedule(Integer endpoint, Integer schedNo, Integer startHour, Integer startMinute, Integer endHour, Integer endMinute) {
List resetSchedule(Integer endpoint, Integer schedNo) {

endpoint is a number 1-10 (5 switches, pool/spa mode, 4 VSP speeds)
schedNo is a number 1-3 indicating which of the 3 schedules should be set
Hour and Minute are the 24-hour time to start and stop.

For example:
setSchedule(1,1,0,0,23,59) // Set Switch 1 sched 1 to turn on at midnight, off at 11:59PM
resetSchedule(1,3) // Reset Switch 1 sched 3 (disable)
setSchedule(7,1,07,00,18,00) // Set VSP 1 sched 1 on at 7AM, off at 6PM

If debug is enabled you should see messages in the log showing any calls you make so you can double check you sent what was intended.

The 953 is the best way to read the schedules to see if they are set as desired.

Let me know how this works out.

Thanks, Keith. Good to hear from you!

I'm perplexed about using the setSchedule. For now, I'm testing this on ST using your v3.05 (therein may be my problem). I see these commands in the DTH.

However, to test, I'm trying a simple action-only piston in webCoRE. The setSchedule command isn't available to me.

Screenshot_20190728-172451

Ideas, please?

Also, what do getSchedule and resetSchedule do?

Does anyone here have a Spa? I ask because about 3-4 months ago, my spa function stopped working.

What I mean by this is I have two (2) actuators that used to turn when I turn on the spa. Now, only one turns.

I did verify that both actuators work, it seems that only one actuator turns when I press the pool/spa button.

Anyone seen this?

Hey everyone, I'm migrating to HE from ST. I have read most of this thread and didn't really find any install directions. Can someone post what's needed? it seems like we may or may not need a multi-channel app/driver. Is there and app that's needed? Also, is the latest driver 3.1.4a? Just let us newbies know.

Thanks!

This is for the newbies like me getting this setup. A few things of note. My PE653 is running firmware 3.4. I pull the directions form the Vera install directions and fixed incorrect information. Also, it looks like the correct stable driver version is 3.1.2. Unless you have problems with VSP then you should run 3.1.4a. I personally am running 3.1.4a, because I have VSP pump and could not get the child switches to work. BTW 3.1.4a didnā€™t solve that problem either.

For me the child switches only show if itā€™s on or off for VSP speeds. The on/off switches for VSP speeds donā€™t work. Switches 1-5 do work.

Here are the steps I followed:

A. Install the PE653 driver:

3.1.2
https://raw.githubusercontent.com/HubitatCommunity/hubitat-zwavemultichannel-pe653/master/intermatic-pe653-pool-control-system.groovy

3.1.4a
https://raw.githubusercontent.com/HubitatCommunity/hubitat-zwavemultichannel-pe653/vsp-support/intermatic-pe653-pool-control-system.groovy

B. Install the child switch driver:

https://raw.githubusercontent.com/erocm123/Hubitat/master/Drivers/switch-child-device.src/switch-child-device.groovy

C. Pair the PE653 and PE953 to HE (from Vera Directions)

RESET EVERYTHING (or just network and keep the PE953 settings)

  1. Wake up the PE953
  2. Press and hold P/S and ENTER for a few seconds
  3. Bring the PE953 near the PE653. (don't worry about where HE is) Choose #2 - REMOVE DEVICE (Mine says REMOVE DEVICE earlier firmware versions might say RESET DEVICE)
  4. On the PE653, press The BUTTON (inside the screwed door). Expect to see SUCCESSFUL
  5. On the PE953 Re-enter the config screen. Choose #1 - RESET CONTROLLER
  6. Choose #1 - RESET NET AND CFG (If you choose only RESET NET you keep all your controller (PE953) settings

PAIR (include) the wired PE653 controller with HE

  1. Bring HE near the PE653. <ā€”I didnā€™t need to do this step
  2. I did ZWave exclude and hit the Button on the PE653
  3. Then I did a ZWave Include
  4. Press The BUTTON on the PE653. It should flash a bit, then the ZWave LED should flash a bit.
  5. This should add the main device

PAIR (include) the PE953 to HE

  1. Bring the PE953 handheld close to HE and get to the config screens again. Specifically, the CNTRL CONFIG (or OPTION) page.
  2. Start ZWave Include
  3. Choose #2 CONTROLLER COPY
  4. Choose #2 - RECEIVE NET ONLY. (Happy days! No battery pull needed!)
  5. It should say Success!

Wait! The PE953 now shows OUT OF RANGE.

PAIR (include) the PE653 and PE953

  1. Get the PE653 and PE953 close together.
  2. On the PE953 handheld, get to the config screens. Specifically, the LEARN MODE page.
  3. Choose 3 - INCLUDE DEVICE
  4. Press The BUTTON on the PE653. You'll see some flashing and you'll see SUCCESSFUL on the PE953 display.
  5. Get to the config screens again. Specifically the CNTRL CONFIG (or OPTION) page.
  6. Choose 1- PRIMARY SCREEN SEL.
  7. Set the PRIMARY SCREEN SEL to PE653 (not ZWAVE).
  8. Press ENTER and ENTER to exit the configuration.

You now have the PE653 and PE953 linked with HE

D: Setup Child devices and settings.

  1. Go to your new Pool device.
  2. Choose the correct settings like Booster pump settings, Type of pool pump (for me it was VSP 4 speed), and such. Save you settings.
  3. Then choose recreate Child Switches.
  4. How you have Child switches.

For me with a 4 speed VSP here is how the child switches looked:

1 - Main Power
2 - Nothing
3 - Booster Pump
4 - Pool Light
7 - VSP 1*
8 - VSP 2*
9 - VSP 3*
10 - VSP 4*

*Only displays On/Off ... On/Off buttons donā€™t work.

Edit

Set VSP to 0 does not wok either

Enjoy!

1 Like

Thank you for doing this!!

I have two issues with the device that may be interpolated and I am curious as to whether anybody else is experienced the same.

  1. Has anyone noticed that Commands can sometimes be unresponsive unless pressed multiple times (I.E.two or three times). I specifically refer to commands that would adjust the temperature of the heater such as quick set pool and quick set spa

  2. I notice any time I run a command, my logs fill with dozens if not hundreds of lines of debug and trace logs regarding the pool device. This happens even when I donā€™t run a command which leads me to believe the device is constantly talking with HE and showing things down. The logs do not bother me but if the device is not doing anything why is it communicating with HE?

The first I have noticed. The second I have not looked for.

Overall my limited experience with HE is this is the case. Often when a command is sent to a device it doesn't work the first time. I'm coming from ST, and did have the same issue there, but not nearly as bad as it is with HE. I have to follow most things up with Checks. Additional HE was suppose to be so much faster...it's not at all. The command execute faster, but the dashboards take forever to load. In general loading of anything is far slower. So I just traded one thing for another.

@keithriley are you seeing these performance issues from the above threads?

Iā€™m sorry I donā€™t know which threads your talking. If that was directed at me.