Page 1 of 1

help with jeabo rw-8 staying on

Posted: Wed Jun 15, 2016 4:04 pm
by slm222
I have two rw-8s one pump that will not turn off anymore since adding the wifi unit. neither when I press water change or feeding does it shut off. that was the only change. also when I unlug from the pwm port it stays running. any help would be appreciated

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.AddStandardMenu();  // Add Standard Menu
    ReefAngel.AddWifi(); // Add Wifi
    
    ReefAngel.Use2014Screen();  // Let's use 2014 Screen 
    // Ports toggled in Feeding Mode
    ReefAngel.FeedingModePorts = Port2Bit | Port8Bit;
    // Ports toggled in Water Change Mode
    ReefAngel.WaterChangePorts = Port2Bit | Port8Bit;
    // Ports toggled when Lights On / Off menu entry selected
    ReefAngel.LightsOnPorts = 0;
    // Ports turned off when Overheat temperature exceeded
    ReefAngel.OverheatShutoffPorts = Port4Bit;
    // Use T1 probe as temperature and overheat functions
    ReefAngel.TempProbe = T1_PROBE;
    ReefAngel.OverheatProbe = T1_PROBE;
    // Set the Overheat temperature setting
    InternalMemory.OverheatTemp_write( 830 );


    // Feeeding and Water Change mode speed
    ReefAngel.DCPump.FeedingSpeed=0;
    ReefAngel.DCPump.WaterChangeSpeed=0;


    // Ports that are always on


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

    // Define labels for 2014 LCD screen
    //box0
    ReefAngel.CustomLabels[0]="T5HO"; 
    ReefAngel.CustomLabels[1]="Skimmer"; 
    ReefAngel.CustomLabels[2]="FugeLight"; 
    ReefAngel.CustomLabels[3]="Heater"; 
    ReefAngel.CustomLabels[4]="ScrubLight"; 
    ReefAngel.CustomLabels[5]="Kalk_Mixer"; 
    ReefAngel.CustomLabels[6]="Kalk_ATO"; 
    ReefAngel.CustomLabels[7]="RO_ATO";
  
    //lowers minimum speed for DC pump
    InternalMemory.DCPumpThreshold_write(0);
    
    //gives random sopmething to randomize against
     randomSeed(now()/SECS_PER_DAY); 
    ////// Place additional initialization code above here
}

