tagyoureit / nodejs-poolController

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

Chlorinator goes offline when setting to 16% #338

Closed truvec closed 3 years ago

truvec commented 3 years ago

Chlorinator goes offline when setting it to 16%. On the Aquarrite the no flow led blinks and the controlled remotely led goes off. This happens when set via Pool Control dashboard or via MQTT.

I have a Nixie single body with intelliflo vs and Hayward aquarite.

replay 2.zip

tagyoureit commented 3 years ago

It looks like the pump is turning off and then you are trying to set the chlorinator. Am I reading this right? There isn't anything special about setting the chlorinator to 16%.

rstrouse commented 3 years ago

What is odd is that the AquaRite doesn't respond when sending the action 17 with a value of 16. It seems to do its thing correctly at 15 and 17.

The other thing that is weird is that it responds to the action 0 and relinquishes control but by the time it hits 7 retries trying to get the chlorinator to respond it probably times out until the next 0 message is sent. It always gives back control but Aquarite does not respond to the 16% setting no matter what.

The no flow led blinking is a clue. If the no flow light is flashing then the circuitry in the chlorinator will stop responding to commands and eventually lead to communication lost. Are you right at the minimum flow for the cell? If you are then there is the chance that the current draw on the cell at 16% is such that it messes with the flow switch. I am thinking de-bounce timing.

Increase the flow and see if you can keep it running at 16%

truvec commented 3 years ago

Increased flow and still goes offline.

rstrouse commented 3 years ago

For some reason your Aquarite doesn't like 16%. That is very bizarre. Am I reading the logs correctly in that it works at 15 and 17 just not 16?

truvec commented 3 years ago

That's correct.

rstrouse commented 3 years ago

I don't know what to do about that. The operation is sending the messages perfectly the chlorinator is just not responding to setting the value to 16%. Just to give you an idea of what is happening. The moment you changed the chlorinator to 16% as signified by the smiling poop. njsPC went to work to tell the chlorinator to get in line. So it sent a message to the chlorinator telling it that we will be in control this is message 5958. The chlorinator then responded on message 5959 with yes master.

Then we tell the chlorinator to set the percentage to 16 with message 5960 which we repeat over and over again trying to get the chlorinator to respond and it never does. This is why you are getting the results you are currently getting. The chlorinator simply will not take 16% for an answer.

image

Fast forward to you changing the setpoint to 17. This is signified by the smiling poop line. Then followed by some pump messages that have no bearing on this and finally we tell the chlorinator that we want to be in control with message 5980. The chlorinator immediately response with message 5981... yes master. Then we tell the chlorinator to set its output to 17% with message 5982. To which it responds immediately (unlike when we tried 16%) with message 5983 telling us... as you wish. Interestingly the salt reading is also provided on this message and it is 56 x 50 = 2800. This by the way is low and right at the point where the chlorinator should stop working. Bear in mind that the conductivity sensor in these units are only accurate +-500ppm when they are working properly. Have you tested the salt lately and is the sensor perhaps starting to fail?

image

truvec commented 3 years ago

I added 40lbs and am back up to 3100ppm. It still goes offline at 16%.

rstrouse commented 3 years ago

I am out of suggestions. The chlorinator is just not accepting 16% as a value that it can digest. njsPC is sending and receiving all of the correct values but the chlorinator just doesn't like the number 16. Weird. I have an IC40 and it doesn't have any issues with 16%. Does it work fine with 18%? What are the chances that it only likes odd numbers. But then 100% would fail as well and that can't be right.

tagyoureit commented 3 years ago

Chlor 16

I had a chance to look into this for a few minutes, and, well color me silly... this is something new. The packets for setting the chlor to 15% and 17% are the same, but the packet for 16% has an extra 0 in the payload. I don't think I've ever seen anything like that before.

Pull the latest.

truvec commented 3 years ago

OK- Yes it does now set to 16%. Do you need to see the output?

Thanks!

tagyoureit commented 3 years ago

Nope, all good. Thanks for confirming. Sweet 16!!!