ATO with Alerts - disabling after cumulative count

mginster

Community Member
View Badges
Joined
Sep 22, 2012
Messages
73
Reaction score
33
Rating - 0%
0   0   0
I am setting up an ATO and cannot get the behavior I want when combining it with alerts. The ATO works fine, but shuts off after reaching a cumulative count for the "Alert after" value. I need it to reset the count every time it finishes topping off. IE a normal ATO...

Check Freq - 3s
Alert after - 12s
Disable on alert - Enabled

It will topoff (adding 3s to counter) and keep working until it gets to a total of 12s and then disable. It needs to reset the counter each time the sensor sees water.
 
OP
OP
M

mginster

Community Member
View Badges
Joined
Sep 22, 2012
Messages
73
Reaction score
33
Rating - 0%
0   0   0
I then thought of just having a second ATO setup for a higher float switch that can disable the normal ATO if it sticks on. I configured a SUMP HIGH ATO that fires a Macro that disables the main ATO. After doing so, I can no longer turn any ATO on/off and the system froze until I deleted the new ATO.

I found the root cause, if you configure an ATO to execute a Macro it ALWAYS will execute it no matter sensor state. This apparently also freezes up the system after a bit.
 
Last edited:

Sral

Valuable Member
View Badges
Joined
May 2, 2022
Messages
1,006
Reaction score
976
Location
Germany
Rating - 0%
0   0   0
I am setting up an ATO and cannot get the behavior I want when combining it with alerts. The ATO works fine, but shuts off after reaching a cumulative count for the "Alert after" value. I need it to reset the count every time it finishes topping off. IE a normal ATO...

Check Freq - 3s
Alert after - 12s
Disable on alert - Enabled

It will topoff (adding 3s to counter) and keep working until it gets to a total of 12s and then disable. It needs to reset the counter each time the sensor sees water.
I think that’s not the typical operation. As far as I understand you have a check period and let the ATO pump work until the signal is correct again on the next check period.

The alert and disable on run time is mostly a security feature for empty ATO containers and stuck float switches. If the run time counter were to reset on every signal that is still zero, it would never catch the issues mentioned above, since the signal either stays zero because the container is empty and the pump runs hot uselessly, OR because the signal stays zero because the sensor is stuck and the tank is overflowing.

You want the max run time so high that it doesn’t trigger on normal operation but low enough to stop erroneous behavior as early as possible. Normal operation is dependent on the typical travel height of your float switch, the Area of your tank and the speed of your top-Off pump. Basically:

Rough travel height*tank area = rough refill volume

Rough refill volume / rough pumping speed = rough normal refill time

I then thought of just having a second ATO setup for a higher float switch that can disable the normal ATO if it sticks on. I configured a SUMP HIGH ATO that fires a Macro that disables the main ATO. After doing so, I can no longer turn any ATO on/off and the system froze until I deleted the new ATO.

I found the root cause, if you configure an ATO to execute a Macro it ALWAYS will execute it no matter sensor state. This apparently also freezes up the system after a bit.
Very nice error tracing ! I ran into the exact same problem trying to design the same backup-float for somebody.
 
Last edited:

Sral

Valuable Member
View Badges
Joined
May 2, 2022
Messages
1,006
Reaction score
976
Location
Germany
Rating - 0%
0   0   0
I also wouldn’t set the check period too short as it provides a somewhat natural protection against signal instability from waves.

Basically if you have waves every second, you would not want the period a few seconds as well, since it might stop the ATO pump prematurely if the check happens on a wave high, where it would immediately start again shortly afterwards if the check happens on a wave low. I would set the check period to maybe half the time it typically takes for a single ATO event ?

I don’t however have any practical experience, so maybe other people (@Ranjib , @theatrus , @bishoptf spring to mind) can provide their tried and tested values (together with tank size, sensor type and refill pump type, maybe)
 
OP
OP
M

mginster

