Avast ATO and RA+


Posts: 30
Joined: Wed Nov 21, 2012 1:46 pm
PostPosted: Wed May 28, 2014 5:17 pm
I upgraded my head unit to the RA+ and it was either then or shortly after my avast ato stopped working. Is there anything in the new libraries that could be doing this or did my ato just die for some reason? (Pump still works, but nothing will make the trigger unit trigger).

Posts: 12475
Joined: Fri Mar 18, 2011 6:47 pm
PostPosted: Wed May 28, 2014 5:25 pm
Isn't Avast ATO a standalone?
Or you have their controllable with the adapter cable?
Roberto.

Posts: 30
Joined: Wed Nov 21, 2012 1:46 pm
PostPosted: Wed May 28, 2014 5:27 pm
Controllable with the adapter cable.

Posts: 12475
Joined: Fri Mar 18, 2011 6:47 pm
PostPosted: Wed May 28, 2014 5:37 pm
Test the ATO port with the controllertest code
Roberto.

Posts: 30
Joined: Wed Nov 21, 2012 1:46 pm
PostPosted: Wed May 28, 2014 7:17 pm
I have no idea how to do that, sorry =X Can you explain or point me towards a thread?

Posts: 12475
Joined: Fri Mar 18, 2011 6:47 pm
PostPosted: Thu May 29, 2014 8:13 am
File->Sketchbook->Example Codes->ControllerTester
Upload and test the ports.
Roberto.

Posts: 30
Joined: Wed Nov 21, 2012 1:46 pm
PostPosted: Sun Jun 01, 2014 5:53 pm
So I uploaded the code. ATO showed high and low as OPEN. I pulled the ATO probe thing out of the water and it still showed as open. So I am thinking I need to buy a new ATO.

Posts: 12475
Joined: Fri Mar 18, 2011 6:47 pm
PostPosted: Sun Jun 01, 2014 8:19 pm
Just to confirm, before you go buying anything...
Can you unplug the avast ato connector from RA and use a regular float switch?
Roberto.

Posts: 30
Joined: Wed Nov 21, 2012 1:46 pm
PostPosted: Wed Jun 04, 2014 6:51 pm
I assume you were concerned it might be the head unit? I got out my original float switches and plugged them in and it all worked fine. So it seems it is something with the Avast unit or plug.

Posts: 30
Joined: Wed Nov 21, 2012 1:46 pm
PostPosted: Thu Jun 12, 2014 4:15 pm
I got my new ATO switch from AVAST. However I still cannot get it to trigger! Here is a copy of my code, please let me know if you see anything wrong here. I am going to run another controller test to double check things. (I am not too great with the coding yet so something might be wrong that I never noticed)

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 <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
    // Ports toggled in Feeding Mode
    ReefAngel.FeedingModePorts = Port3Bit | Port5Bit | Port6Bit | Port8Bit;
    // Ports toggled in Water Change Mode
    ReefAngel.WaterChangePorts = Port3Bit | Port5Bit | Port6Bit | Port7Bit | Port8Bit;
    // Ports toggled when Lights On / Off menu entry selected
    ReefAngel.LightsOnPorts = Port4Bit;
    // Ports turned off when Overheat temperature exceeded
    ReefAngel.OverheatShutoffPorts = Port7Bit;
    // Use T1 probe as temperature and overheat functions
    ReefAngel.TempProbe = T1_PROBE;
    ReefAngel.OverheatProbe = T1_PROBE;
    // Set the Overheat temperature setting
    InternalMemory.OverheatTemp_write( 810 );


    // Ports that are always on
    ReefAngel.Relay.On( Port3 );
    ReefAngel.Relay.On( Port8 );
    ReefAngel.Relay.On( Port5 );
    ReefAngel.Relay.On( Port6 );

    ////// Place additional initialization code below here
   

    ////// Place additional initialization code above here
}

void loop()
{
    ReefAngel.StandardLights( Port1,13,30,22,30 ); //set for actinic
    ReefAngel.SingleATO( false,Port2,900,0 ); //15 min time out
    ReefAngel.StandardLights( Port4,14,0,22,0 ); //set for white light
    //removed wavemaker functions because I don't want them turning off
    ReefAngel.StandardHeater( Port7,775,780 );
    ReefAngel.PWM.SetDaylight( PWMSlope(13,30,22,0,15,100,30,15) );
    //ReefAngel.PWM.SetActinic( PWMParabola(13,0,22,30,15,100,15) );
    ////// Place your custom code below here
    // prevent auto top off from 2200 to 1200
    if (hour()>12 && hour()<22)
      ReefAngel.SingleATO( false,Port2,600,0 );
    else
      ReefAngel.Relay.Off( Port2 );
   
// Skimmer delay after feed or wc, 60 minutes

     ReefAngel.Relay.DelayedOn( Port3,60 );


    ////// Place your custom code above here

    // This should always be the last line
    ReefAngel.Portal( "Squishie89" );
    ReefAngel.ShowInterface();
}

void DrawCustomMain()
{
    int x,y;
    char text[10];
    // Parameters
#if defined DisplayLEDPWM && ! defined RemoveAllLights
    ReefAngel.LCD.DrawMonitor( 15, 14, ReefAngel.Params,
    ReefAngel.PWM.GetDaylightValue(), ReefAngel.PWM.GetActinicValue() );
#else // defined DisplayLEDPWM && ! defined RemoveAllLights
    ReefAngel.LCD.DrawMonitor( 15, 14, ReefAngel.Params );
#endif // defined DisplayLEDPWM && ! defined RemoveAllLights
    pingSerial();

    // Salinity
    ReefAngel.LCD.DrawText( COLOR_DARKKHAKI,DefaultBGColor,15,54, "SAL:" );
    ReefAngel.LCD.DrawText( COLOR_DARKKHAKI,DefaultBGColor,39,54, ReefAngel.Params.Salinity );
    pingSerial();

    // pH Expansion
    ReefAngel.LCD.DrawText( COLOR_MEDIUMSEAGREEN,DefaultBGColor,15,75, "PHE:" );
    ReefAngel.LCD.DrawText( COLOR_MEDIUMSEAGREEN,DefaultBGColor,39,75, ReefAngel.Params.PHExp );
    pingSerial();

    // Water Level
    ReefAngel.LCD.DrawText( COLOR_DARKGOLDENROD,DefaultBGColor,75,75, "WL:" );
    ReefAngel.LCD.DrawText( COLOR_DARKGOLDENROD,DefaultBGColor,99,75, ReefAngel.WaterLevel.GetLevel() );
    pingSerial();

    // Main Relay Box
    byte TempRelay = ReefAngel.Relay.RelayData;
    TempRelay &= ReefAngel.Relay.RelayMaskOff;
    TempRelay |= ReefAngel.Relay.RelayMaskOn;
    ReefAngel.LCD.DrawOutletBox( 12, 95, TempRelay );
    pingSerial();

    // Date and Time
    ReefAngel.LCD.DrawDate( 6, 122 );
    pingSerial();
}

void DrawCustomGraph()
{
}
Next

Return to Ask anything here

Who is online

Users browsing this forum: No registered users and 2 guests

cron