Completely lost!

New members questions
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Completely lost!

Post by chort55 »

Ok, so I knew going into this it was probably going to be a little rough for me, but figured it was preloaded with some code so maybe I could make some slight tweeks to that (if I could figure out how) and that there was a program (RAgen) that could make coding super simple with a few clicks boom have code!

Well, I did the RAgen, and I hate the menu and how I lost the ability to change when my wave makers come on and off, the overall look of the menu, and how I can't really control anything from the controller itself.... except the date/time lol

Right now I am waiting to see if this guy delivers on my LED's and orders the PWM module I ordered from him almost 2 weeks ago.... but for now I would like to be able to control my 3 t5 ballasts, heater, fan, and koralia k1400's and can't seem to be able to do it how I want and be able to change it all on the fly from the controller itself like I can my current neptune ac jr :(

Is it even possible to do what I would like to accomplish? It seemed like it would be possible from the demo mode (as I could change the time for the wave makers from that menu, but I seem to have lost it from my RAgen created code).

Eventually I would like to get into creating a custom screen but for now I am mostly interested in the ability to change the settings for my ports directly from the controller itself.
rimai
Posts: 12857
Joined: Fri Mar 18, 2011 6:47 pm

Re: Completely lost!

Post by rimai »

If you use the Simple menu, all the ability to set stuff on the controller itself gets stripped out.

Open RAGen
Go to features tab
Uncheck wifi
Uncheck Simple Menu
Click Button save
Upload again.
Roberto.
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

I keep getting Error Compliling now

It will not allow me to copy and paste the rest of the error message, but it says wm1port not declared, and wm2 port not declared in this scope
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

I even did the internal memory update with the values for the ports that I want to use (Id just like to be able to change them on the controller if need be....)


Also, just thought about this..... I need the fan port to come on with my t5's is this possible?
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

Here is the code that RAgen generated if this will help at all:

Code: Select all

// Autogenerated file by RAGen (v1.2.1.158), (03/19/2012 00:49)
// RA_031912_0049.ino
//
// This version designed for v0.9.0 or later

/* The following features are enabled for this File: 
#define DisplayImages
#define WavemakerSetup
#define DateTimeSetup
#define VersionMenu
#define DisplayLEDPWM
#define StandardLightSetup
#define PWMEXPANSION
#define CUSTOM_MAIN
*/


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

void DrawCustomMain()
{
    // the graph is drawn/updated when we exit the main menu &
    // when the parameters are saved
    ReefAngel.LCD.DrawDate(6, 112);
    pingSerial();
#if defined DisplayLEDPWM && ! defined RemoveAllLights
    ReefAngel.LCD.DrawMonitor(15, 60, ReefAngel.Params,
    ReefAngel.PWM.GetDaylightValue(), ReefAngel.PWM.GetActinicValue());
#else // defined DisplayLEDPWM && ! defined RemoveAllLights
    ReefAngel.LCD.DrawMonitor(15, 60, ReefAngel.Params);
#endif // defined DisplayLEDPWM && ! defined RemoveAllLights
    pingSerial();
    byte TempRelay = ReefAngel.Relay.RelayData;
    TempRelay &= ReefAngel.Relay.RelayMaskOff;
    TempRelay |= ReefAngel.Relay.RelayMaskOn;
    ReefAngel.LCD.DrawOutletBox(12, 93, TempRelay);
}

void DrawCustomGraph()
{
    ReefAngel.LCD.DrawGraph(5, 5);
}


