ATO signal on Portal

New members questions
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

All you need is this:

Code: Select all

static unsigned long lastATOCheck=millis();
ReefAngel.ReverseATOLow();

if (ReefAngel.LowATO.IsActive()) lastATOCheck=millis();
if (ReefAngel.LowATO.IsActive() && (millis()-lastATOCheck>2000)) ReefAngel.Relay.RelayMaskOff&=~(Port8Bit | Port7Bit | Port1Bit);
if ( (hour()>=8 && hour()<20))//wavemakers on at 8am and off at 8pm
{
static unsigned long nexttoggle=now();
static boolean state=false;
int cycle=nexttoggle-now();
ReefAngel.Relay.Set(Port5,state);
ReefAngel.Relay.Set(Port6,!ReefAngel.Relay.Status(Port5));
if (cycle<0)
{
nexttoggle+=random(960,1020);//tunzes on for 15-16 mins 
state=!state;
}
if (cycle<10)//10 sec overlap
{
ReefAngel.Relay.On(Port5);
ReefAngel.Relay.On(Port6);
}
}
else
{
ReefAngel.Relay.Off(Port5);
ReefAngel.Relay.Off(Port6);
}
Seagals
Posts: 127
Joined: Wed Aug 01, 2012 7:06 am

Re: ATO signal on Portal

Post by Seagals »

Thanks Inevo, I was able to successfully upload it but the portal still shows a red light on both LW and HW ports - I checked the portal over a duration of several hours figuring the portal needed time to see it but still red.

Here is my entire code If you wouldn't mind please take a look at my code and perhaps lmk where I went wrong thanks.


#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 <ReefAngel.h>

////// Place global variable code below here
#include <avr/pgmspace.h>
prog_char menu0_label[] PROGMEM = "Feeding";
prog_char menu1_label[] PROGMEM = "Water Change";
prog_char menu2_label[] PROGMEM = "ATO Clear";
prog_char menu3_label[] PROGMEM = "Overheat Clear";
prog_char menu4_label[] PROGMEM = "PH Calibration";
prog_char menu5_label[] PROGMEM = "Version";
prog_char menu6_label[] PROGMEM = "Clear Low Water";
PROGMEM const char *menu_items[] = {
menu0_label, menu1_label, menu2_label, menu3_label, menu4_label, menu5_label, menu6_label };

void MenuEntry1()
{
ReefAngel.FeedingModeStart();

}
void MenuEntry2()
{
ReefAngel.WaterChangeModeStart();

}
void MenuEntry3()
{
ReefAngel.ATOClear();
ReefAngel.DisplayMenuEntry("Clear ATO Timeout");
}
void MenuEntry4()
{
ReefAngel.OverheatClear();
ReefAngel.DisplayMenuEntry("Clear Overheat");
}
void MenuEntry5()
{
ReefAngel.SetupCalibratePH();
ReefAngel.DisplayedMenu = ALT_SCREEN_MODE;

}
void MenuEntry6()
{
ReefAngel.DisplayVersion();

}
void MenuEntry7()
{
ReefAngel.Relay.RelayMaskOff=255;
}


////// 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 = Port1Bit | Port5Bit | Port6Bit;
// Ports toggled in Water Change Mode
ReefAngel.WaterChangePorts = Port1Bit | Port7Bit | Port8Bit;
// Ports toggled when Lights On / Off menu entry selected
ReefAngel.LightsOnPorts = Port2Bit | Port3Bit | Port4Bit;
// Ports turned off when Overheat temperature exceeded
ReefAngel.OverheatShutoffPorts = Port1Bit | Port2Bit | Port3Bit | 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( 850 );


// Ports that are always on
ReefAngel.Relay.On( Port7 );//Chiller
ReefAngel.Relay.On( Port8 );//Main pump

////// Place additional initialization code below here
ReefAngel.InitMenu(pgm_read_word(&(menu_items[0])),SIZE(menu_items));


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

