Page 1 of 1

Re: Notification for ATO Low

Posted: Wed Nov 12, 2014 7:06 am
by howaboutme
Lee...Looked over your code a bit last night. I saw the wifialert but that's where my understanding stopped. Need some more direction...pleeeeaassseeee..... :)

Re: Notification for ATO Low

Posted: Wed Nov 12, 2014 8:27 pm
by lnevo

Code: Select all

static WiFiAlert myAlert;
myAlert.SetDelay(3600); // send every hour, default is 15 minutes

// Turn off Skimmer if waste collector is full.
if (ReefAngel.LowATO.IsActive()) { 
  myAlert.Send("Skimmate+container+full!+Skimmer+disabled.");
  ReefAngel.Relay.Override(Skimmer,0);
}

Re: Notification for ATO Low

Posted: Sat Nov 15, 2014 9:13 am
by howaboutme
Thanks Lee. After a few days, I've noticed that the portal notifications work fine for me. Since it's every 5 minutes, my ATO will run somewhere in between that and it has triggered the alert each time. I'll keep my code simple for now.

Re: Notification for ATO Low

Posted: Sat Nov 15, 2014 7:09 pm
by howaboutme
Another question..I want to add a delay after wc mode.

Can I just add this (time is controlled by portal):

Code: Select all

ReefAngel.Relay.DelayedOn( Port1 )
After this:

Code: Select all

ReefAngel.SingleATOLow( Port1 )
So it looks like this:

Code: Select all

ReefAngel.SingleATOLow( Port1 );
ReefAngel.Relay.DelayedOn( Port1 );
ReefAngel.DayLights( Port3 );
ReefAngel.ActinicLights( Port4 );
ReefAngel.Relay.DelayedOn( Port5 );
ReefAngel.DosingPumpRepeat1( Port6 );
ReefAngel.StandardHeater( Port8 );
ReefAngel.DCPump.UseMemory = true;
ReefAngel.DCPump.DaylightChannel = None;
ReefAngel.DCPump.ActinicChannel = Sync;
Since I already have port 5 on delay start, can I combine port 1 into the same line or vice versa or does each port have to have it's own? Thanks!

Re: Notification for ATO Low

Posted: Sun Nov 16, 2014 4:18 am
by rimai
It won't work.
The last line would always take effect ad disregard the previous ones.
So, ReefAngel.SingleATOLow( Port1 ); would never do anything.

Re: Notification for ATO Low

Posted: Sun Nov 16, 2014 5:05 am
by lnevo
Each would need its own line and if you repeat a port like that as Roberto said, they overwrite each other. We'll have to write a timer and have an if else to have it control the ATO. I'll throw together some code later

Re: Notification for ATO Low

Posted: Sun Nov 16, 2014 7:04 am
by howaboutme
Is it something similar to this:

Code: Select all

    {
static time_t wcTimer;
    if (ReefAngel.DisplayedMenu == WATERCHANGE_MODE) wcTimer=now();
    if (now()-wcTimer > 0 && now()-wcTimer < 600) {
     ReefAngel.Relay.Off(Port8);
    } else {
      ReefAngel.WaterLevelATO(Port8,720,0,1);
    }
Except replace this:

Code: Select all

ReefAngel.WaterLevelATO(Port8,720,0,1)
With this:

Code: Select all

ReefAngel.SingleATOLow( Port1 )
And adjust the time to whatever I want?

Re: Notification for ATO Low

Posted: Sun Nov 16, 2014 7:59 am
by lnevo
Yes exactly. Except the first { is an artifact of wherever you got it from.

Re: Notification for ATO Low

Posted: Sun Nov 16, 2014 3:18 pm
by howaboutme
Thanks. I'll give a shot but realized something last night during my water change.

I put the relay that the ATO pump is on to off during wc. I realized that after the water change, my ATO clear was triggered. In theory, if the ATO clear is triggered each time, why would I need to do the time delay if I need to manually clear the ATO anyways? Am I thinking about this way too deeply?

Re: Notification for ATO Low

Posted: Sun Nov 16, 2014 4:46 pm
by lnevo
Did you have it in ReefAngel.WaterChangePorts? Not sure I follow the sequence.

Re: Notification for ATO Low

Posted: Sun Nov 16, 2014 6:12 pm
by howaboutme
lnevo wrote:Did you have it in ReefAngel.WaterChangePorts?
Yes, it's part of it.