void setup()
{
    ReefAngel.Init();  //Initialize controller

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

void loop()
{
    // Specific functions
    ReefAngel.StandardLights(Port1);
    ReefAngel.StandardLights(Port2);
    ReefAngel.StandardLights(Port3);
    ReefAngel.StandardFan(Port4);
    ReefAngel.Wavemaker1(Port5);
    ReefAngel.Wavemaker2(Port6);
    ReefAngel.StandardHeater(Port7);

    ReefAngel.PWM.ActinicPWMSlope();
    ReefAngel.PWM.DaylightPWMSlope();

    ReefAngel.ShowInterface();
}
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

If I click the simple menu, the code will load I just have a menu that I cannot control anything really with.

If I click the custom menu, it will load, I just really can't do anything as it will just say Item 1 or exit.

If I leave both boxed unclicked, the code will not load even if I change nothing else at all.
rimai
Posts: 12857
Joined: Fri Mar 18, 2011 6:47 pm

Re: Completely lost!

Post by rimai »

I saw that your code has duplicates of a lot of stuff, but even removing the duplicates I also found it did not compile properly.
This is a bug on the libraries.
I'll look into it and talk to Curt about it.
Roberto.
rimai
Posts: 12857
Joined: Fri Mar 18, 2011 6:47 pm

Re: Completely lost!

Post by rimai »

By the way, this error only happens when you want to add the menu to change settings onthe controller itself, like you are planning to.
Roberto.
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

Yeah the ability to change the settings from the controller is fairly important to me, as I like to do random days where the "sun" just doesnt come out or runs shorter as well as I am working on raising my reef temp back up slowly after running it at 75 degrees for 2 years while I was trying to find a few colder water species , but after deciding to go a different route I am working back to a "normal" reef lol

Thank you Roberto, hopefully it will get fixed and I can figure out this coding stuff soon :)


I have noticed though it seems there are multiple ways of writing code because I have seen a few people do things differently to accomplish the same end result (or atleast thats what it looks like to me lol)
rimai
Posts: 12857
Joined: Fri Mar 18, 2011 6:47 pm

Re: Completely lost!

Post by rimai »

You can use the Client Suite to change settings too.
Just another idea.
Roberto.
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

Reef Angel Client seems more confusing to me right now, maybe its the ability to change the names of the port relays or something I dont know RAgen just seemed easier but maybe I will give that a try tonight when I have more time to mess with it and hook the controller up to the comp.
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

New RAgen code, I think other then the menu for changing settings on the fly like I want this is what I need, until I get my LEDs anyways....

Code: Select all

// Autogenerated file by RAGen (v1.2.1.158), (03/20/2012 00:36)
// RA_032012_0036.ino
//
// This version designed for v0.9.0 or later

/* The following features are enabled for this File: 
#define DisplayImages
#define DateTimeSetup
#define DisplayLEDPWM
#define SIMPLE_MENU
#define PWMEXPANSION
*/


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