void loop()
{
ReefAngel.StandardLights( Port1,8,0,21,0 );//Protein skimmer
ReefAngel.StandardLights( Port2,9,0,21,30 );
ReefAngel.StandardLights( Port3,11,0,20,30 );
ReefAngel.StandardLights( Port4,9,0,21,30 );
ReefAngel.Wavemaker( Port5,960 );
ReefAngel.Relay.Set( Port6, !ReefAngel.Relay.Status( Port5 ) );
ReefAngel.PWM.SetDaylight( PWMSlope(11,0,20,25,5,70,120,5) );
ReefAngel.PWM.SetActinic( PWMSlope(9,0,21,30,15,88,60,20) );
////// Place your custom code below here
static unsigned long lastATOCheck=millis();

ReefAngel.ReverseATOLow();

if (ReefAngel.LowATO.IsActive()) lastATOCheck=millis();
if (ReefAngel.LowATO.IsActive() && (millis()-lastATOCheck>2000)) ReefAngel.Relay.RelayMaskOff&=~(Port8Bit | Port7Bit | Port1Bit);
if ( (hour()>=8 && hour()<20))//wavemakers on at 8am and off at 8pm
{
static unsigned long nexttoggle=now();
static boolean state=false;
int cycle=nexttoggle-now();
ReefAngel.Relay.Set(Port5,state);
ReefAngel.Relay.Set(Port6,!ReefAngel.Relay.Status(Port5));
if (cycle<0)
{
nexttoggle+=random(960,1020);//tunzes on for 15-16 mins
state=!state;
}
if (cycle<10)//10 sec overlap
{
ReefAngel.Relay.On(Port5);
ReefAngel.Relay.On(Port6);
}
}
else
{
ReefAngel.Relay.Off(Port5);
ReefAngel.Relay.Off(Port6);
}

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

// This should always be the last line
ReefAngel.Portal( "Seagals" );
ReefAngel.ShowInterface();
}
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

This is where feature.txt update may be needed.

Roberto the info was in the pull request:

https://github.com/reefangel/Libraries/pull/89

Take a look at that link and make sure those two lines are in your feature.txt
Seagals
Posts: 127
Joined: Wed Aug 01, 2012 7:06 am

Re: ATO signal on Portal

Post by Seagals »

This is what I found in my library - not sure is this is what you were referring too. It states ATO_LOW_REVERSE - Appreciate your assistance - coding is new to me and after 50+ yrs trying to learn a new language .

LMK - if this helps clarify the issue thanks


/*
* Copyright 2010 Reef Angel / Roberto Imai
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

/*
* Updated by: Curt Binder
* Updates Released under Apache License, Version 2.0
*/

#ifndef __RA_ATO_H__
#define __RA_ATO_H__

#include <Globals.h>

/*
Auto Top Off Class
*/

class RA_ATOClass
{
public:
RA_ATOClass();
virtual bool IsActive() = 0;
inline bool IsTopping() { return topping; }
#ifdef ENABLE_ATO_LOGGING
virtual void StartTopping(bool fHighAto = false);
virtual void StopTopping(bool fHighAto = false);
#else
inline void StartTopping() { topping = true; }
inline void StopTopping() { topping = false; }
#endif // ENABLE_ATO_LOGGING
unsigned long Timer;
#ifdef REEFTOUCHDISPLAY
bool activestatus;
void inline SetActive(bool status) { activestatus=status; }
#endif // REEFTOUCHDISPLAY

private:
bool topping;
};

class RA_ATOHighClass : public RA_ATOClass
{
public:
#ifdef ATO_HIGH_REVERSE
#ifdef REEFTOUCHDISPLAY
inline bool IsActive() { return !activestatus; }
#else // REEFTOUCHDISPLAY
inline bool IsActive() { return digitalRead(highATOPin); }
#endif // REEFTOUCHDISPLAY
#else // ATO_HIGH_REVERSE
#ifdef REEFTOUCHDISPLAY
inline bool IsActive() { return activestatus; }
#else // REEFTOUCHDISPLAY
inline bool IsActive() { return !digitalRead(highATOPin); }
#endif // REEFTOUCHDISPLAY
#endif // ATO_HIGH_REVERSE
};

