t.priscu
New member
spent a few more mins on it and roberto at RA helped me with some syntax questions.
anyways here is the last update seems to be working well so far.
static unsigned long nexttoggle=now();
static boolean state=false;
int cycle=nexttoggle-now();
ReefAngel.Relay.Set(Port5,state);
ReefAngel.Relay.Set(Port6,!ReefAngel.Relay.Status(Port5));
if ( (hour()>=9 && hour()<15))
{
if (cycle<0)
{
nexttoggle+=random(35,45);
state=!state;
}
if (cycle<5)
{
ReefAngel.Relay.On(Port5);
ReefAngel.Relay.On(Port6);
}
}
else if ( (hour()>=15 && hour()<21) )
{
if (cycle<0)
{
nexttoggle+=random(15,20);
state=!state;
}
if (cycle<8)
{
ReefAngel.Relay.On(Port5);
ReefAngel.Relay.On(Port6);
}
}
else if ( (hour()>=21 && hour()<24) )
{
if (cycle<0)
{
nexttoggle+=random(35,45);
state=!state;
}
if (cycle<5)
{
ReefAngel.Relay.On(Port5);
ReefAngel.Relay.On(Port6);
}
}
else
{
if (cycle<0) nexttoggle+=90;
if (cycle<30)
{
ReefAngel.Relay.On(Port5);
ReefAngel.Relay.Off(Port6);
}
if (cycle > 30 && cycle < 60)
{
ReefAngel.Relay.Off(Port5);
ReefAngel.Relay.Off(Port6);
}
if (cycle < 60)
{
ReefAngel.Relay.Off(Port5);
ReefAngel.Relay.On(Port6);
}
}
anyways here is the last update seems to be working well so far.
static unsigned long nexttoggle=now();
static boolean state=false;
int cycle=nexttoggle-now();
ReefAngel.Relay.Set(Port5,state);
ReefAngel.Relay.Set(Port6,!ReefAngel.Relay.Status(Port5));
if ( (hour()>=9 && hour()<15))
{
if (cycle<0)
{
nexttoggle+=random(35,45);
state=!state;
}
if (cycle<5)
{
ReefAngel.Relay.On(Port5);
ReefAngel.Relay.On(Port6);
}
}
else if ( (hour()>=15 && hour()<21) )
{
if (cycle<0)
{
nexttoggle+=random(15,20);
state=!state;
}
if (cycle<8)
{
ReefAngel.Relay.On(Port5);
ReefAngel.Relay.On(Port6);
}
}
else if ( (hour()>=21 && hour()<24) )
{
if (cycle<0)
{
nexttoggle+=random(35,45);
state=!state;
}
if (cycle<5)
{
ReefAngel.Relay.On(Port5);
ReefAngel.Relay.On(Port6);
}
}
else
{
if (cycle<0) nexttoggle+=90;
if (cycle<30)
{
ReefAngel.Relay.On(Port5);
ReefAngel.Relay.Off(Port6);
}
if (cycle > 30 && cycle < 60)
{
ReefAngel.Relay.Off(Port5);
ReefAngel.Relay.Off(Port6);
}
if (cycle < 60)
{
ReefAngel.Relay.Off(Port5);
ReefAngel.Relay.On(Port6);
}
}