void setup()
{
    ReefAngel.Init();  //Initialize controller

    ReefAngel.OverheatShutoffPorts = Port1Bit | Port2Bit | Port3Bit | Port7Bit;
    ReefAngel.LightsOnPorts = Port1Bit | Port2Bit | Port3Bit | Port4Bit;

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

void loop()
{
    // Specific functions
    ReefAngel.MHLights(Port1);
    ReefAngel.StandardLights(Port2);
    ReefAngel.StandardLights(Port3);
    ReefAngel.StandardFan(Port4);
    ReefAngel.Wavemaker1(Port5);
    ReefAngel.Wavemaker2(Port6);
    ReefAngel.StandardHeater(Port7);

    ReefAngel.ShowInterface();
}
I would like to eventually do a custom main screen but everytime I try (even copy and pasting from others and editing it to my name and colors) it doesn't work.... last time I got color.h errors, and instead of saving what I had I got irritated and not thinking and just closed the box and lost what I did :(

Here is my RAgen internal memory code too:

Code: Select all

// Autogenerated file by RAGen (v1.2.1.158), (03/20/2012 00:16)
// Memory_032012_0016.ino
//
// This file sets the default values to the Internal Memory
//


#include <ReefAngel_Features.h>
#include <Globals.h>
#include <Time.h>
#include <OneWire.h>
#include <RA_NokiaLCD.h>
#include <avr/pgmspace.h>
#include <InternalEEPROM.h>
#include <Wire.h>
#include <Memory.h>


RA_NokiaLCD e;

void setup()
{
    e.Init();
    e.Clear(COLOR_WHITE,0,0,132,132);
    e.BacklightOn();

    InternalMemory.MHOnHour_write(16);
    InternalMemory.MHOnMinute_write(0);
    InternalMemory.MHOffHour_write(0);
    InternalMemory.MHOffMinute_write(0);
    InternalMemory.MHDelay_write(0);
    InternalMemory.StdLightsOnHour_write(16);
    InternalMemory.StdLightsOnMinute_write(15);
    InternalMemory.StdLightsOffHour_write(23);
    InternalMemory.StdLightsOffMinute_write(45);
    InternalMemory.DP1OnHour_write(20);
    InternalMemory.DP1OnMinute_write(0);
    InternalMemory.DP2OnHour_write(22);
    InternalMemory.DP2OnMinute_write(30);
    InternalMemory.DP1Timer_write(10);
    InternalMemory.DP2Timer_write(10);
    InternalMemory.DP1RepeatInterval_write(60);
    InternalMemory.DP2RepeatInterval_write(60);
    InternalMemory.ATOTimeout_write(60);
    InternalMemory.ATOHighTimeout_write(60);
    InternalMemory.ATOHourInterval_write(0);
    InternalMemory.ATOHighHourInterval_write(0);
    InternalMemory.FeedingTimer_write(900);
    InternalMemory.LCDTimer_write(600);
    InternalMemory.LEDPWMActinic_write(50);
    InternalMemory.LEDPWMDaylight_write(50);
    InternalMemory.WM1Timer_write(37);
    InternalMemory.WM2Timer_write(119);
    InternalMemory.HeaterTempOn_write(752);
    InternalMemory.HeaterTempOff_write(755);
    InternalMemory.ChillerTempOn_write(757);
    InternalMemory.ChillerTempOff_write(755);
    InternalMemory.OverheatTemp_write(800);
    InternalMemory.PHMax_write(840);
    InternalMemory.PHMin_write(550);
    InternalMemory.SalMax_write(2550);
    InternalMemory.RFMode_write(Constant);
    InternalMemory.RFSpeed_write(140);
    InternalMemory.RFDuration_write(8);
    InternalMemory.RFDuration_write(8);
    InternalMemory.PWMSlopeStartD_write(15);
    InternalMemory.PWMSlopeEndD_write(128);
    InternalMemory.PWMSlopeDurationD_write(60);
    InternalMemory.PWMSlopeStartA_write(15);
    InternalMemory.PWMSlopeEndA_write(128);
    InternalMemory.PWMSlopeDurationA_write(60);
    InternalMemory.IMCheck_write(0x5241494D);
}

void loop()
{
    // display success screen
    e.DrawText(COLOR_BLACK, COLOR_WHITE, MENU_START_COL, MENU_START_ROW*2, "Internal Memory Set");
    e.DrawText(COLOR_BLACK, COLOR_WHITE, MENU_START_COL, MENU_START_ROW*4, "Now load your");
    e.DrawText(COLOR_BLACK, COLOR_WHITE, MENU_START_COL, MENU_START_ROW*5, "   RA code file");
    delay(5000);
}
Let me know if there is something simple I can do to get a fuller control from the controller unit to change things on the controller directly as I do not have wifi and want to be able to make changes without having to unhook everything and plug it into my comp.
rimai
Posts: 12857
Joined: Fri Mar 18, 2011 6:47 pm

Re: Completely lost!

Post by rimai »

My suggestion is to get one thing at a time.
First you start with the code, then you tackle the custom main screen, but here is a good starting point:
http://forum.reefangel.com/viewtopic.php?f=14&t=109
Make sure you read the guide.
Your code looks good, except for the menus to change settings that will need libraries update.
I have already made the change and it will go along with the next release.
Roberto.
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

rimai wrote:My suggestion is to get one thing at a time.
First you start with the code, then you tackle the custom main screen, but here is a good starting point:
http://forum.reefangel.com/viewtopic.php?f=14&t=109
Make sure you read the guide.
Your code looks good, except for the menus to change settings that will need libraries update.
I have already made the change and it will go along with the next release.
I THINK I have my code how I want it, I will need a couple tweeks down the road (switching port 8 to be controlled by my pH for Co2 regulator) but I have found that code switch already I believe , and the pwm slope stuff (I believe there is an issue currently because the moonlight that I have plugged into the PWM port on the outlet box seems to be constant on), but I am getting there and understanding it somewhat better then before, especially since you noticed the main thing I wasn't understanding was a libraries issue instead of user lol

Any idea when the libraries will be updated so I can do the switch and be able to do the menus the way I am trying to?
rimai
Posts: 12857
Joined: Fri Mar 18, 2011 6:47 pm

Re: Completely lost!

Post by rimai »

I'd like Curt to take a look at it.
So, as soon as he has some time to go over it.
Roberto.
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

rimai wrote:I'd like Curt to take a look at it.
So, as soon as he has some time to go over it.
Ok cool, thank you!
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

I decided to try the RA live on the tank tonight since I am off work today and tomorrow..... seems like everything is ok, except my fan program. Since I am running a t5 DIY I run my fan when my lights are on (as well as temp setting), but I think the temp setting is keeping the fan from kicking on as my old controller and the RA do not show same temp (RA is 1 degree lower), and I programmed it to the old controllers readings/ settings.

Is there a code I can put in that regardless of temp the fan is on with the lights? I clicked the square to be on with the lights in RAgen I thought so not to sure why it doesn't come on.

I have not changed anything since my last post for codes.
rimai
Posts: 12857
Joined: Fri Mar 18, 2011 6:47 pm

Re: Completely lost!

Post by rimai »

Replace this:

Code: Select all

    ReefAngel.StandardFan(Port4);
With this:

Code: Select all

    ReefAngel.StandardLights(Port4);
Roberto.
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

rimai wrote:Replace this:

Code: Select all

    ReefAngel.StandardFan(Port4);
With this:

Code: Select all

    ReefAngel.StandardLights(Port4);
If I do that tho I will lose the fan for temp control purposes too tho, correct? I use the fan to keep the t5's cool and move heat away from the fixture while they are on, and to control temp through the day as well.
rimai
Posts: 12857
Joined: Fri Mar 18, 2011 6:47 pm

Re: Completely lost!

Post by rimai »

Ok, so use this:

Code: Select all

  ReefAngel.StandardFan(Port4);
  if (ReefAngel.Relay.Status(Port2)) ReefAngel.Relay.On(Port4);
Roberto.
binder
Posts: 2865
Joined: Fri Mar 18, 2011 6:20 pm
Location: Illinois
Contact:

Re: Completely lost!

Post by binder »

rimai wrote:I'd like Curt to take a look at it.
So, as soon as he has some time to go over it.
What do I need to take a look at? :)
rimai
Posts: 12857
Joined: Fri Mar 18, 2011 6:47 pm