class RA_ATOLowClass : public RA_ATOClass
{
public:
#ifdef ATO_LOW_REVERSE
#ifdef REEFTOUCHDISPLAY
inline bool IsActive() { return !activestatus; }
#else // REEFTOUCHDISPLAY
inline bool IsActive() { return digitalRead(lowATOPin); }
#endif // REEFTOUCHDISPLAY
#else // ATO_LOW_REVERSE
#ifdef REEFTOUCHDISPLAY
inline bool IsActive() { return activestatus; }
#else // REEFTOUCHDISPLAY
inline bool IsActive() { return !digitalRead(lowATOPin); }
#endif // REEFTOUCHDISPLAY
#endif // ATO_LOW_REVERSE
};

#if defined WATERLEVELEXPANSION
class RA_ATOWLClass : public RA_ATOClass
{
public:
inline bool IsActive() { return false; }
};
#endif // WATERLEVELEXPANSION

#endif // __RA_ATO_H__
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

I wrote that code and am using it as well. You must be missing the feature.txt line i posted.

You should see a message about it when you compile. If not then its going to do nothing.
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

lnevo wrote:This is where feature.txt update may be needed.

Roberto the info was in the pull request:

https://github.com/reefangel/Libraries/pull/89

Take a look at that link and make sure those two lines are in your feature.txt
Seagals
Posts: 127
Joined: Wed Aug 01, 2012 7:06 am

Re: ATO signal on Portal

Post by Seagals »

Inevo - I may have misunderstood was your last email directed towards Roberto? or me? because at this point I did all I know how to do with my limited knowledge
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

Its directed to both. Find the feature.txt file and add the two lines. Mentioned in the link posted. Re-compile and you should see the "feature" listed when you compile.
Seagals
Posts: 127
Joined: Wed Aug 01, 2012 7:06 am

Re: ATO signal on Portal

Post by Seagals »

Thanks but thing is I am kinda lost at this point what I found yesterday was all I have and will need Roberto's input.

Roberto - when you have a moment please offer me some help - thanks
rimai
Posts: 12881
Joined: Fri Mar 18, 2011 6:47 pm

Re: ATO signal on Portal

Post by rimai »

I'm not so sure what you are trying to accomplish.
Are you trying to invert the colors from red to green?
Is that it?
Roberto.
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

Ok nevermind. Just put this in your code

#define ATO_LOW_REVERSE

That should trigger it manually.
rimai
Posts: 12881
Joined: Fri Mar 18, 2011 6:47 pm

Re: ATO signal on Portal

Post by rimai »

Using defines on INO code does not get the feature included...
It would be too easy if it worked this way :)
That's this exact reason why I had to come up with the auto-selection of features based on the feature.txt file.
Roberto.
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

