grnegnhm
Posts: 8 Joined: Wed Dec 04, 2013 6:50 am
Post
by grnegnhm » Sun Feb 04, 2018 6:47 am
for some reason my ato is not functioning. When i operate it through the app it works fine but it will not come on automatically when my float is low.
Code: Select all
#include <ReefAngel_Features.h>
#include <Globals.h>
#include <RA_Wifi.h>
#include <Wire.h>
#include <OneWire.h>
#include <Time.h>
#include <DS1307RTC.h>
#include <InternalEEPROM.h>
#include <RA_NokiaLCD.h>
#include <RA_ATO.h>
#include <RA_Joystick.h>
#include <LED.h>
#include <RA_TempSensor.h>
#include <Relay.h>
#include <RA_PWM.h>
#include <Timer.h>
#include <Memory.h>
#include <InternalEEPROM.h>
#include <RA_Colors.h>
#include <RA_CustomColors.h>
#include <Salinity.h>
#include <RF.h>
#include <IO.h>
#include <ORP.h>
#include <AI.h>
#include <PH.h>
#include <WaterLevel.h>
#include <Humidity.h>
#include <DCPump.h>
#include <PAR.h>
#include <ReefAngel.h>
////// Place global variable code below here
////// Place global variable code above here
void setup()
{
// This must be the first line
ReefAngel.Init(); //Initialize controller
ReefAngel.Use2014Screen(); // Let's use 2014 Screen
// Ports toggled in Feeding Mode
ReefAngel.FeedingModePorts = 0;
// Ports toggled in Water Change Mode
ReefAngel.WaterChangePorts = Port1Bit | Port2Bit;
// Ports toggled when Lights On / Off menu entry selected
ReefAngel.LightsOnPorts = 0;
// Ports turned off when Overheat temperature exceeded
ReefAngel.OverheatShutoffPorts = Port4Bit | Port6Bit;
// Use T1 probe as temperature and overheat functions
ReefAngel.TempProbe = T1_PROBE;
ReefAngel.OverheatProbe = T1_PROBE;
// Set the Overheat temperature setting
InternalMemory.OverheatTemp_write( 835 );
// Ports that are always on
ReefAngel.Relay.On( Port1 );
ReefAngel.Relay.On( Port8 );
ReefAngel.Relay.On( Box1_Port2 );
ReefAngel.Relay.On( Box1_Port3 );
ReefAngel.Relay.On( Box1_Port4 );
////// Place additional initialization code below here
////// Place additional initialization code above here
}
void loop()
{
ReefAngel.Relay.DelayedOn( Port2,8 );
ReefAngel.StandardLights( Port3,19,0,10,0 );
ReefAngel.StandardLights( Port4,14,0,20,0 );
ReefAngel.StandardHeater( Port6,790,800 );
ReefAngel.SingleATO( true,Port7,180,0 );
////// Place your custom code below here
rimai
Posts: 12857 Joined: Fri Mar 18, 2011 6:47 pm
Post
by rimai » Mon Feb 05, 2018 1:26 pm
Did you test the port and float switch?
Do you have it connected too the correct ato port?
Roberto.
grnegnhm
Posts: 8 Joined: Wed Dec 04, 2013 6:50 am
Post
by grnegnhm » Mon Feb 05, 2018 8:53 pm
Yes,
When the float is activated, it shows on the app that it is in the low position. But the pump relay dos not activate.
rimai
Posts: 12857 Joined: Fri Mar 18, 2011 6:47 pm
Post
by rimai » Mon Feb 05, 2018 10:09 pm
Strange.
Everything looks fine.
Can you try the High ATO port?
Roberto.
grnegnhm
Posts: 8 Joined: Wed Dec 04, 2013 6:50 am
Post
by grnegnhm » Tue Feb 06, 2018 3:59 pm
i switched the port that the float was plugged into and the ATO high indicated red when the float was floated. Is that good enough for a test?
should i try the other float? I cannot see how that would help though i am kind of grasping at straws. I was really hoping you would find a flaw in the code.
Is there another way to write the ATO line to see if maybe a slightly different syntax would work?
rimai
Posts: 12857 Joined: Fri Mar 18, 2011 6:47 pm
Post
by rimai » Tue Feb 06, 2018 4:27 pm
So, do you see it turning both red and green as you move the float switches up and down?
I want to make sure both float switches are working and both ports are also working.
Roberto.
grnegnhm
Posts: 8 Joined: Wed Dec 04, 2013 6:50 am
Post
by grnegnhm » Tue Feb 06, 2018 4:27 pm
since i am grasping at straws, i also noticed that my portal seems to think i have a whole second relay box. I do not have one or any other expansion at this time and i did not include it in my code (i used the wizard to make it). I cannot figure out why it has the 8 extra slots when i bring up the portal though.
Maybe this is a clue???
grnegnhm
Posts: 8 Joined: Wed Dec 04, 2013 6:50 am
Post
by grnegnhm » Tue Feb 06, 2018 4:36 pm
I tested my other float and it seems to work. I feel a bit silly but i reconfirmed all of my previous statements. I tested the float i am having issues with and it checks out. But the other float actually works
rimai
Posts: 12857 Joined: Fri Mar 18, 2011 6:47 pm
Post
by rimai » Tue Feb 06, 2018 10:16 pm
And you are positive that it is not on ato timeout, right?
Try this code:
Code: Select all
ReefAngel.Relay.Set(Port7,ReefAngel.LowATO.IsActive());
Roberto.
grnegnhm
Posts: 8 Joined: Wed Dec 04, 2013 6:50 am
Post
by grnegnhm » Thu Feb 08, 2018 5:36 am
it is not in time out, it is working with the other float now