Page 1 of 1
Multi tank temp control
Posted: Mon Aug 01, 2016 4:38 pm
by jjdezek
I just set up a biocube next to my 210 and want to run a temp probe to it and be able to control the temps of both tanks with my reefangel. Can I program one heater to one temp probe and another heater to a second temp probe? If I do this I will need another Relay box.
Re: Multi tank temp control
Posted: Tue Aug 02, 2016 3:04 am
by cosmith71
I do the same thing with a small freshwater tank. Here's the code I use. Replace the labels with your own ports.
Code: Select all
// Freshwater tank heater control
if (ReefAngel.Params.Temp[T2_PROBE] <= 770 && ReefAngel.Params.Temp[T2_PROBE] > 0) ReefAngel.Relay.On(BettaHeater); // If sensor 2 temperature <= LowTemp - turn on heater
if (ReefAngel.Params.Temp[T2_PROBE] >= 780) ReefAngel.Relay.Off(BettaHeater); // If sensor 2 temperature >= HighTemp - turn off heater
Re: Multi tank temp control
Posted: Fri Aug 12, 2016 11:55 am
by jjdezek
I have my codes programmed so I can change it through internal memory.
Re: Multi tank temp control
Posted: Sun Aug 14, 2016 6:42 am
by jjdezek
Can I program it to run 2 different tanks with the coding for internal memory?
Re: Multi tank temp control
Posted: Sun Aug 14, 2016 6:44 am
by cosmith71
If you use a custom memory location, then yes. But not with the preset memory locations.
Re: Multi tank temp control
Posted: Sun Aug 14, 2016 12:54 pm
by jjdezek
How would I go about doing that?
Re: Multi tank temp control
Posted: Sun Aug 14, 2016 1:21 pm
by cosmith71
You would need something like this up in the globals area (where all the #includes live).
Code: Select all
// Define memory locations for temp values
// Integers take two locations each. Locations 100-199 are available.
#define Mem_I_LowTemp 100 // Low temperature stored in memory locations 100 and 101
#define Mem_I_HighTemp 102 // High temperature stored in locations 102 and 103
Then change the heater code to this:
Code: Select all
// Freshwater tank heater control
if (ReefAngel.Params.Temp[T2_PROBE] <= Mem_I_LowTemp && ReefAngel.Params.Temp[T2_PROBE] > 0) ReefAngel.Relay.On(BettaHeater); // If sensor 2 temperature <= LowTemp - turn on heater
if (ReefAngel.Params.Temp[T2_PROBE] >= Mem_I_HighTemp) ReefAngel.Relay.Off(BettaHeater); // If sensor 2 temperature >= HighTemp - turn off heater
Then, in the RA Status app (not sure if you can use the U-App or not, haven't tried it), pull up the menu, go to Memory, hit the down arrow, and scroll up to Custom location. Put your low temperature in location 100 (be sure to select Int) and your high temperature in location 102. VERY IMPORTANT! Make sure you enter in the temperature as 3 digits. I.e., 800 for 80 degrees, 790 for 79 degrees, 789 for 78.9 degrees, etc.
--Colin