Community Member
View Badges
Joined
Sep 22, 2012
Messages
73
Reaction score
33
Rating - 0%
0   0   0
I think that’s not the typical operation. As far as I understand you have a check period and let the ATO pump work until the signal is correct again on the next check period.

The alert and disable on run time is mostly a security feature for empty ATO containers and stuck float switches. If the run time counter were to reset on every signal that is still zero, it would never catch the issues mentioned above, since the signal either stays zero because the container is empty and the pump runs hot uselessly, OR because the signal stays zero because the sensor is stuck and the tank is overflowing.

You want the max run time so high that it doesn’t trigger on normal operation but low enough to stop erroneous behavior as early as possible. Normal operation is dependent on the typical travel height of your float switch, the Area of your tank and the speed of your top-Off pump. Basically:

Rough travel height*tank area = rough refill volume

Rough refill volume / rough pumping speed = rough normal refill time


Very nice error tracing ! I ran into the exact same problem trying to design the same backup-float for somebody.

I am not saying it should reset every iteration of defined frequency, but rather reset once the sensor flips (shows water again). Without that, the Alert time will be TOTAL EVER allowed to topoff..until you reset stats..that is not right.

Also, I dont have a wave concern as its in the sump.
 

Sral

Valuable Member
View Badges
Joined
May 2, 2022
Messages
1,006
Reaction score
976
Location
Germany
Rating - 0%
0   0   0
I am not saying it should reset every iteration of defined frequency, but rather reset once the sensor flips (shows water again). Without that, the Alert time will be TOTAL EVER allowed to topoff..until you reset stats..that is not right.

Also, I dont have a wave concern as its in the sump.
I'm still not getting why the alert timer would always trigger. If that were the case, more people would be complaining, I guess.
I mean, @Ranjib is using that feature for years as far as I know.

What values are you using ? still 12 seconds max ?
 
OP
OP
M

mginster

Community Member
View Badges
Joined
Sep 22, 2012
Messages
73
Reaction score
33
Rating - 0%
0   0   0
Yeah, 12 with a 3s frequency. So after 4 topoffs it shuts off due to alert trigger.
 

Sral

Valuable Member
View Badges
Joined
May 2, 2022
Messages
1,006
Reaction score
976
Location
Germany
Rating - 0%
0   0   0
Yeah, 12 with a 3s frequency. So after 4 topoffs it shuts off due to alert trigger.
I believe you might be using incorrect values.

If you disable the alert while being there (which is a value of 0 I think ?) and look how long it typically takes for the ATO to shut off by itself, you have to set the alert timer to a higher value than that.

With your current settings it checks every 3s. When it detects a low it starts the equipment (not 100% sure here, might also be triggering on a high, but you can easily reverse that on the Inlet-connector setting in the configuration-tab).
ReefPi then re-checks every 3 seconds, if the signal is still wrong, it keeps going.
If the signal is right again, the equipment is turned off.
If during this process the signal stays wrong longer than your 12s the alert is triggered and the ATO deactivated if you use that setting.
I believe your pump is probably taking longer than 12s to top off your sump ?

So I would recommend testing how long your top-off pump typically takes to top-off fully and then set the frequency to half that time and the alert to maybe double that ?
 
OP
OP
M

mginster

Community Member
View Badges
Joined
Sep 22, 2012
Messages
73
Reaction score
33
Rating - 0%
0   0   0
This is all controlled tests on my dining table, I dont need to calculate anything about actual topoff time yet.

I am simply triggering the topoff to watch values. When I trigger the topoff even for just an instant, it will add 3s to the counter since that is the frequency. I can then wait a minute, trigger it again, and it will add 3 more seconds. If I keep doing this till it gets to 12 it will then fire the alert and disable the topoff since it hits my 12s Alert threshold. I am never actually topping off for a full 12s, its all in smaller increments that add up.
 
Last edited:

Sral