That sucks :(
Seagals
Posts: 127
Joined: Wed Aug 01, 2012 7:06 am

Re: ATO signal on Portal

Post by Seagals »

thanks guys but if its to much trouble don't worry about it - I would have liked the light on the portal to be green on my low water cut off indicating (to me at least) that all was ok. but it sounds like its to much trouble - so lets just leave it as is - thanks
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

Just find the feature.txt file in your Documents\Arduino folder. You just need to add two lines to it.
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

I think it should be in updates folder?
Seagals
Posts: 127
Joined: Wed Aug 01, 2012 7:06 am

Re: ATO signal on Portal

Post by Seagals »

ok Lee I found two folders in updates - One was called 'features' and the other was called 'source'

the one with 'source' had the github stuff

now the question is do I add https://github.com/reefangel/Libraries/pull/89 if so, where?


https://raw.github.com/reefangel/librar ... 307RTC.cpp
https://raw.github.com/reefangel/librar ... S1307RTC.h
https://raw.github.com/reefangel/librar ... ywords.txt
https://raw.github.com/reefangel/librar ... readme.txt
https://raw.github.com/reefangel/librar ... kiaLCD.cpp
https://raw.github.com/reefangel/librar ... NokiaLCD.h
https://raw.github.com/reefangel/librar ... LCD/README
https://raw.github.com/reefangel/librar ... neWire.cpp
https://raw.github.com/reefangel/librar ... /OneWire.h
https://raw.github.com/reefangel/librar ... ywords.txt
https://raw.github.com/reefangel/librar ... 610LCD.cpp
https://raw.github.com/reefangel/librar ... s6610LCD.h
https://raw.github.com/reefangel/librar ... s6610LCD.o
https://raw.github.com/reefangel/librar ... LCDInv.cpp
https://raw.github.com/reefangel/librar ... 10LCDInv.h
https://raw.github.com/reefangel/librar ... e/Time.cpp
https://raw.github.com/reefangel/librar ... ime/Time.h
https://raw.github.com/reefangel/librar ... trings.cpp
https://raw.github.com/reefangel/librar ... ywords.txt
https://raw.github.com/reefangel/librar ... Readme.txt
https://raw.github.com/reefangel/librar ... Alarms.cpp
https://raw.github.com/reefangel/librar ... meAlarms.h
https://raw.github.com/reefangel/librar ... ywords.txt
https://raw.github.com/reefangel/librar ... readme.txt
https://raw.github.com/reefangel/librar ... /README.md
https://raw.github.com/reefangel/librar ... /AI/AI.cpp
https://raw.github.com/reefangel/librar ... er/AI/AI.h
https://raw.github.com/reefangel/librar ... DCPump.cpp
https://raw.github.com/reefangel/librar ... p/DCPump.h
https://raw.github.com/reefangel/librar ... lobals.cpp
https://raw.github.com/reefangel/librar ... /Globals.h
https://raw.github.com/reefangel/librar ... midity.cpp
https://raw.github.com/reefangel/librar ... Humidity.h
https://raw.github.com/reefangel/librar ... EEPROM.cpp
https://raw.github.com/reefangel/librar ... alEEPROM.h
https://raw.github.com/reefangel/librar ... /IO/IO.cpp
https://raw.github.com/reefangel/librar ... er/IO/IO.h
https://raw.github.com/reefangel/librar ... ED/LED.cpp
https://raw.github.com/reefangel/librar ... /LED/LED.h
https://raw.github.com/reefangel/librar ... Memory.cpp
https://raw.github.com/reefangel/librar ... y/Memory.h
https://raw.github.com/reefangel/librar ... RP/ORP.cpp
https://raw.github.com/reefangel/librar ... /ORP/ORP.h
https://raw.github.com/reefangel/librar ... /PH/PH.cpp
https://raw.github.com/reefangel/librar ... er/PH/PH.h
https://raw.github.com/reefangel/librar ... RA_ATO.cpp
https://raw.github.com/reefangel/librar ... O/RA_ATO.h
https://raw.github.com/reefangel/librar ... A_Colors.h
https://raw.github.com/reefangel/librar ... ystick.cpp
https://raw.github.com/reefangel/librar ... Joystick.h
https://raw.github.com/reefangel/librar ... LCD/README
https://raw.github.com/reefangel/librar ... kiaLCD.cpp
https://raw.github.com/reefangel/librar ... NokiaLCD.h
https://raw.github.com/reefangel/librar ... RA_PWM.cpp
https://raw.github.com/reefangel/librar ... M/RA_PWM.h
https://raw.github.com/reefangel/librar ... Sensor.cpp
https://raw.github.com/reefangel/librar ... mpSensor.h
https://raw.github.com/reefangel/librar ... A_Wifi.cpp
https://raw.github.com/reefangel/librar ... /RA_Wifi.h
https://raw.github.com/reefangel/librar ... fAngel.cpp
https://raw.github.com/reefangel/librar ... eefAngel.h
https://raw.github.com/reefangel/librar ... gel/README
https://raw.github.com/reefangel/librar ... ywords.txt
https://raw.github.com/reefangel/librar ... Features.h
https://raw.github.com/reefangel/librar ... /Arial12.h
https://raw.github.com/reefangel/librar ... alBold20.h
https://raw.github.com/reefangel/librar ... alBold24.h
https://raw.github.com/reefangel/librar ... uch/f8x8.h
https://raw.github.com/reefangel/librar ... h/f12x12.h
https://raw.github.com/reefangel/librar ... h/f15x22.h
https://raw.github.com/reefangel/librar ... /Fat32.cpp
https://raw.github.com/reefangel/librar ... ch/Fat32.h
https://raw.github.com/reefangel/librar ... ch/mmc.cpp
https://raw.github.com/reefangel/librar ... ouch/mmc.h
https://raw.github.com/reefangel/librar ... ch/Icons.h
https://raw.github.com/reefangel/librar ... gel_Logo.h
https://raw.github.com/reefangel/librar ... fTouch.cpp
https://raw.github.com/reefangel/librar ... eefTouch.h
https://raw.github.com/reefangel/librar ... SDFile.cpp
https://raw.github.com/reefangel/librar ... h/SDFile.h
https://raw.github.com/reefangel/librar ... estImage.h
https://raw.github.com/reefangel/librar ... /Relay.cpp
https://raw.github.com/reefangel/librar ... ay/Relay.h
https://raw.github.com/reefangel/librar ... /RF/RF.cpp
https://raw.github.com/reefangel/librar ... er/RF/RF.h
https://raw.github.com/reefangel/librar ... RT_PWM.cpp
https://raw.github.com/reefangel/librar ... M/RT_PWM.h
https://raw.github.com/reefangel/librar ... linity.cpp
https://raw.github.com/reefangel/librar ... Salinity.h
https://raw.github.com/reefangel/librar ... /Timer.cpp
https://raw.github.com/reefangel/librar ... er/Timer.h
https://raw.github.com/reefangel/librar ... rLevel.cpp
https://raw.github.com/reefangel/librar ... terLevel.h
https://raw.github.com/reefangel/librar ... RA_TFT.cpp
https://raw.github.com/reefangel/librar ... T/RA_TFT.h
https://raw.github.com/reefangel/librar ... A_Tilt.cpp
https://raw.github.com/reefangel/librar ... /RA_Tilt.h
https://raw.github.com/reefangel/librar ... uchLCD.cpp
https://raw.github.com/reefangel/librar ... TouchLCD.h
https://raw.github.com/reefangel/librar ... /RA_TS.cpp
https://raw.github.com/reefangel/librar ... TS/RA_TS.h
http://www.reefangel.com/update/files/u ... eature.txt
http://www.reefangel.com/update/files/R ... loaded.ino
http://www.reefangel.com/update/files/t ... ibsVer.jar
http://www.reefangel.com/update/files/t ... loaded.jar
http://www.reefangel.com/update/files/t ... ection.png
http://www.reefangel.com/update/files/t ... _small.png
http://www.reefangel.com/update/files/t ... el-5.1.jar
http://www.reefangel.com/update/files/t ... -2.0b4.jar
http://www.reefangel.com/update/files/t ... tMaker.jar
http://www.reefangel.com/update/files/t ... -1.0.3.jar
http://www.reefangel.com/update/files/t ... l/jace.jar
http://www.reefangel.com/update/files/t ... -tasks.jar
http://www.reefangel.com/update/files/t ... /Regex.jar
http://www.reefangel.com/update/files/t ... weaver.jar
http://www.reefangel.com/update/files/t ... Wizard.jar
http://www.reefangel.com/update/files/t ... ata/AI.png
http://www.reefangel.com/update/files/t ... w_back.png
http://www.reefangel.com/update/files/t ... w_next.png
http://www.reefangel.com/update/files/t ... cancel.png
http://www.reefangel.com/update/files/t ... ection.png
http://www.reefangel.com/update/files/t ... layout.xml
http://www.reefangel.com/update/files/t ... a/moon.png
http://www.reefangel.com/update/files/t ... rabola.png
http://www.reefangel.com/update/files/t ... ttings.png
http://www.reefangel.com/update/files/t ... imming.png
http://www.reefangel.com/update/files/t ... Radion.png
http://www.reefangel.com/update/files/t ... ra_ato.png
http://www.reefangel.com/update/files/t ... imming.png
http://www.reefangel.com/update/files/t ... zontal.png
http://www.reefangel.com/update/files/t ... _small.png
http://www.reefangel.com/update/files/t ... _small.png
http://www.reefangel.com/update/files/t ... /slope.png
http://www.reefangel.com/update/files/t ... ttings.png

OR the following is what I found in the 'features' folder -

PWMEXPANSION,ReefAngel.PWM.SetChannel,Dimming Expansion Module
DisplayLEDPWM,ReefAngel.PWM.,Dimming Signal
AI_LED,ReefAngel.AI.,Aqua Illumination Communication
IOEXPANSION,ReefAngel.IO.,I/O Expansion Module
RFEXPANSION,ReefAngel.RF.,RF Expansion Module
SALINITYEXPANSION,ReefAngel.Params.Salinity,Salinity Expansion Module
ORPEXPANSION,ReefAngel.Params.ORP,ORP Expansion Module
wifi,ReefAngel.Portal,Wifi Attachment
wifi,CheckWifi(),Wifi Attachment
wifi,ReefAngel.AddWifi(),Wifi Attachment
CUSTOM_MAIN,DrawCustomMain,Custom Main Screen
CUSTOM_VARIABLES,ReefAngel.CustomVar,Custom Variable
ENABLE_EXCEED_FLAGS,_Exceed_Flag,Exceed Flagging
FONT_8x8,FONT_8x8,Extra Font - Medium Size (8x8 pixels)
FONT_8x8,ReefAngel.LCD.DrawLargeText,Extra Font - Medium Size (8x8 pixels)
FONT_8x16,FONT_8x16,Extra Font - Large Size (8x16 pixels)
FONT_12x16,FONT_12x16,Extra Font - Extra Large Size (12x16 pixels)
FONT_12x16,ReefAngel.LCD.DrawHugeText,Extra Font - Extra Large Size (12x16 pixels)
NUMBERS_8x8,NUMBERS_8x8,Extra Font - Numbers Only - Medium Size (8x8 pixels)
NUMBERS_8x16,NUMBERS_8x16,Extra Font - Numbers Only - Large Font (8x16 pixels)
NUMBERS_12x16,NUMBERS_12x16,Extra Font - Numbers Only - Extra Large Font (12x16 pixels)
NUMBERS_16x16,NUMBERS_16x16,Extra Font - Numbers Only - Huge Font (16x16 pixels)
NUMBERS_16x16,ReefAngel.LCD.DrawHugeNumbers,Extra Font - Numbers Only - Huge Font (16x16 pixels)
DateTimeSetup,ReefAngel.SetupDateTime,Date/Time Setup Menu
DateTimeSetup,ReefAngel.AddDateTimeMenu,Date/Time Setup Menu
SaveRelaysPresent,ReefAngel.Relay.IsRelayPresent,Relay Box presence check
RelayExp,Box1_,Relay Expansion Module
RelayExp,Box2_,Relay Expansion Module
RelayExp,Box3_,Relay Expansion Module
RelayExp,Box4_,Relay Expansion Module
RelayExp,Box5_,Relay Expansion Module
RelayExp,Box6_,Relay Expansion Module
RelayExp,Box7_,Relay Expansion Module
RelayExp,Box8_,Relay Expansion Module
RelayExp,ReefAngel.Relay.RelayDataE,Relay Expansion Module
CUSTOM_MENU,MenuEntry,Custom Menu
PHEXPANSION,ReefAngel.Params.PHExp,PH Expansion Module
COLORS_PDE,AddCustomColors(),Custom Colors
WATERLEVELEXPANSION,ReefAngel.WaterLevel.,Water Level Expansion Module
SetupCalibrateChoicePH,ReefAngel.SetupCalibrateChoicePH,Calibrate pH Menu with Choices
MOONPHASELABEL,MoonPhaseLabel,Moon Phase Label
PWMEXPANSION,ReefAngel.PWM.GetChannelValue,Dimming Expansion Module
PWMEXPANSION,ReefAngel.PWM.Channel0,Dimming Expansion Module
PWMEXPANSION,ReefAngel.PWM.Channel1,Dimming Expansion Module
PWMEXPANSION,ReefAngel.PWM.Channel2,Dimming Expansion Module
PWMEXPANSION,ReefAngel.PWM.Channel3,Dimming Expansion Module
PWMEXPANSION,ReefAngel.PWM.Channel4,Dimming Expansion Module
PWMEXPANSION,ReefAngel.PWM.Channel5,Dimming Expansion Module
COLORS_PDE,ReefAngel.AddCustomColors,Custom Colors
RFEXPANSION,ReefAngel.AddRFExpansion(),RF Expansion Module
DATETIME24,ReefAngel.Display24h(),Display 24h Time
SETUP_CALIBRATEPH_CHOICE,ReefAngel.UseFlexiblePhCalibration,Calibrate pH Menu with Choices
REEFANGEL_MINI,ReefAngel.Mini,Reef Angel Mini
SALINITYEXPANSION,ReefAngel.SetupCalibrateSalinity,Salinity Expansion Module
I2C_LIB,I2C.h,I2C Library
WATERLEVELEXPANSION,ReefAngel.WaterLevelATO,Water Level Expansion Module
REEFTOUCH,ReefAngel.Touch(),Reef Angel Touch
REEFTOUCHDISPLAY,ReefAngel.TouchDisplay(),Reef Angel Touch Display
NOWIFI,ReefAngel.NoWifi(),Disable Wifi Attachment
EVOLUTION,ReefAngel.Evolution(),Reef Angel Evolution
NOSD,ReefAngel.NoSD(),Disable SD Card
NOTILT,ReefAngel.NoTilt(),Disable Tilt
I2CMASTER,ReefAngel.UpdateTouchDisplay(),Reef Angel I2C Master
BUSCHECK,ReefAngel.AddBusCheck(),I2C Bus Check
RADION_COMM,ReefAngel.RF.SetChannel,Ecotech Radion Communication
HUMIDITYEXPANSION,ReefAngel.Humidity.GetLevel,Humidity Expanion Module
DCPUMPCONTROL,ReefAngel.DCPump,DC Pump Control (Jebao/Tunze)
DisplayLEDPWM,ReefAngel.DCPump,Dimming Signal
PWMEXPANSION,ReefAngel.DCPump.ExpansionChannel,Dimming Expansion Module
LEAKDETECTOREXPANSION,ReefAngel.IsLeakDetected(),Rope Leak Detector Expansion
LEAKDETECTOREXPANSION,ReefAngel.LeakShutoffPorts,Rope Leak Detector Expansion


Sorry for the back and forth and I really appreciate you spending so much time on the weekend helping me with this.

If you can let me know if these are the correct folders, if so, please suggest what I need to add and where - thanks Sooooooooooooo much!
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

Thats not it. You are looking for a file not folder called feature.txt

You want to add these two lines:

ATO_LOW_REVERSE,ReefAngel.ReverseATOLow,Reverse ATO Low
ATO_HIGH_REVERSE,ReefAngel.ReverseATOHigh,Reverse ATO High
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

The second one you showed "features"

Its not a folder but contents are correct.

Add the two lines i gave you above.
Seagals
Posts: 127
Joined: Wed Aug 01, 2012 7:06 am

Re: ATO signal on Portal

Post by Seagals »

YES it worked!!!! Thank you - It makes so much more sense for the light to be green meaning its safe - that's awesome thanks
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

Glad my code helped someone besides me :)

