Let me warn all of you that I am a complete noob who's just managed to get the wizard do everything I need... up until now... so this is my first incursion in the programming territory. I also know, because I saw something like this and can't find it again, that this has been done.
Here's my predicament:
I would like to run a pretty powerful pump that has a model name very similar to MP40... only costs like 1/5 of the price... (I understand there's patent issues and that's why I rather not use specific names) from one of my DWM ATO channels as my light dimmers are taken by 4 Meanwell drivers and I have an external ATO float switch taking care of my ATO needs...
I need someone to take a look at my code and hand-held me through this process.
Any takers? I'd be forever grateful... I can treat to brews if ever in Western Massachusetts.
I know I need to make a mod to the cable. Is it the 'pump controller cable' sold at the RA store? And then after that, all I want it to do is to run on the minimum setting during the night... say 11pm to 11am and do random flow at random speed (between 30 and 60 seconds) during the day. Max power 50%, min power 20% I have read most of the threads on this topic but couldn't find one that is specific for my scenario.
This is my code:
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 = Port5Bit | Port6Bit;
// Ports toggled in Water Change Mode
ReefAngel.WaterChangePorts = Port1Bit | Port3Bit | Port4Bit | Port5Bit | Port6Bit | Port8Bit;
// Ports toggled when Lights On / Off menu entry selected
ReefAngel.LightsOnPorts = 0;
// Ports turned off when Overheat temperature exceeded
ReefAngel.OverheatShutoffPorts = 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( Port4 );
ReefAngel.Relay.On( Port8 );
////// Place additional initialization code below here
////// Place additional initialization code above here
}
void loop()
{
ReefAngel.StandardLights( Port2,23,0,11,0 );
ReefAngel.WavemakerRandom1( Port5,60,100 );
ReefAngel.WavemakerRandom2( Port6,30,130 );
ReefAngel.StandardHeater( Port7,761,771 );
ReefAngel.PWM.SetDaylight( PWMParabola(11,0,19,0,10,60,10) );
ReefAngel.PWM.SetActinic( PWMParabola(10,0,20,0,10,60,10) );
////// Place your custom code below here
////// Place your custom code above here
// This should always be the last line
ReefAngel.Portal( "oscarinw" );
ReefAngel.ShowInterface();
}