Pentair IntelliCenter Review and Information

Hey all, I am going to chime in here on a couple of topics.

Virtual Circuits:
I noticed a couple of posts back the notion of the unidentified lists of circuits on the webapp. These are virtual circuits that fall outside of the common aux circuits, features, and groups. Command level states like Pump Speed +/-, All Lights On/Off, and Heat Boost/Enable that lurk around in the menus like this are really there as selections for remotes. Unfortunately, they aren't filtered out in some of the webapp. The others like Pool Heater, Spa Heater, Freeze, and Solar are only set based upon conditions of the other equipment in the pool. They are calculated states and the OCP (Outdoor Control Panel) sets these whenever specific conditions are met. In the end these are used to trigger things like valves, pump speeds and even covers. I can only speculate but the most likely reason they show up in inappropriate places is because the the ids for these are all mixed together and haven't been filtered appropriately in the web app. That means there should be a separate list for groups, pumps, remotes, and valves.

IntelliValve:
I am going full on techie here so bear with me. The IntelliValve protocol continues to be elusive. While there is much talk about the stubborn "I am Groot" message, here is an example of one.
[255, 0, 255][165, 1, 16, 12, 82, 8][0, 128, 216, 128, 57, 64, 25, 166][4, 44]
The brackets from the left to the right are as follows [255, 0, 255] is an RS485 preamble and is nothing of note. This simply notifies the communications that a message is about to follow. The bytes in the next set of brackets [165, 1, 16, 12, 82, 8] are the header for the message. 165 is a controller code, 1 is a channel code, 16 is the destination address of which 16 is broadcast and 12 is a source address. 82 indicates an action or command and 8 is the length of the next set of bytes which happen to be the data payload. This header is constant for all "I am Groot" messages sent and the last two bytes [4, 44] is simply a checksum so that those reading the data can know that the message is complete.

The most important part of this message is the payload. Here is what we know about the payload. As of today, it always starts with 0, 128. This could be simply a placeholder but it could make sense that this is the minimum and maximum setpoints capable for the valve in question (although 0, 180 would seem to make more sense but 128 is also -0). We know it is not the current status nor does it represent the current endpoints of the valve. No matter what you do on the valve, the message is always the same...I am Groot. That being said it could also change once we have addressed the valve. The following 6 bytes are unique to each valve we have witnessed in the wild. Interestingly anyone familiar with network adapter addresses could draw the conclusion that 6 bytes = MAC address. While these aren't NICs this very well could be the hardware address of the valve. We have noticed that valves manufactured around the same time seem to have similar 4 byte values from the start of the suspected address. Heck 0, 128 could be the OUI for all we know (for those of you familiar with MACs). The ones below are manufactured in 2019 and the one above in 2016.
[255, 0, 255][165, 1, 16, 12, 82, 8][0, 128, 128, 31, 18, 75, 154, 185][3, 235]
[255, 0, 255][165, 1, 16, 12, 82, 8][0, 128, 128, 31, 18, 76, 39, 119][3, 55]
[255, 0, 255][165, 1, 16, 12, 82, 8][0, 128, 128 31, 18, 79, 209, 34][3, 143]

This is why we believe it to be an address for the valve. Ok, so if this is an address we now need to determine what might trigger the valve to pick up what we are laying down. I suspect that the destination address will not be 12 when we send it back. The reason is that the kids on the RS485 bus seem to be addressed as follows.
12 = Hail (I am Groot) iChlor also sends a notification on 12 and we have heard of this address being anecdotally reported for unidentified equipment.
15 = OCP (Outdoor Control Panel)
16 = Broadcast (To whom it may concern)
32-35 Aux Control Panels (32 = Spa Command, 33 = Slaves, 34 = ScreenLogic, 35 = iLink)
96-111 = Pumps
113-128 = Heaters/Heatpumps
144-159 = Chem Controllers
The way this works can be illustrated by how you talk to a pump on the RS485 bus. First you send it a request from one of the addresses to the address of the pump. For instance 16 to 96 and the pump will respond from 96 to 16. This will talk to pump #1. Pump #2 will be 97... etc. Perhaps somewhere in the values 0-255 with the aforementioned excluded the address of the valve can be set. Addresses prior to 12 are probably not it (primarily because you need 26 spaces). So this leaves something in the range of 36-95 or 160-255. If each valve eventually gets its own RS485 address then there needs to be 26 potential addresses for the range. This is assuming that the valve is addressed to the system.

