rstrouse / nodejs-poolController-dashPanel

A dashboard panel for tagyoureit/nodejs-poolController
33 stars 20 forks source link

Need ability to remove or hide second body of water #60

Closed thumbnut closed 1 year ago

thumbnut commented 1 year ago

This app is fantastic.

I have a single pool with no separate spa. The spa jets are in the pool. I have the IntelliCenter with i10PS and it assumes a second body. I was talked into getting this setup. No going back. I would like to have the ability to hide or delete the “pool 2” from the Dashboard. It has no functionality. I can uncheck it in settings but it re-checks itself. Thanks,

thumbnut

tagyoureit commented 1 year ago

Ok, I'll bite... what were you told to get you to buy a shared body system for a single body pool?

And do you use the intake/return valves? Or are your "jets" hooked up to a different valve?

rstrouse commented 1 year ago

Did you uncheck the Show in Dashboard checkbox under the gears menu in Bodies?

thumbnut commented 1 year ago

@tagyoureit - I made a last minute purchase decision change from an IntelliTouch to the IntelliCenter, back in 2018. The Pentair rep talked me into it over the phone when I told him how many features and valves I needed. His brain got stuck on the 12 spa jets, but the fact that they were in the pool went in one ear and out the other. I had no knowledge of the part number differences and trusted the rep. He also talked me into the IntelliValves. Back then I got the story that "in the fall" they would be controlled by the RS485. This was a BYOP project, and the dealer did not know jack about the new hardware. He took the rep's word for everything. The pool build was a total disaster. By the time I was able to even think about the automation it was too late for returns. As for the intake/return valves, I treat them as unusable. Using two other valves for that. I have no spillover. I am making lemonade, as they say.

@rstrouse - I know I unchecked the Spa in Bodies, but it would not stay unchecked. When I went back into the gears menu it was checked again. Must be automatically set by hardware ID. I cannot duplicate the issue since the whole thing is not working today. I spent most of yesterday setting this all up for the first time following Ron's tutorial on TFP, to the letter I might add. Using a rpi 3B+, Samsung Evo+ 32GB card, and the nifty RS485 adapter https://www.amazon.com/dp/B081MB6PN2?psc=1&ref=ppx_yo2ov_dt_b_product_details . I took three tries at running through the entire process and was not able to get the communication going. I have the pi and the IC board set up on my desk, along with one IntelliValve. Both are on ethernet. I finally tried the "Search for a server" on the third attempt and it connected. It was not able to use the explicit IP address, but the raspberrypi.hsd1.az.comcast.net:4200. I was in poolController heaven for a few hours. Unfortunately I powered things down last night. Today it would not connect. I did not set up the auto start on boot so I manually went into the console and started both programs. image I only get what is in the pic. I did end up modifying the rc.local file per instructions, but with no success. On a reboot I can not connect. I will try again tomorrow. Let me know what else you need for log files or other info and thanks for your help.

thumbnut commented 1 year ago

Here is more info that may be helpful:

NPM version is 8.15.1

image

image

image

image

image

image

image

rstrouse commented 1 year ago

Ok lets do a couple of things first. I just had another user that was seeing some weirdo stuff on their network. Have you set up an IP reservation in your router. Unfortunately many of these routers have spotty name service implementation.

I just witnessed one of the xfinity routers changing ip addresses for components on the network randomly. All of his connected devices would go haywire, including njsPC for a few minutes then would eventually come back. I have my theories that some of it is related to QoS for streaming but instead of finding a new IP lease for a streaming port it would reassign connected devices.

Anyhow the fix was simple. Assign a DHCP reservation for your Raspberry Pi. This will ensure it does not reassign it to another IP address at random. Then we do not have to rely on their DNS server resolving a proper IP address. This looks like what comcast is doing with the callback to comcast.net servers.

If there is some sort of mobile app it probably does not contain functions to do this. You will likely need to do this from their web app at http://10.0.0.1.

I will check to see if we are resetting the Show In Dashboard flag. It is possible that IntelliCenter is indicating its existence and we just simply respond to it. This is a function that IntelliCenter does not have but it does have it for the underlying spa circuit and we may be keying off of that.

thumbnut commented 1 year ago

I'm not sure it has anything to do with the router re-assigning IP addresses since I have 3 other rpi 3B+ that have been running 3D printers on the same network with no issue. It is ethernet, not WiFi. On WiFi we have had to do that with one IoT device that switched between 2.4 and 5 GHz randomly. The ethernet devices never change like that. Is it possible to just force the dashPanel to use the explicit IP address of 1.0.0.29? I have been using VNC viewer to run the pi using the IP address and it has been rock solid.

rstrouse commented 1 year ago

Yes simply type 10.0.0.29 into the address field in the connections tab. njsPC will translate it. DNS can be spotty depending on the modem. This is especially true if there are devices on the network with duplicate host names. For instance if there are 3 RPis and all 3 have the name raspberrypi then the DNS services start making stuff up for them and resolve to one ip addresses with that name. Most likely it will be the last one that registered it.

If devices you are using on your network are dependent on their IP address it is wise to assign them a DHCP reservation though in the router. It isn't typically that hard to do and it guarantees that the ip addressed are handed out the same way regardless of their position in the routing table.

thumbnut commented 1 year ago

Is it possible that there is something in the latest release of nodejs or npm or debian causing trouble? It looks like package-lock.json may be an issue.

image

thumbnut commented 1 year ago

I got the app running. (somehow). I used npm run start:cached instead of npm start.

Anyway, back to the original request:

I uncheck Show in Dashboard

image

And as soon as I click Save Body...

image

It re-checks Show in Dashboard.

image

image

rstrouse commented 1 year ago

Hmmm... did you perform an npm i after the git pull?

EDIT: Pull njsPC, I found a path where certain boards were not persisting the showInDashboard flag.

rstrouse commented 1 year ago

Do you always have to run npm i with sudo.

thumbnut commented 1 year ago

I only did that as I have been grasping for straws in an effort to solve the problem. Thought permissions may have been an issue.

On Tue, Aug 2, 2022 at 11:51 AM rstrouse @.***> wrote:

Do you always have to run npm i with sudo.

— Reply to this email directly, view it on GitHub https://github.com/rstrouse/nodejs-poolController-dashPanel/issues/60#issuecomment-1203092418, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG6A7QFE6HQS7EO7XFTBYIDVXFUZJANCNFSM55B6XSJQ . You are receiving this because you authored the thread.Message ID: @.***>

rstrouse commented 1 year ago

Pull njsPC I fixed an issue with the property setter that may have been causing the issue.

thumbnut commented 1 year ago

Is it possible to get an updated install guide that references the latest OS, Node, and NPM packages? Am I the most recent install?

I am using the latest Raspberry Pi Imager, version 1.7.2, using an official Rpi 3B+, and using the recommended micro-SD card.

On Tue, Aug 2, 2022 at 11:51 AM rstrouse @.***> wrote:

Do you always have to run npm i with sudo.

— Reply to this email directly, view it on GitHub https://github.com/rstrouse/nodejs-poolController-dashPanel/issues/60#issuecomment-1203092418, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG6A7QFE6HQS7EO7XFTBYIDVXFUZJANCNFSM55B6XSJQ . You are receiving this because you authored the thread.Message ID: @.***>

rstrouse commented 1 year ago

Sure we have been working on our Quick Start Guide. https://github.com/tagyoureit/nodejs-poolController/wiki/Quick-Start-Guide

thumbnut commented 1 year ago

It worked! Thanks! [image: image.png]

On Tue, Aug 2, 2022 at 1:28 PM rstrouse @.***> wrote:

Pull njsPC I fixed an issue with the property setter that may have been causing the issue.

— Reply to this email directly, view it on GitHub https://github.com/rstrouse/nodejs-poolController-dashPanel/issues/60#issuecomment-1203182246, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG6A7QEGG3SK46YDWMAXXPLVXGAGXANCNFSM55B6XSJQ . You are receiving this because you authored the thread.Message ID: @.***>

thumbnut commented 1 year ago

Seems to be working except I cannot save circuit groups or features. The save button highlights but nothing happens. My workaround is to use the IOS IntelliCenter2 app for those two operations.

[image: image.png]

[image: image.png]

On Tue, Aug 2, 2022 at 1:28 PM rstrouse @.***> wrote:

Pull njsPC I fixed an issue with the property setter that may have been causing the issue.

— Reply to this email directly, view it on GitHub https://github.com/rstrouse/nodejs-poolController-dashPanel/issues/60#issuecomment-1203182246, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG6A7QEGG3SK46YDWMAXXPLVXGAGXANCNFSM55B6XSJQ . You are receiving this because you authored the thread.Message ID: @.***>

rstrouse commented 1 year ago

Pull dashPanel and hard refresh your browser. There was an issue with the Touch controllers that required a name identifier. This function was causing the screen to fail the validation.

thumbnut commented 1 year ago

Tried that but same result. Rebooted the pi. Closed the browser. Used different browsers. Delete works great. Just cannot add feature circuits or circuit groups. I can add AUX circuits.

[image: image.png]

[image: image.png]

On Tue, Aug 2, 2022 at 7:30 PM rstrouse @.***> wrote:

Pull dashPanel and hard refresh your browser. There was an issue with the Touch controllers that required a name identifier. This function was causing the screen to fail the validation.

— Reply to this email directly, view it on GitHub https://github.com/rstrouse/nodejs-poolController-dashPanel/issues/60#issuecomment-1203412901, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG6A7QBTNWER3B7OSDLCPZDVXHKU5ANCNFSM55B6XSJQ . You are receiving this because you authored the thread.Message ID: @.***>

rstrouse commented 1 year ago

Ok I missed a couple of spots where the name identifier from Touch controllers was generating an error when saving. Pull dashPanel and hard refresh your browser.

thumbnut commented 1 year ago

Bingo!

thumbnut commented 1 year ago

Issue with inability to remove or hide second body of water has been resolved. Issue with inability to save Feature Circuits has been resolved. Issue with inability to save Circuit Groups has been resolved. Many thanks rstrouse!

thumbnut commented 1 year ago

This one is a minor nit but the valve type keeps returning back to Standard. These were all labeled IntelliValve before restarting the app.

[image: image.png]

On Wed, Aug 3, 2022 at 8:15 AM rstrouse @.***> wrote:

Ok I missed a couple of spots where the name identifier from Touch controllers was generating an error when saving. Pull dashPanel and hard refresh your browser.

— Reply to this email directly, view it on GitHub https://github.com/rstrouse/nodejs-poolController-dashPanel/issues/60#issuecomment-1204085315, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG6A7QAAZDNEY2DIL6BHWMDVXKEILANCNFSM55B6XSJQ . You are receiving this because you authored the thread.Message ID: @.***>

rstrouse commented 1 year ago

Yeah this is because the setting no longer sticks with the new IntelliCenter firmware so this will be normal until they add support.