Re: Completely lost!

Post by rimai »

Update to the libraries :)
I pushed to my dev branch
Roberto.
binder
Posts: 2865
Joined: Fri Mar 18, 2011 6:20 pm
Location: Illinois
Contact:

Re: Completely lost!

Post by binder »

rimai wrote:Update to the libraries :)
I pushed to my dev branch
Pulled and looking at right now. If all is good, then I may do a 0.9.3 release later tonight. :)
binder
Posts: 2865
Joined: Fri Mar 18, 2011 6:20 pm
Location: Illinois
Contact:

Re: Completely lost!

Post by binder »

pushed 0.9.3...get it while it's hot. :)
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

Thank you guys!
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

binder wrote:pushed 0.9.3...get it while it's hot. :)
I did not see 9.3 on the download page, am I looking in the wrong spot? :(
binder
Posts: 2865
Joined: Fri Mar 18, 2011 6:20 pm
Location: Illinois
Contact:

Re: Completely lost!

Post by binder »

It's probably not on the download page yet. Roberto has to update his installer.
To update the libraries, use the library update utility: http://forum.reefangel.com/viewtopic.php?f=8&t=2
Once you run the program and update your libraries, you will need to simply re-upload your code to your controller.
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

binder wrote:It's probably not on the download page yet. Roberto has to update his installer.
To update the libraries, use the library update utility: http://forum.reefangel.com/viewtopic.php?f=8&t=2
Once you run the program and update your libraries, you will need to simply re-upload your code to your controller.
Ok sweet thanks!
chort55
Posts: 50
Joined: Sun Mar 18, 2012 8:22 pm

Re: Completely lost!

Post by chort55 »

I got the new libraries and set it all up this morning.... works exactly how I wanted it to now!!!! Thank you so much Curt and Roberto for all your help I really appreciate it guys!

I will have some more to do when I get my leds I think, but I dont think I can mess with that much until I actually get the lights so I can see if I did it right in the 1st place or if I need to tweek that too.
rimai
Posts: 12857
Joined: Fri Mar 18, 2011 6:47 pm

Re: Completely lost!

Post by rimai »

Glad to hear that :)
Roberto.
Post Reply