For the record, you also could have

1) flipped the switch around

Or

2) take off the c-clip, flip floating magnet around, but back on c-clip

And you would have achieved the same result. Personally, I like the software mechanism.
Seagals
Posts: 127
Joined: Wed Aug 01, 2012 7:06 am

Re: ATO signal on Portal

Post by Seagals »

uffa - I never thought of that I could have saved us all allot of posts - but hey the positive side is I learned more about codes and it was a challenge solved!

Hey on another note - I saw on 'mr saltwater' tank the other day their was a new ATO unit that worked off of temperature probes. It got me thinking how we can use the temp probe on the RA unit in to detect water level and eventually we can get rid of the floats all together and use the RA probes to gauge water levels.

Here is the link http://www.mrsaltwatertank.com/mr-saltw ... expo-2013/

pretty interesting
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

And there is a multi water level sensor being released!!!
Seagals
Posts: 127
Joined: Wed Aug 01, 2012 7:06 am

Re: ATO signal on Portal

Post by Seagals »

I had a circumstance where the low water cutoff was needed but unfortunately it did not work - I tested the float back to the original code and it worked fine. I than reverted back to the reverse code and tried flipping the float but that wouldn't work in the flipped mode unless the water was low. meaning if the water was at operating level the pump would stay off. The red light just bugs me.
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Re: ATO signal on Portal

Post by lnevo »

Don't do both. YOu should leave the reverse code and change the logic for turning off the return by putting a ! or removing the ! in front of the LowATO.isActive(); function. Sounds like you keep doing two things at once.
Post Reply