#include "RGBLed.h"
#include "LED.h"
#include "Blinker.h"
#define LED_PIN 12
#define RGB_R_PIN 11
#define RGB_G_PIN 10
#define RGB_B_PIN 9
LED ledNormal(LED_PIN);
RGBLed ledRGB(RGB_R_PIN, RGB_G_PIN, RGB_B_PIN, RGBLed::COMMON_CATHODE);
BlinkerLedWrapper4LED ledWrap(ledNormal);
BlinkerLedWrapper4RGB rgbWrap(ledRGB);
Blinker blinker(ledWrap, rgbWrap);
bool humBlinkDone = false;
bool tInBlinkDone = false;
bool tOutBlinkDone = false;
float humidity = 0;
float tIn = 0;
float tOut = 0;
bool relayOn = false;
int currentBlink = 0;
void setup() {
Serial.begin(115200);
Serial.println("Starting up...");
delay(1500);
readTemps();
evaluateTemps();
}
void loop() {
if(currentBlink==0){
Serial.println("Blinking humidity");
delay(1000);
// Humidity color
rgbWrap.setColor(255,200,5);
blinker.blinkNumber(humidity);
currentBlink = 1;
}
if(humBlinkDone && currentBlink==1){
Serial.println("Blinking temp IN");
delay(1000);
// Tin color
rgbWrap.setColor(200,5,255);
blinker.blinkNumber(tIn);
currentBlink = 2;
}
if(tInBlinkDone && currentBlink==2){
Serial.println("Blinking temp OUT");
delay(1000);
// Tout color
rgbWrap.setColor(5,200,255);
blinker.blinkNumber(tOut);
currentBlink = 3;
}
if(blinker.isBlinkDone()){
if(currentBlink == 1){
humBlinkDone = true;
} else if(currentBlink == 2){
tInBlinkDone = true;
} if(currentBlink == 3){
tOutBlinkDone = true;
Serial.println("All blinked. starting over...");
delay(2000);
currentBlink = 0;
humBlinkDone = false;
tInBlinkDone = false;
tOutBlinkDone = false;
// Read updated values
readTemps();
evaluateTemps();
}
}
}
void readTemps(){
Serial.println("Reading sensors.");
humidity = 80;
tIn = 15.1;
tOut = 21.4;
}
void evaluateTemps(){
Serial.println("Evaluating temps.");
if(tIn <= tOut && tOut > 5){
Serial.println("Set Relay ON");
// relay.ON
// relayLed.on();
} else {
Serial.println("Set Relay OFF");
// relay.OFF
// relayLed.off();
}
}