The primary reason for doing this is so that the valve can be identified by a single byte rather than carrying around 6 bytes for the internal functions of the valve. Any equipment monitoring the status from the valve or commands to the valve don't have to process every byte on the bus. It can simply stop reading on the 3rd byte in and wait for the next preamble. There are a lot of messages on this bus and if the valve had to pick each one of them up to determine if the 6 bytes exist then yikes. This will also likely map the valve ids as they are for non-IntelliValve CV24s in the controller. If this follows the Pentair protocol habits the action will be 82, 210, or 81 but even that byte is suspect.

I am pretty sure the valve does not store more than one set of setpoints. That would be illogical and groot does not contain anything regarding the current state of the valve although 0, 128 could have some meaning once it is controlled. As I said above this could also be an OUI if the tech gets licensed to someone else. Who knows Jandy has that goofy Smart JVA and Hayward has that manly looking automated ball valve (I guess if it's on a ball valve).

So who's up for solving a puzzle that is a conundrum wrapped in an enigma?
r,
1. Thanks for taking care of that big question mark going around in my brain regarding the "virtual circuit" entries that show up when attempting to create a feature circuit in the web client. Makes total sense now after your explanation.

2. Great summary on the IntelliValve status at this point. I had to read it about 4 times and only wish that I could say that it makes complete sense to me. :p But it does make a little more sense than what I got after the first read lol... Hey, you warned us you were going "full on techie". No doubt there lol....

BTW, message received over on the other side regarding what specifically to ask for regarding the IntelliValve. I, just like yourself and others, are not giving my effort a "snow balls" chance, but I've drafted my response and am preparing to send (along with the attachments that show that they are willing to provide the API's that @guinness, so timely reminded me of). I might as well take advantage of my current dialogue with management there while it still exists (for how much longer it will exist after this next email, I'm not sure lol....)

Anyway, thanks for all of the fine efforts!
I'll try to get that download and schedule edit test done tomorrow.
Thanks again.... (y)
r.
 
  • Like
Reactions: cmc0619
So who's up for solving a puzzle that is a conundrum wrapped in an enigma?

It's funny your speaking in network terms. When I saw it on the RS-485 sniff I instantly thought it looked like a DHCP request. What about the 10000 monkeys with typewriters writes Shakespeare approach? What if there was program that has a few formats we suspect it might be and recursively go through and try all the different combinations of values until we get something back that's different than what we expect? Good ole fashion brute forcing.
 
Talking of MAC addresses they are normally shown on equipment. Each Intellivalve has a sticker w/ part and serial numbers but also a third 8 digit number that is unique - is that possibly used for identification?
 
Talking of MAC addresses they are normally shown on equipment. Each Intellivalve has a sticker w/ part and serial numbers but also a third 8 digit number that is unique - is that possibly used for identification?
Discussion thread. Probably, but no one has been able to decipher the link between the sticker and the valve communication ("I am Groot") message... yet.
 
Discussion thread. Probably, but no one has been able to decipher the link between the sticker and the valve communication ("I am Groot") message... yet.

For others looking in that long thread, here is the post in question. Another nugget of information is that while the actuator is in operation all communication ceases.


This seems like something to post on Reverse Engineering, if given a few messages w/ corresponding identifiers from Intellivalve sticker they might be able to decode.

 
Last edited:
@MyAZPool - as always, thanks for all the feedback. Do you happen to know if the promised version 1.047 deals with the light syncing issues or if that will only be a future release?
SA Pentair User
All I see regarding lighting after v1.040 is the following:
v1.041 - Added LEDs to swim/sync/set buttons.
v1.043 - wizard: Updates for group circuit color settings, swim and color settings.
v1.045 - Changing a Light Group circuit member from a Light Type to a non-light type and then turning off all the remaining lights does not auto turn off group.
- Changing a Light Group circuit member to a non-light type disallows one from removing the circuit from the group.
r.
 
  • Like
Reactions: SA Pentair User
Hi all.
I've noticed an increase of downtime on the IntelliCenter Prod servers recently. Could be a good thing I guess (improvements and maintenance) or maybe not! :rolleyes:
Anyway, for what it's worth, here is a roll-up of recent IntelliCenter server downtime. Times indicated are PDT.
r.

2020-08-11_11-29-37.jpg
 

Enjoying this content?

Support TFP with a donation.

Give Support
Thanks for the update Ron, it might also be good to cross post on Intellicenter cloud down thread.

I had bookmarked your earlier post #358 from June and a couple of remarks below seem relevant.

The recent server problems are mostly due to increased user load impacting server capacity as well as "load-sharing" and other "back-end" issues.

Migrate all IntelliCenter users to a more "robust" hosting platform.
 
Thanks for the update Ron, it might also be good to cross post on Intellicenter cloud down thread.

I had bookmarked your earlier post #358 from June and a couple of remarks below seem relevant.
G.,
Oh yea. Forgot about that one. I'll do that as well.
True, it could be for improvement.
r.
 
Hi All...
Recently I fielded a question regarding the use of EGG TIMER with regards to CIRCUIT GROUPS.
The Op indicated that although he set the EGG TIMER and ensured that the "Don't Stop" box was unchecked, the CIRCUIT GROUP would remained ON after the expired time of the EGG TIMER.

I tested a CIRCUIT GROUP on my system and it worked as advertised. I set a 5 minute EGG TIMER and saved the particular CIRCUIT GROUP configuration. Then I activated that CIRCUIT GROUP and after 5 minutes, it shut off.

Hmmm, why did mine work and the op's didn't? :scratch: Well, he actually figured it out. He indicated that maybe it was because he was running the latest publicly released firmware V1.040 and I was running a much more recent BETA version.

It appears that is the "ticket". I searched the release notes on all of the later BETA versions and this is what I found.

Version 1.045​
- Groups Egg Timer not working either manually or within running schedules if Manual Op Priority is On.​
Version 1.041​
- Changed Shared Memory configuration for MAPSET_group_circuits​
- Wizard: Support Circuit Groups implemented.​
My guess is, that the fix in V1.045 fixes the described issue but it could be the other two as well. I know that it mentions "Manual Op Priority is On" but the OP did not have that checked either and so I don't think it really matters either way.

So, if you have a need or desire to use EGG TIMER for a CIRCUIT GROUP, find that it doesn't work and you are running the latest version of the publicly released firmware V1.040, then you may want to give Pentair Tech Support a call and ask them for BETA V1.045, in order to correct this issue.

Thanks...
r..
 
  • Like
Reactions: Turbo1Ton
IntelliCenter users...

Since the original posting of this IntelliCenter Review and Information thread, there have been several significant developments and advancements relating to alternative IntelliCenter Controllers / Interfaces. Some of which may introduce several advantages over the Pentair proprietary option of control and interfacing with the IntelliCenter OCP for some IntelliCenter users. One such controller / interface option is the nodejs-poolController and associated nodejs-poolController-dashPanel. Details regarding these alternatives to include setup and configuration, can be found in the following link.
r.
 
Last edited:
In previous firmware releases they included a ReleaseNotes.txt file in the archive under Resource/ReleaseNotes, but not this time.

Also the file naming convention (update-ocp-1-047.pfw) indicates this is outdoor control panel (OCP) only, not indoor or wireless.

Update: Based on "Include ReleaseNotes.txt in to IC Binary as a Resource File" can confirm they show in /opt/intellicenter/v1.047/ic.
 
Last edited:
All,
As @SA Pentair User reported earlier, Firmware v1.047 has been publicly released this a.m. This release also includes v1.046.
I compared these two publicly released versions to their respective beta versions and there were three additions to the publicly released version of 1.046, (the last three items in the v1.046 list).

Here is the download link as there is no guarantee of an "over-the-air-update" (OTA).

In addition, although I cannot confirm the following, it is rumored that once you upgrade your firmware to 1.047, you cannot revert back to an earlier version. I can only speculate on what the reasoning is, if this is in fact true.

The following are the release notes for these two firmware versions.

version 1.47
- Modified Linux Script, /BootManagerMigration/bmmig.sh to clean up old format pfw files

version 1.046
- Schedule Set Temperature in SubPanel Windows not synched with OCP and webclient. Revised code to eliminate saving and restoring schedule heat source and set temperatures.
- Intellichem acid tank level keeps going back to 0 when external device values modified instead of intellicenter user interface.
- IntelliChlor Super Chlorinate Timer overrun.
- No heating under 55 deg water temp for UltraTemp or Heat Pump.
- Implement Hybrid and Connected Heater Alerts in icweb. Revise internal heater status implementation and shared memory object support.
- Add Flame Strength and other Fenwall Alerts for Connected Heaters. Revise alerts due to updated specs.
- ICWEB: IntelliChlor Alert Emails Not Sent.
- Alert Emails contain empty bodies.
- Removed Differential Temp with +/- buttons from UltraTemp Setup screen.
- Filter Pump Not Active when Cleaners are On.
- Master Cleaner functionality fixed: timer issue.
- Valve Does not Rotate when MasterCleaner Assigned.
- Display ip address on main window (Development Mode Only)
- Light groups: individual light color won’t save color choice.
- Include ReleaseNotes.txt in to IC Binary as a Resource File (in QRC).
- IntelliChem Water Temp Always Obtained from Body2.
- Fix Security for Chemistry Summary and Alerts and Notifications screens.
- IC Crashes when the GroupEditWindow is timed out to show main window.
- IC crashes when "Alerts and Notifications" Window is left open and when it times out to show "Pool and Spa" Window.
- Random Generated number to check the Firmware Update is not Random.
- Integrate OTA with BootManager.
- Remove the OCP and SubPanel Packages When the Checksum don't match after Download during OTA.
- USB Firmware Import and New version mismatch screen, the "update via USB" does not place the
firmware file in the Downloads folder for Boot Manager to install.
- Boot Manager re-Launch Intellicenter (IC) while working on wizard.
- Update Popup Window does not appear in the OCP
when a new Firmware is detected.
- Added constants PANEL_ENABLED and PANEL_DISABLED.- Reset the OTA MemoryMap when the User Selected
NO to install the downloaded Firmware package.
- Fix for wizard launch logic in preparation for BootManager roll out.
- Add Configure Button in the Version Mismatch Popup (OTA).
- Disable "Update from Control Panel" button when the SubPanel versions are greater than Master OCP Version.
- Disable "Update from Control Panel" button in OTA Version Mismatch popup when the Firmware
Package for SubPanels doesn't exist in the OCP.
- Changed "Config Subpanel id" to Configure <PanelType> Panel" in FirmwareVersionMismatch popup.
- Added vmConfigExpansion.txt help text for OTA
Version Mismatch Popup.
- Added 485 HighSpeed compiler switch HIGHSPEED_485 to Enable/Disable in Release/Debug Mode.1
- Fixed issue where "Update from Outdoor Control Panel" is enabled when the OCP doesn't have SubPanel Package.
- V1.040 IC crashes in ICP when OCP is updated to V1.046.
- OTA Transfers OCP Firmware Package To Incorrect Folder in OCP.
- Remove Firmware packages from /opt/downloads Folder when the User Selected "NO to install For AUTO install.
- Wizard: Weekly Schedule Heat Mode set to OFF and will not change.
- Wizard: Preferred Option Not Removed from schedule Heat Mode if Gas Heater Deleted.
- Wizard: Hybrid Heat Mode Selections in Schedule do not show "Only" where needed.
- Wizard: Cooling Temp Not Shown In Pool/Spa Schedules When Enabled for Heater.

r.
 
Last edited:
All,
As @SA Pentair User reported earlier, Firmware v1.047 has been publicly released this a.m. This release also includes v1.046.
I compared these two publicly released versions to their respective beta versions and there were three additions to the publicly released version of 1.046, (the last three items in the v1.046 list).

Here is the download link as there is no guarantee of an "over-the-air-update" (OTA).


In addition, although I cannot confirm the following, it is rumored that once you upgrade your firmware to 1.047, you cannot revert back to an earlier version. I can only speculate on what the reasoning is, if this is in fact true.

The following are the release notes for these two firmware versions.

version 1.47
- Modified Linux Script, /BootManagerMigration/bmmig.sh to clean up old format pfw files

version 1.046
- Schedule Set Temperature in SubPanel Windows not synched with OCP and webclient. Revised code to eliminate saving and restoring schedule heat source and set temperatures.
- Intellichem acid tank level keeps going back to 0 when external device values modified instead of intellicenter user interface.
- IntelliChlor Super Chlorinate Timer overrun.
- No heating under 55 deg water temp for UltraTemp or Heat Pump.
- Implement Hybrid and Connected Heater Alerts in icweb. Revise internal heater status implementation and shared memory object support.
- Add Flame Strength and other Fenwall Alerts for Connected Heaters. Revise alerts due to updated specs.
- ICWEB: IntelliChlor Alert Emails Not Sent.
- Alert Emails contain empty bodies.
- Removed Differential Temp with +/- buttons from UltraTemp Setup screen.
- Filter Pump Not Active when Cleaners are On.
- Master Cleaner functionality fixed: timer issue.
- Valve Does not Rotate when MasterCleaner Assigned.
- Display ip address on main window (Development Mode Only)
- Light groups: individual light color won’t save color choice.
- Include ReleaseNotes.txt in to IC Binary as a Resource File (in QRC).
- IntelliChem Water Temp Always Obtained from Body2.
- Fix Security for Chemistry Summary and Alerts and Notifications screens.
- IC Crashes when the GroupEditWindow is timed out to show main window.
- IC crashes when "Alerts and Notifications" Window is left open and when it times out to show "Pool and Spa" Window.
- Random Generated number to check the Firmware Update is not Random.
- Integrate OTA with BootManager.
- Remove the OCP and SubPanel Packages When the Checksum don't match after Download during OTA.
- USB Firmware Import and New version mismatch screen, the "update via USB" does not place the
firmware file in the Downloads folder for Boot Manager to install.
- Boot Manager re-Launch Intellicenter (IC) while working on wizard.
- Update Popup Window does not appear in the OCP
when a new Firmware is detected.
- Added constants PANEL_ENABLED and PANEL_DISABLED.- Reset the OTA MemoryMap when the User Selected
NO to install the downloaded Firmware package.
- Fix for wizard launch logic in preparation for BootManager roll out.
- Add Configure Button in the Version Mismatch Popup (OTA).
- Disable "Update from Control Panel" button when the SubPanel versions are greater than Master OCP Version.
- Disable "Update from Control Panel" button in OTA Version Mismatch popup when the Firmware
Package for SubPanels doesn't exist in the OCP.
- Changed "Config Subpanel id" to Configure <PanelType> Panel" in FirmwareVersionMismatch popup.
- Added vmConfigExpansion.txt help text for OTA
Version Mismatch Popup.
- Added 485 HighSpeed compiler switch HIGHSPEED_485 to Enable/Disable in Release/Debug Mode.1
- Fixed issue where "Update from Outdoor Control Panel" is enabled when the OCP doesn't have SubPanel Package.
- V1.040 IC crashes in ICP when OCP is updated to V1.046.
- OTA Transfers OCP Firmware Package To Incorrect Folder in OCP.
- Remove Firmware packages from /opt/downloads Folder when the User Selected "NO to install For AUTO install.
- Wizard: Weekly Schedule Heat Mode set to OFF and will not change.
- Wizard: Preferred Option Not Removed from schedule Heat Mode if Gas Heater Deleted.
- Wizard: Hybrid Heat Mode Selections in Schedule do not show "Only" where needed.
- Wizard: Cooling Temp Not Shown In Pool/Spa Schedules When Enabled for Heater.

r.
Ron,

Just went out to my panel and asked for a firmware update and it said we had the latest version...v1.045. How do I push it to the v1.047?

Edit: Sorry, I see the download link above. Thank you for that. I will do it!
 
Last edited:
Ron,

Just went out to my panel and asked for a firmware update and it said we had the latest version...v1.045. How do I push it to the v1.047?
Go to the download link, put on a thumbdrive, take out to the OCP and upload via the prompts...


r.
 
Last edited:

Enjoying this content?

Support TFP with a donation.

Give Support
Thread Status
Hello , This thread has been inactive for over 60 days. New postings here are unlikely to be seen or responded to by other members. For better visibility, consider Starting A New Thread.