Valuable Member
View Badges
Joined
May 2, 2022
Messages
1,006
Reaction score
976
Location
Germany
Rating - 0%
0   0   0
This is all controlled tests on my dining table, I dont need to calculate anything about actual topoff time yet.

I am simply triggering the topoff to watch values. When I trigger the topoff even for just an instant, it will add 3s to the counter since that is the frequency. I can then wait a minute, trigger it again, and it will add 3 more seconds. If I keep doing this till it gets to 12 it will then fire the alert and disable the topoff since it hits my 12s Alert threshold. I am never actually topping off for a full 12s, its all in smaller increments that add up.
Now I understand, thanks.
I would agree that this is not ... quite how I would expect this to work as well.

So you are triggering the float switch by hand at more or less the check time and then let go again? That should result in the pump running 3 seconds every time and then shutting off. Correct ?
 
Last edited:
OP
OP
M

mginster

Community Member
View Badges
Joined
Sep 22, 2012
Messages
73
Reaction score
33
Rating - 0%
0   0   0
Now I understand, thanks.
I would agree that this is not ... quite how I would expect this to work as well.

So you are triggering the float switch by hand at more or less the check time and then let go again? That should result in the pump running 3 seconds every time and then shutting off. Correct ?

Yep, correct. I have a glass of water with the non-contact on it, I move it to a no water area to trigger the sensor for just 1s. It does run the pump (a lamp I have plugged in) for 3s as expected. You can then see it graphs the 3s time. If I then trigger it again it graphs 6s and so on till 12 and shuts the ATO off.
 

Sral

Valuable Member
View Badges
Joined
May 2, 2022
Messages
1,006
Reaction score
976
Location
Germany
Rating - 0%
0   0   0
Yep, correct. I have a glass of water with the non-contact on it, I move it to a no water area to trigger the sensor for just 1s. It does run the pump (a lamp I have plugged in) for 3s as expected. You can then see it graphs the 3s time. If I then trigger it again it graphs 6s and so on till 12 and shuts the ATO off.
Absolutely agree that this is weird. Sry if I made you feel misunderstood.

@Ranjib I guess this is intended behavior. What's the reason for this method, vs. the continuous runtime per event variant ?
I guess waves are one possible reason. What's the reset time for the pump usage ? I sadly could not find this easily in the ATO code on Github.
 

Inamo

Active Member
View Badges
Joined
Jul 4, 2023
Messages
107
Reaction score
76
Location
Crestview
Rating - 100%
1   0   0
Off subject from the issue you discovered, but what I did to prevent an overflow should my contactless not work was to use a float switch to break the circuit. I wired a float switch into the circuit going from the GPIO to the #1 pin(1 input) on the ULN2803 IC. That way if the float switch is raised and "open" it breaks the circuit. The #18 pin (1 output) goes to my outlet #1, which is specifically for my ATO pump.
 
OP
OP
M

mginster

Community Member
View Badges
Joined
Sep 22, 2012
Messages
73
Reaction score
33
Rating - 0%
0   0   0
Off subject from the issue you discovered, but what I did to prevent an overflow should my contactless not work was to use a float switch to break the circuit. I wired a float switch into the circuit going from the GPIO to the #1 pin(1 input) on the ULN2803 IC. That way if the float switch is raised and "open" it breaks the circuit. The #18 pin (1 output) goes to my outlet #1, which is specifically for my ATO pump.
Yeah that is what I am working on. I have robotank and it natively has a Float switch backup for AC1 and AC2 power ports.
 

When to mix up fish meal: When was the last time you tried a different brand of food for your reef?

  • I regularly change the food that I feed to the tank.

    Votes: 14 34.1%
  • I occasionally change the food that I feed to the tank.

    Votes: 16 39.0%
  • I rarely change the food that I feed to the tank.

    Votes: 8 19.5%
  • I never change the food that I feed to the tank.

    Votes: 2 4.9%
  • Other.

    Votes: 1 2.4%
Back
Top