Redundant ATOs
Posted: Mon Nov 16, 2020 10:23 pm
I want to have both of my ATOs hanging down and be redundant. So essentially, if low ATO and high ATO are BOTH "active" or in the bottom gravity position. I want to add the ATO Timeout so when I run out of water, it won't keep running the ATO aqualifter pump forever and I'll get an alert.
Box1_Port6 is the ATO pump.
I thought this would work, but nope, it doesn't:
This works properly for both ATO, but it does not take in ATO Timeout, which I'd like to add:
Box1_Port6 is the ATO pump.
I thought this would work, but nope, it doesn't:
Code: Select all
if(ReefAngel.HighATO.IsActive())
{
ReefAngel.SingleATOLow( Box1_Port6 );
}
Code: Select all
unsigned long TempTimeout = 60;
TempTimeout *= 1000;
unsigned long ATOTime;
if ( ReefAngel.LowATO.IsActive() && ReefAngel.HighATO.IsActive() && ( !ReefAngel.LowATO.IsTopping()) )
{
ATOTime = millis();
ReefAngel.LowATO.StartTopping();
ReefAngel.Relay.On(Box1_Port6);
}
// If the high switch is activated, this is a safeguard to prevent over running of the top off pump
if ( !ReefAngel.HighATO.IsActive() || !ReefAngel.LowATO.IsActive() )
{
ReefAngel.LowATO.StopTopping(); // stop the low ato timer
ReefAngel.Relay.Off(Box1_Port6);
}