tagyoureit / nodejs-poolController

An application to control pool equipment from various manufacturers.
GNU Affero General Public License v3.0
325 stars 94 forks source link

Pool “on/off” button not working #287

Closed Candurin closed 3 years ago

Candurin commented 3 years ago

Hopefully an easy fix. The “power button”:

05F00DA9-6A2A-47CC-9476-9CEFA472E658

desn’t seem to “stick. I see it temporarily flip the SWCG off but then everything comes back on. The toggle works on the intellicenter app, just not using the dashPanel.

It’s not critical, but, would be nice to have that functionality.

I like using this button, especially today when I have had to empty the skimmer basket 4 times. I want to completely shut off pump and SWCG so I don’t send dogwood petals and pollen strings up the pipe.

rstrouse commented 3 years ago

If you hit this button again. Does it go off. If it does, this is a problem that also plagues the wireless remote for IntelliCenter. What happens is that the command to shut it down works and completes but the indoor controller turns it back on. I believe this is a bug in the IntelliCenter firmware related to their schedule restart function. For now if it comes back on within a second or two turn it back off and it will stay off (the indoor control panel will not turn it back on). It is annoying but if they don't fix it on the next firmware release I will put some code in njspc that can play the game when an ICP turns it back on. This bug was introduced in 1.040 and remained in 1.047.

EDIT: It only does this when the controller thinks that it should still be on. This happens after IntelliCenter turns the circuit on for another reason other than manually turning it on. Fortunately, there isn't very many things like this left in the IntelliCenter firmware but the early releases were pretty rough. For instance it used to continually change your setpoints.

Candurin commented 3 years ago

Tried to double tap it. Exhibits the same behavior. Goes off and then kicks back on. It doesn’t seem to turn the pump off, just the swcg, which also kicks back on immediately.

rstrouse commented 3 years ago

Don’t double tap. Wait a second and do it again. This is the same thing that happens with the wireless remote. I may need to just resend when the controller turns it back on.

Candurin commented 3 years ago

Unfortunately, no combination works. Always automatically turns right back on.

I can do it from the IntelliCenter app for the time being. I’d be glad to test out whatever you need.

rstrouse commented 3 years ago

I will put together some instructions to get a better picture of what might be going on in your system that is different than mine.

rstrouse commented 3 years ago

Ok so follow these instructions carefully so I can decipher what is going on. We are going to capture the information on the RS485 bus to analyze what all the controllers are doing on it. I suspect that I will find njspc turning the circuit off then another controller on the bus turning it back on. This is consistent with what happens on i10PS when the schedules have a hand in setting it.

Step 1:

Turn on the pool from IntelliCenter. We want to start with the pool being on.

Step 2:

In dashPanel click on the hamburger menu and select the Logging tab. Click the Capture Replay button. When the dialog comes up, Please uncheck the Capture Configuration Reload checkbox. If you don't then IntelliCenter will begin reloading the configuration from the panel. image

Step 3:

Click the Begin Capture button then click on the background somewhere to dismiss the Settings popover.

Step 4:

Click Pool to turn it off. Wait a few seconds and try it one more time.

Step 7:

Click the hamburger menu in the upper left again and select the Logging Tab. Then click the Cancel Capture button. This will download a zip file to your browser which I would like you to upload here. image

Candurin commented 3 years ago

Ok. I’m attaching the file as requested.

thanks!

replay.zip

rstrouse commented 3 years ago

I see what is going on. I will have a fix shortly.

Candurin commented 3 years ago

Awesome! Is it something I’m doing? And since you’re being so generous, if you have any suggestions how to make this all work via port forwarding on my home network, I’m all ears. I have the Pi’s static IP address forwarded but that doesn’t seem to work.

rstrouse commented 3 years ago

You need to publish both port 4200 and 5150 in your port forwarding to get it to work.

Candurin commented 3 years ago

You need to publish both port 4200 and 5150 in your port forwarding to get it to work.

I’ll play around some more later. Both are forwarded but no luck. Connects just fine when using the external address while on home network, just not while away.

rstrouse commented 3 years ago

Go ahead and pull njspc. It should now initialize the pool circuit when starting up on an i5P

DrJeff commented 3 years ago

You need to publish both port 4200 and 5150 in your port forwarding to get it to work.

I’ll play around some more later. Both are forwarded but no luck. Connects just fine when using the external address while on home network, just not while away.

On your router you have the external IP addressed forwarded to internal Pi with those two ports, What router model? Maybe I can help

Candurin commented 3 years ago

You need to publish both port 4200 and 5150 in your port forwarding to get it to work.

I’ll play around some more later. Both are forwarded but no luck. Connects just fine when using the external address while on home network, just not while away.

On your router you have the external IP addressed forwarded to internal Pi with those two ports, What router model? Maybe I can help

Netgear R7800 (x4s).

Candurin commented 3 years ago

Go ahead and pull njspc. It should now initialize the pool circuit when starting up on an i5P

It works! Again thanks. Still sorting out port forwarding.

edit: figured out port forwarding. I clicked on the hamburger then connections and manually changed from my network’s static ip address to my external IP address. I have the internal ip and port forwarded and this appears to work fine.

rstrouse commented 3 years ago

Awesome. Glad we could get you going. Closing this issue open another if you need more help.