tagyoureit / nodejs-poolController

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

Intellicenter i10ps being recognized as Intellitouch i5+3S #173

Closed cmc0619 closed 4 years ago

cmc0619 commented 4 years ago

replay.zip

Expected behavior and actual behavior

Intellicenter i10ps being recognized as Intellitouch i5+3S

What is actually happening (screenshots are helpful)

Intellicenter i10ps being recognized as Intellitouch i5+3S

Steps to reproduce the problem

npm start

Specifications

  1. What version of the code are you using? 6.0 latest code as of 6/9/2020 - 11:07pm Eastern
  2. All output from the file log (See packet capture)
  3. Any errors that are in the console
  4. Your config.json or in-use configuration file
  5. Your pool equipment
tagyoureit commented 4 years ago

I'm seeing lots of bad/partial packets coming through in your logs. Can you double check your RS485 wiring? You may have the wires backwards.

rstrouse commented 4 years ago

What firmware version are you running in IntelliCenter? Are you running 1.04?

cmc0619 commented 4 years ago

We can check wires. Will let you know the outcome. The webclient does pull the intelliflow vsf stats (rpm/flow/watts) properly so it is getting some data correctly

firmware version is the 1.042 beta.

We're getting nothing but a blank page with some empty rectangles when trying to run dashPanel. Just fired up webclient for the first time last night and the update icon at the top increased super slowly until about 94% and then the little status dot went red and stopped updating. I'm hoping this is all because of the misrecognization.

I've also deleted the two json files in the data folder and re-run the app and it still detects it as an IT

rstrouse commented 4 years ago

Yes this is likely because it is trying to send IntelliTouch requests to IntelliCenter. I am not running the 1.042 beta but am running 1.04 release so the signatures on the bytes probably changed. Pull a new poolController and send the results again. This time it will contain the packet information and any invalid packets flying around. You don't need to run it for any longer than the board detection. After that it is sending stuff that the IntelliCenter will not understand. In fact InelliCenter will insist that poolController doesn't know what it is talking about and will continue to send information in a language that poolController will not understand. That is why it thinks you have an i10x expansion attached.

Pumps, IntelliChem, IntelliValve, and IntelliChlor have standard messages between all the Pentair controllers so these will appear to be OK but the configuration for them is different between *Touch and IntelliCenter. While the status' will work the definition will be wrong.

The dashPanel is probably aborting its load when the information doesn't match so yes it will show empty bubbles. There are a number of places where it expects some level of correct configuration.

cmc0619 commented 4 years ago

replay (1).zip

We removed the intellivalve from the bus since we don't know the protocol for that yet. Shortened the length between the pi and the Intellicenter from 150 ft to 3ft and took another capture. Still showing Intellitouch atm moment. The capture is attached.

And I did a git pull at appx 9pm Eastern 6/14 followed by the usual npm install / npm start

node version is latest 10.x

rstrouse commented 4 years ago

Out of curiosity which USB to RS485 dongle are you using?

cmc0619 commented 4 years ago

https://www.amazon.com/GearMo-Converter-Terminals-Windows-Support/dp/B005CPI0JQ

It's FTDI based.

rstrouse commented 4 years ago

Ok now that I have gone through the replay I see that the fw version is probably 1.047. This was an unexpected signature and have added it to the list of expected signatures. It should now detect IntelliCenter instead of IntelliTouch.

Thanks for the info on the RS485. I have ordered an FTDI based adapter as the one I am using is CH341 based. USB RS485 Adapter

cmc0619 commented 4 years ago

Success! Sort of... the startup message on console now shows Intellicenter. But dashpanel still shows a blank page with the empty bubbles and webclient flashes the display for a second, just long enough to see it, and then the screen goes blank. Tried it in Chrome and IE, same effect both times.

rstrouse commented 4 years ago

That is good news. I have added some additional features to the dashpanel. I am sure there is a change with 1.047 that I don't know about so if I can get you to click the menu bars at the top left of the screen then choose the logging tab and press the capture replay button. On the dialog simply press Begin Capture. Let it run for a couple of minutes or until the status at the top right changes from Loading to Ready. At when the message changes to Ready press the Cancel Capture button and a zip file will download to your browser.

This will contain all the output from IntelliCenter and allow me to see what has changed with 1.047. If you close the Settings window you can open it back up again to press the Cancel Capture. Do not leave this running as the files will grow to be very big after a while. Take the file that has downloaded and upload it here. image

rstrouse commented 4 years ago

Any luck getting the files.

cmc0619 commented 4 years ago

No. Tomorrow for sure! It's not actually my IC. I'm just acting as a tech liaison for a friend who has one so we can get him going with node-red and nodejs-poolcontroller. I was smart and rolled my own from the beginning! :) https://www.youtube.com/watch?v=JXHMt6ylWnM

Question though. Will I be able to see that screen with the capture button? To date we've only ever gotten empty bubbles in dashPanel. When I update the code I do the following. Sanity check?

git pull (usually see some changed files) npm install npm start

That's should be all there is to get a new version right?

rstrouse commented 4 years ago

No worries. You should it will be the bars on the top left of the header.

Update both poolController and dashPanel. Start poolController first then dashPanel. The steps for update sound about right. Also, are you installing both poolController and dashPanel in the same machine. Make sure you have the ip addresses set up for poolController and dashPanel server.

thumbnut commented 4 years ago

I was out of town all day. Will try downloading in the morning.

Thanks

Steve

On Fri, Jun 19, 2020 at 7:21 PM rstrouse notifications@github.com wrote:

Any luck getting the files.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/tagyoureit/nodejs-poolController/issues/173#issuecomment-646922169, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG6A7QBZO6VL3XOHIDM4VPDRXQMKFANCNFSM4NZ645VQ .

cmc0619 commented 4 years ago

replay (2).zip

I changed the IP address (was using loopback) to the ethernet IP in config.json and it all popped up! Was able to see everything. Here's the replay with firmware 1.047

cmc0619 commented 4 years ago

So far we're seeing Chemistry and Heater are empty. Everything else looks good.

rstrouse commented 4 years ago

Awesome. The chemistry, heater, remotes, and covers configuration interface is still in the works. If you have a heater or a chlorinator it should be an option in the main panel If it is configured in IntelliCenter u can control it. To set the heat setpoints click or tap on the body heat area. To change the setpoints on the chlorinator tap on it.

tagyoureit commented 4 years ago

Please reopen or start a new case if you still have trouble. Closing this as resolved.