Examples

Using the StandardDimming channels for LEDs
void loop
 * We have an LED unit with Blue and White Channels
 * We are using the standard dimming ports
 * We will use a PWMSlope shape for the Whites on the Daylight channel
 * We will use a PWMParabola shape for the Blues on the Actinic channel

{ ReefAngel.PWM.SetDaylight( PWMSlope(9,0,20,0,15,100,60,15) ); // Type of Fade, StartHour, StartMinute, EndHour, EndMinute, StartPercentage, EndPercentage, TimeOfslope,DefaultValue ReefAngel.PWM.SetActinic( PWMParabola(9,0,20,0,15,100,60,15) ); // Type of Fade, StartHour, StartMinute, EndHour, EndMinute, Start Percentage,End%, Default Value }

Using the StandardDimming channels for DC pumps (Jebao,Tunze, Speedwave)

 * We have 2 pumps running.
 * We are using the StandardDimming ports
 * We are using ShortPulse and want one pump running when the other pump is off.

void loop

{ ReefAngel.DCPump.UseMemory = false; ReefAngel.DCPump.SetMode( ShortPulse,50,10 ); //Type, PulseSpeed,PulseDuration ReefAngel.DCPump.DaylightChannel = Sync; // the dimming channel we are using for pump1 is opposite to the other dimming channel ReefAngel.DCPump.ActinicChannel = AntiSync; // the dimming channel we are using for pump2 is opposite to the other dimming channel }

Using the DimmingExpansion channels for LEDs
void loop
 * We have an LED unit with Blue and White Channels
 * We are using the standard dimming ports
 * We will use a PWMSlope shape for the Whites on the Daylight channel
 * We will use a PWMParabola shape for the Blues on the Actinic channel

{ ReefAngel.PWM.SetChannel ( 0, PWMSlope(9,0,20,0,15,100,60,15) ); // Use ExpansionPort 0, Type of Fade, StartHour, StartMinute, EndHour, EndMinute, StartPercentage, EndPercentage, TimeOfslope,DefaultValue ReefAngel.PWM.SetChannel ( 1, PWMParabola(9,0,20,0,15,100,60,15) ); // Use ExpansionPort1,Type of Fade, StartHour, StartMinute, EndHour, EndMinute, Start Percentage,End%, Default Value }

Using the DimmingExpansion channels for DC pumps (Jebao,Tunze, Speedwave)

 * We have 2 pumps running.
 * We are using the First 2 ports on the DimmingExpansion
 * We are using ShortPulse and want one pump running when the other pump is off.

void loop

{ ReefAngel.DCPump.UseMemory = false; ReefAngel.DCPump.SetMode( ShortPulse,50,10 ); //Type, PulseSpeed,PulseDuration ReefAngel.DCPump.ExpansionChannel[0] = Sync; // the dimming channel we are using for pump1 is opposite to the other dimming channel ReefAngel.DCPump.ExpansionChannel[1] = AntiSync; // the dimming channel we are using for pump2 is opposite to the other dimming channel }

Using StandardDimming channels, pumps alternating on & off:

 * We have 2 pumps running.
 * We are using the StandardDimming ports
 * We are using ShortPulse and want one pump running when the other pump is off.

void loop

{ ReefAngel.DCPump.UseMemory = false; ReefAngel.DCPump.SetMode( ShortPulse,50,10 ); //Type, PulseSpeed,PulseDuration ReefAngel.DCPump.DaylightChannel = Sync; // the dimming channel we are using for pump1 is opposite to the other dimming channel ReefAngel.DCPump.ActinicChannel = AntiSync; // the dimming channel we are using for pump2 is opposite to the other dimming channel }

Using StandardDimming channels, both pumps on:
This exactly the same code, but both channels are set to Sync void loop

{ ReefAngel.DCPump.UseMemory = false; ReefAngel.DCPump.SetMode( ShortPulse,50,10 ); //Type, PulseSpeed,PulseDuration ReefAngel.DCPump.DaylightChannel = Sync; // the dimming channel we are using for pump1 is the same as the other channel ReefAngel.DCPump.ActinicChannel = Sync; // the dimming channel we are using for pump2 is the same as the other channel }

Using StandardDimming channels and DimmingExpansion channels:
Now we add another 2 pumps. We have exceded the 2 StandardDimming channels so we are going to use 2 channels of the DimmingExpansion
 * We have 4 pumps running.
 * We are using the StandardDimming ports and Channel 1 + 2 of the DimmingExpansion
 * We are using ShortPulse and want the 2 pumps running on the StandardDimming ports to run on opposite cycles to the 2 pumps on the DimmingExpansion

{ ReefAngel.DCPump.UseMemory = false; ReefAngel.DCPump.SetMode( ShortPulse,50,10 ); //Type, PulseSpeed,PulseDuration ReefAngel.DCPump.DaylightChannel = Sync; // the dimming channel we are using for pump1 is the same as pump2 ReefAngel.DCPump.ActinicChannel = Sync; // the dimming channel we are using for pump2 is the same as pump1 ReefAngel.DCPump.ExpansionChannel[0] = AntiSync; // the dimming channel we are using for pump3 is opposite to pump 1+2 ReefAngel.DCPump.ExpansionChannel[2] = AntiSync; // the dimming channel we are using for pump4 is opposite to pump 1+2 }

Using the single WaterLevelExpansion for an ATO
{
 * We are using a single WaterLevel Sensor
 * We have an ATO pump on Port4 of the RelayBox
 * We want this pump to turn on when the LowLevel is at 10%
 * We want the pump to turn off when the HighLevel is 15%
 * We want a Timeout as a failsafe to turn the pump off after 60Seconds

ReefAngel.WaterLevelATO( Port4,60,10,15); //WaterLevelATO/ Use Port4 for Pump, Timeout in S, LowLevel%, HighLevel%

}