rstrouse / nodejs-poolController-dashPanel

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

Frontend not loading Intellicenter iP5S equipment #3

Closed sparment closed 4 years ago

sparment commented 4 years ago

As reviewed on Gitter, my Intellicenter iP5S pool equipment is not loading on the dashPanel front end after the latest install of PoolController (6.0) and dashPanel. The temperature readings are pulling, but nothing else.

Screen Shot 2020-06-14 at 5 57 31 PM
rstrouse commented 4 years ago

Can you upload the poolConfig.json and the poolState.json files. You might want to remove the owner and location sections from the file. It contains your personal information if you entered it into IntelliCenter. These files are located in the data directory of the poolController.

sparment commented 4 years ago

Where can I find those files? I’m not seeing them on my Pi...

rstrouse commented 4 years ago

In the nodejs-poolController/data directory.

sparment commented 4 years ago

poolConfig.json:

poolConfig.txt

poolState.json:

poolState.txt

rstrouse commented 4 years ago

Ok so it looks like nodejs-poolController is not actually seeing any of your equipment. dashPanel is displaying everything it knows about. So here is what I want you to do. Open the settings dialog under the menu bars on the top upper left. Select all the options as you see them in the screenshot image

Then go to the system tab and press Reload Config. Give it several seconds to start reloading the configuration. When it reaches 100% go back into the logging tab and un-check the Log To File option. If you don't it will continue to log messages to the file and eventually just become a whole lot of pi filling. image

Once all of this is complete go to the nodejs-poolController/logs directory and upload the packetLog(2020-06-14_xx_xx-xx-xx).log file that it generated. The x's will be replaced with the time the log was started.

sparment commented 4 years ago

Here you go:

packetLog(2020-06-14_19-05-01).log

rstrouse commented 4 years ago

Ok, the problem is that the data coming off the serial port is full of invalid messages. As a result, the message that asks the controller for the data does not return any data. What's odd is I am running the same code. The only difference is that I am running through SOCAT.

Here is your message dump and the 228 message that asks the controller to tell us what is installed is just ignored. image

sparment commented 4 years ago

Thanks again for your troubleshooting help. Do you think the serial port issue is on the Intellicenter side or the Pi side or the interface between the two?

rstrouse commented 4 years ago

I am going to talk with Russ tonight. I think that there have been some fixes on node's serial port. Oddly I cannot find any reference to their readable interface which was the practice when we first implemented. Now it looks like they have changed. If I were to push something up could you give it a try? I don't want to do it unless I have someone willing to give it a shot right away.

sparment commented 4 years ago

I am willing, but actually can’t for another few days. As of tonight I had to shut down my system - draining the pool for some repair work. Will likely have the system back online on Thursday.

rstrouse commented 4 years ago

No worries, I am suspect of the nodejs SerialPort. It looks like the interface we are using has been deprecated. I just need to figure out with Russ whether he needs that interface for the mockPort configuration. Oddly, I think we have been seeing this off and on but didn't recognize it until our tools got to a point where we could actually see it failing. In the screenshot I added above, some of the bytes are simply dropped.

The only two things talking at the time are your pump and the OCP. While they look like they may be talking over each other (yes it happens), it looks like the short messages from the pump are getting lost on the serial port. One other user has a similar situation and I am guessing we see the messages as partial some of the time.

Which dongle are you using is it the JBTek or are you using something else?

sparment commented 4 years ago

I’m using a Dtech converter from Amazon. I have another one setup on a separate Pi for my HVAC system and have had no problems:

DTECH USB to RS422 RS485 Serial Port Converter Adapter Cable with FTDI Chip Supports Windows 10 8 7 XP Mac -1.5 Feet https://www.amazon.com/dp/B076WVFXN8/ref=cm_sw_r_cp_api_i_vQT5Eb0KAQBWX

rstrouse commented 4 years ago

Yeah I am wondering if the stream interface is just more susceptible with a chip of a different buffer length. Simply due to the timing on the read and the length of the buffer, our stream will flush at different times. I'm pretty sure the other user with issues is using the same chip.

Unlike RS232 and RS422 the buffer plays a pretty big role. Not sure why but I think it has to do with the timings of the stop bits.

sparment commented 4 years ago

I can try a different adapter to see if that does the trick. Do you have a link or part number?

rstrouse commented 4 years ago

This is the one I am using with success. USB RS485 Adapter

sparment commented 4 years ago

Thanks. I just bought it on Amazon and will give it a try when I get everything back online.

sparment commented 4 years ago

I installed the new adapter, and low and behold I'm in business! The Dash Panel is up and running. Thank you for your help!

rstrouse commented 4 years ago

Awesome! Keep an eye on the updates as we are pushing updates for both poolController and dashPanel frequently. We also, changed the underlying comms to use the updated interface.

sparment commented 4 years ago

Great! Do you know if the Homebridge and MQTT updates for PoolController 6.0 are in the works? Looking to get Pentair control up and running in HoneAssistant and HomeKit!!

rstrouse commented 4 years ago

I think there is a user putting together an interface we'll see if he publishes it. If I had the time I would blow it out MQTT client pretty quickly. I built a webhooks interface emitter into poolController for this purpose, it just needs an MQTT client built for the interface server.

Interfaces have already been created for SmartThings, Hubitat, and Vera. I'm not sure anyone is using ISY so much anymore but there were rumblings of a Node-RED interface in the works as well. I suspect if someone was running OpenHAB, they could create a few bindings and have that operating pretty qucikly too.

My priority was for Vera since I am a masochist. That interface is here nodejs-poolController-veraPlugin. It does the whole enchilada and should be what is capable in all the HA platforms.

sparment commented 4 years ago

Looks like Vera is compatible with HA. I gather I would need a Vera hub though?

rstrouse commented 4 years ago

Yes you would. It is a tinker device and yes there are a lot of HASS users.