void loop()
{
  ReefAngel.Portal("slm222"); //wifi

    
    ReefAngel.MHLights( Port1,12,30,14,30,5 ); //t5ho
    ReefAngel.MHLights( Port2,7,0,22,0,5  );  //skimmer
    ReefAngel.StandardLights( Port3,18,0,10,0 ); //fugelight
    ReefAngel.StandardHeater( Port4,785,788 ); //heater
    ReefAngel.StandardLights( Port5,18,0,10,0 ); //scrubber light
    ReefAngel.DosingPumpRepeat( Port6,0,240,25 ); // kalk mixing every 6 hours for 25 seconds
    
    ////// Place your custom code below here

    ////// Wave Pattern Code Start
    //Hardcode minimum speed of DC pumps
    ReefAngel.DCPump.Threshold=0;

    // Add random mode if we set to Mode to Custom in portal
    static int rmode;
    static boolean changeMode=true;

    // These are the modes we can cycle through. You can add more and even repeat...
    byte modes[] = { ReefCrest, NutrientTransport, TidalSwell, Lagoon, Else, ReefCrest, Else };

    ReefAngel.DCPump.DaylightChannel = Sync;
    ReefAngel.DCPump.ActinicChannel = AntiSync; 
  
    if (now()%SECS_PER_DAY==0 || changeMode==true) { // Change at midnight or if controller rebooted
    rmode=random(100)%sizeof(modes); // Change the mode once per day to pick from our array
    changeMode=false;
 }

    // Set timer when in feeding mode
    static unsigned long feeding;
    if (ReefAngel.DisplayedMenu==FEEDING_MODE) feeding=now();

    // after feed mode Continue NTM for the 60 minutes
    if (now()-feeding<1800) {
    ReefAngel.DCPump.UseMemory=false;
    ReefAngel.DCPump.Duration=InternalMemory.DCPumpDuration_read();
    ReefAngel.DCPump.Mode=Else;  

} 
    //7am to 9am - wake up from night mode
    else  if (hour()>=7 && hour()<9){ 
    ReefAngel.DCPump.UseMemory=false;
    ReefAngel.DCPump.Duration=350;
    ReefAngel.DCPump.Mode=Sine;
    ReefAngel.DCPump.Speed=50;
}
    //9am to 10am - ramp up to random
    else  if (hour()>=9 && hour()<10){ 
    ReefAngel.DCPump.UseMemory=false;
    ReefAngel.DCPump.Duration=InternalMemory.DCPumpDuration_read();
    ReefAngel.DCPump.Mode=Lagoon;
    ReefAngel.DCPump.Speed=60;
}
    //10am to 6pm - Random
    else if (hour()>=10 && hour()<18) { 
    ReefAngel.DCPump.UseMemory=false;
    ReefAngel.DCPump.Duration=InternalMemory.DCPumpDuration_read();
    ReefAngel.DCPump.Mode=modes[rmode];  // Put the mode to the random mode :)
    ReefAngel.DCPump.Speed=70; 
}
    //6pm to 7pm - slow down from random
    else  if (hour()>=18 && hour()<19){ 
    ReefAngel.DCPump.UseMemory=false;
    ReefAngel.DCPump.Duration=InternalMemory.DCPumpDuration_read();
    ReefAngel.DCPump.Mode=Lagoon;
    ReefAngel.DCPump.Speed=60;

}
    //7pm to 9pm - slow down to night mode
    else  if (hour()>=19 && hour()<21){ 
    ReefAngel.DCPump.UseMemory=false;
    ReefAngel.DCPump.Duration=350;
    ReefAngel.DCPump.Mode=Sine;
    ReefAngel.DCPump.Speed=50;

}
    // Night mode 
    else  { 
    ReefAngel.DCPump.UseMemory=false;
    ReefAngel.DCPump.Duration=450;
    ReefAngel.DCPump.Mode=Sine;
    ReefAngel.DCPump.Speed=40; 
}
    ////// Wave Pattern Code End

    ////// ATO RO and Kalk Settings    
if ((hour()>18 || hour()<9) && (ReefAngel.Params.PH < 822))
{
    ReefAngel.SingleATO( true,Port7,600,0 );   //  Sump switch. Kalk schedule 6pm - 7am if pH < 8.25  If ATO/Kalk runs for 10 minutes=600 seconds, then shut off.
    ReefAngel.Relay.Off(Port8);
}
 else 
{
    ReefAngel.SingleATO( true,Port8,500,0 );   //  Sump switch.  If ATO/RoDi runs for 8.20 minutes=480 seconds, then shut off.
    ReefAngel.Relay.Off(Port7);
}
    ////// End ATO RO and Kalk Settings      

       

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

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

Re: help with jeabo rw-8 staying on

Posted: Wed Jun 15, 2016 4:27 pm
by slm222
ok. not sure whats going on for sure. but when the command is issued for water change or feeding what happens is the wavemaker goes to a slow speed vs shutting off. any help would be appreciated

Re: help with jeabo rw-8 staying on

Posted: Wed Jun 15, 2016 5:20 pm
by slm222
upon further inspection the pump may be the internals of the pump may be whats going bad. not sure...

Re: help with jeabo rw-8 staying on

Posted: Wed Jan 11, 2017 11:20 pm
by Reefology
did you ever get help with this or figure it out? I haven't had any luck getting any of the RA gurus to respond to my threads???

I don't think it's the pump (gotta be something in the code/libraries). I had the same issue and did a lot of trouble shooting. for me, its just the antisync on highATO that stays on high and doesn't respond to feedings and water change commands. I currently have both my dc pumps working off the lowATO channel flawlessly but id really like to get the antisync working to alternate flow as opposed to having them work in Sync. Hope to hear some possible solutions soon.

Thanks