Alternating relays for wavemakers

Do you have a question on how to do something.
Ask in here.
Post Reply
User avatar
madweazl
Posts: 44
Joined: Tue Dec 03, 2013 3:08 am
Location: Fredericksburg, VA

Alternating relays for wavemakers

Post by madweazl »

I have a pair of Jebaos (WP25 and a PP8) but dont have the module to control them or the cables yet. In the meantime, I'd like to have them come on at alternating intervals (every two minutes they switch or something similar). How would I go about doing this? Right now, they're on relay 8 and box 1 relay 2. Code is below:

#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.AddStandardMenu(); // Add Standard Menu

ReefAngel.Use2014Screen(); // Let's use 2014 Screen
// Ports toggled in Feeding Mode
ReefAngel.FeedingModePorts = Port1Bit | Port3Bit | Port7Bit;
ReefAngel.FeedingModePortsE[0] = 0;
// Ports toggled in Water Change Mode
ReefAngel.WaterChangePorts = Port1Bit | Port2Bit | Port3Bit | Port8Bit;
ReefAngel.WaterChangePortsE[0] = Port1Bit;
// Ports toggled when Lights On / Off menu entry selected
ReefAngel.LightsOnPorts = Port4Bit;
ReefAngel.LightsOnPortsE[0] = 0;
// Ports turned off when Overheat temperature exceeded
ReefAngel.OverheatShutoffPorts = Port1Bit | Port2Bit | Port3Bit | Port4Bit | Port5Bit | Port6Bit | Port7Bit;
ReefAngel.OverheatShutoffPortsE[0] = Port2Bit;
// Use T1 probe as temperature and overheat functions
ReefAngel.TempProbe = T1_PROBE;
ReefAngel.OverheatProbe = T1_PROBE;
// Set the Overheat temperature setting
InternalMemory.OverheatTemp_write( 820 );


// Ports that are always on
ReefAngel.Relay.On( Port1 );
ReefAngel.Relay.On( Port3 );
ReefAngel.Relay.On( Port7 );
ReefAngel.Relay.On( Port8 );
ReefAngel.Relay.On( Box1_Port2 );

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


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

void loop()
{
ReefAngel.StandardHeater( Port2,796,798 );
ReefAngel.StandardLights( Port4,18,0,12,0 );
ReefAngel.StandardLights( Port5,10,0,22,0 );
ReefAngel.StandardLights( Port6,9,30,22,30 );
ReefAngel.StandardATO( Box1_Port1,1200 );
ReefAngel.PWM.SetDaylight( PWMParabola(10,0,22,0,10,10,10) );
ReefAngel.PWM.SetActinic( PWMParabola(10,0,22,0,10,15,10) );
////// Place your custom code below here


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

// This should always be the last line
ReefAngel.ShowInterface();
}
Image
User avatar
madweazl
Posts: 44
Joined: Tue Dec 03, 2013 3:08 am
Location: Fredericksburg, VA

Re: Alternating relays for wavemakers

Post by madweazl »

Hmm, my confusion seems to stem from only certain ports being available for Wavemaker use; they're greyed out on everything but ports 5 and 6 on both relay boxes. How do I make them alternate (i.e. relay 5 on for 120s and then relay 6 on for 120s)?

Edit: got it figured out :)
Image
Post Reply