Wp 25 code

Do you have a question on how to do something.
Ask in here.

Posts: 32
Joined: Tue Jul 29, 2014 7:36 pm
PostPosted: Mon Sep 22, 2014 6:24 am
Check your cables for loose wires or pins. I had that issue that stopped my pump from working. I had to look very closely as one of the wires popped out of the pin seat.

Posts: 23
Joined: Thu Jun 05, 2014 4:25 pm
PostPosted: Mon Sep 22, 2014 9:26 am
Hi
Yes cables are ok.
Loaded up this code and portal says Actinic 0% Daylight 0% Dc Pump Constant 0/0 . That was at 17:15 just after code load up Pump not going.
Although not sure what it should be doing at that time. Nutrient transport whatever that does, not sure how pumps spins for that mode
--------------------------
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 <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.SetTemperatureUnit( Celsius ); // set to Celsius Temperature

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

// Feeeding and Water Change mode speed
ReefAngel.DCPump.FeedingSpeed=0;
ReefAngel.DCPump.WaterChangeSpeed=0;
ReefAngel.DCPump.DaylightChannel=Sync;
ReefAngel.DCPump.ActinicChannel = None;

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

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


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

void loop()
{
ReefAngel.DCPump.UseMemory = false;
ReefAngel.StandardATO( Port1,120 );
ReefAngel.Relay.DelayedOn( Port2,5 );
ReefAngel.StandardHeater( Port3,252,255 );
ReefAngel.StandardLights( Port4,20,0,8,0 );
ReefAngel.StandardLights( Port6,8,10,19,50 );
ReefAngel.StandardLights( Port7,8,5,19,55 );
ReefAngel.DCPump.DaylightChannel = Sync;

////// Place your custom code below here
if (hour()<12)
ReefAngel.StandardLights(Port5, 6, 0, 8, 5);
else
ReefAngel.StandardLights(Port5, 18, 0, 20, 5);

ReefAngel.PWM.SetDaylight( LongPulseMode(0,40,10,true) ); // Long pulse at 40% with 10s pulse on sync mode

if (hour()>=8 && hour()<12)
{
ReefAngel.PWM.SetDaylight( TidalSwellMode(60,true) ); // Tidal Swell at 60% on sync mode
}
if (hour()>=12 && hour()<16)
{
ReefAngel.PWM.SetDaylight( ReefCrestMode(80,20,true) ); // ReefCrest at 80% + - 20 on sync mode
}
if (hour()>=16 && hour()<17)
{
ReefAngel.PWM.SetDaylight( NutrientTransportMode(75,90,2000,true) ); // Nutrient Transport on sync mode
}
if (hour()>=17 && hour()<20)
{
ReefAngel.PWM.SetDaylight( ReefCrestMode(80,20,true) ); // ReefCrest at 75% + - 20 on sync mode
}
if (hour()>=20)
{
ReefAngel.PWM.SetDaylight( TidalSwellMode(60,true) ); // Tidal Swell at 60% on sync mode
}
////// Place your custom code above here

// This should always be the last line
ReefAngel.Portal( "mask0017" );
ReefAngel.ShowInterface();
}
User avatar
Posts: 5364
Joined: Fri Jul 20, 2012 9:42 am
PostPosted: Mon Sep 22, 2014 9:33 am
At 17:15 you should be running ReefCrestMode

if (hour()>=17 && hour()<20)
{
ReefAngel.PWM.SetDaylight( ReefCrestMode(80,20,true) ); // ReefCrest at 75% + - 20 on sync mode
}

What's the longest and when you've left this code running? The forum portal charts shows a pretty good movement.

status/chart.aspx?id=mask0017&filter=PWMD

Posts: 23
Joined: Thu Jun 05, 2014 4:25 pm
PostPosted: Mon Sep 22, 2014 9:40 am
Left it running during night last night. 23:00 - 07:00 That would be UK time.
Changed it this morning and have been trying different codes.
It's running the last one I put up now. Will leave it like that for a while if you would like to check
Thanks
mask
User avatar
Posts: 5364
Joined: Fri Jul 20, 2012 9:42 am
PostPosted: Mon Sep 22, 2014 10:06 am
It says your around 61% at the moment.

Posts: 23
Joined: Thu Jun 05, 2014 4:25 pm
PostPosted: Mon Sep 22, 2014 10:38 am
Yes did that here then it goes back to 0% as it is now, but pump dosn't run at all
Only does it with this code. If use wizard and set Reefcrest or any of the others pump runs fine.
Thanks
mask0017

Posts: 23
Joined: Thu Jun 05, 2014 4:25 pm
PostPosted: Mon Sep 22, 2014 10:47 am
Image

This what get most of time. If the Pic works
User avatar
Posts: 5364
Joined: Fri Jul 20, 2012 9:42 am
PostPosted: Mon Sep 22, 2014 11:42 am
Two things. Please set your mode to "Custom" in the Internal Memory section. You have this set to ReefCrest and it could be conflicting with your override.

If that doesn't help, try changing this to None

ReefAngel.DCPump.DaylightChannel = Sync;

You have it twice so I would change it in both. Let us know how it goes. It's odd the portal is reporting your speeds properly in the charts... let's see what happens when you change that.

Posts: 23
Joined: Thu Jun 05, 2014 4:25 pm
PostPosted: Mon Sep 22, 2014 12:06 pm
Image

It did seem to be on custom.Will change the code tomoz. Night in UK just now can't get in tank room
Thanks
mask
User avatar
Posts: 5364
Joined: Fri Jul 20, 2012 9:42 am
PostPosted: Mon Sep 22, 2014 12:11 pm
The portal has not been reporting the mode being at 11 (Custom) in your charts. It's showing the last update at 12pm that it was at 2pm. This means that since your INO has the UseMemory=false that it's not being set. And since you've defined the pump as a DCPump it could be doing something unexpected. Also, you should set the duration to something sane and not 255 as it's considered an un-initialized value.

I would take the next step as changing DCPump to None in the code and see what happens. At some point we'll convert this INO to use the DCPump instead of the raw PWM commands to set what we want.
PreviousNext

Return to How do I code ...

Who is online

Users browsing this forum: No registered users and 2 guests

cron