invert relay bool
This commit is contained in:
parent
a35cbc7773
commit
8ef9ec0659
@ -3,6 +3,8 @@
|
|||||||
#include <LiquidCrystal_I2C.h>
|
#include <LiquidCrystal_I2C.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
|
bool invertRelay = false; //------------------IF YOUR RELAYS OPERATE THE OPPOSITE OF HOW YOU EXPECT, CHANGE THIS TO 'TRUE'
|
||||||
|
|
||||||
unsigned long systemClock; //-----------------SYSTEM CLOCK [VERY IMPORTANT]
|
unsigned long systemClock; //-----------------SYSTEM CLOCK [VERY IMPORTANT]
|
||||||
unsigned long lastPulse; //-------------------LAST void loop() PULSE
|
unsigned long lastPulse; //-------------------LAST void loop() PULSE
|
||||||
bool failsafeMode = false; // If panel fails to boot, you can enter a reduced-feature down panel that is guaranteed to work
|
bool failsafeMode = false; // If panel fails to boot, you can enter a reduced-feature down panel that is guaranteed to work
|
||||||
@ -241,9 +243,16 @@ void setup() {
|
|||||||
pinMode(zone2Pin, INPUT); //zone 2
|
pinMode(zone2Pin, INPUT); //zone 2
|
||||||
|
|
||||||
pinMode(buzzerPin, OUTPUT); //buzzer
|
pinMode(buzzerPin, OUTPUT); //buzzer
|
||||||
digitalWrite(hornRelay, HIGH); //horn
|
|
||||||
digitalWrite(strobeRelay, HIGH); //strobe
|
if (not invertRelay){
|
||||||
digitalWrite(smokeDetectorRelay, HIGH); //smoke relay
|
digitalWrite(hornRelay, HIGH); //horn
|
||||||
|
digitalWrite(strobeRelay, HIGH); //strobe
|
||||||
|
digitalWrite(smokeDetectorRelay, HIGH); //smoke relay
|
||||||
|
} else {
|
||||||
|
digitalWrite(hornRelay, LOW); //horn
|
||||||
|
digitalWrite(strobeRelay, LOW); //strobe
|
||||||
|
digitalWrite(smokeDetectorRelay, LOW); //smoke relay
|
||||||
|
}
|
||||||
|
|
||||||
pinMode(sclPin, OUTPUT); //scl
|
pinMode(sclPin, OUTPUT); //scl
|
||||||
pinMode(sdaPin, OUTPUT); //sda
|
pinMode(sdaPin, OUTPUT); //sda
|
||||||
@ -386,7 +395,11 @@ void setup() {
|
|||||||
panelUnlocked = (digitalRead(keySwitchPin) and keyRequired) ? true : false; //check the key status on startup
|
panelUnlocked = (digitalRead(keySwitchPin) and keyRequired) ? true : false; //check the key status on startup
|
||||||
digitalWrite(silenceLed, LOW);
|
digitalWrite(silenceLed, LOW);
|
||||||
digitalWrite(alarmLed, LOW);
|
digitalWrite(alarmLed, LOW);
|
||||||
digitalWrite(smokeDetectorRelay, LOW); //turn on smoke relay
|
if (invertRelay){
|
||||||
|
digitalWrite(smokeDetectorRelay, HIGH); //turn on smoke relay
|
||||||
|
} else {
|
||||||
|
digitalWrite(smokeDetectorRelay, LOW); //turn on smoke relay
|
||||||
|
}
|
||||||
Serial.println("-=- STARTUP COMPLETE -=-");
|
Serial.println("-=- STARTUP COMPLETE -=-");
|
||||||
} else {
|
} else {
|
||||||
Serial.println("-=- ENTERING FAILSAFE MODE -=-");
|
Serial.println("-=- ENTERING FAILSAFE MODE -=-");
|
||||||
@ -402,7 +415,11 @@ void setup() {
|
|||||||
lcd.setCursor(0,1);
|
lcd.setCursor(0,1);
|
||||||
lcd.print("SYSTEM NORMAL");
|
lcd.print("SYSTEM NORMAL");
|
||||||
digitalWrite(readyLed, HIGH);
|
digitalWrite(readyLed, HIGH);
|
||||||
digitalWrite(smokeDetectorRelay, LOW); //turn on smoke relay
|
if (invertRelay){
|
||||||
|
digitalWrite(smokeDetectorRelay, HIGH); //turn on smoke relay
|
||||||
|
} else {
|
||||||
|
digitalWrite(smokeDetectorRelay, LOW); //turn on smoke relay
|
||||||
|
}
|
||||||
}
|
}
|
||||||
lastPulse = millis(); //start last pulse
|
lastPulse = millis(); //start last pulse
|
||||||
}
|
}
|
||||||
@ -421,24 +438,48 @@ void noTone() {
|
|||||||
}
|
}
|
||||||
void hornOn(bool on){
|
void hornOn(bool on){
|
||||||
if (on){
|
if (on){
|
||||||
digitalWrite(hornRelay, LOW); //turn on horn relay
|
if (invertRelay){
|
||||||
|
digitalWrite(hornRelay, HIGH); //turn on horn relay
|
||||||
|
} else {
|
||||||
|
digitalWrite(hornRelay, LOW); //turn on horn relay
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
digitalWrite(hornRelay, HIGH); //turn off horn relay
|
if (invertRelay){
|
||||||
|
digitalWrite(hornRelay, LOW); //turn on horn relay
|
||||||
|
} else {
|
||||||
|
digitalWrite(hornRelay, HIGH); //turn on horn relay
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
void strobeOn(bool on){
|
void strobeOn(bool on){
|
||||||
if (on){
|
if (on){
|
||||||
digitalWrite(strobeRelay, LOW); //turn on strobe relay without strobe sync
|
if (invertRelay){
|
||||||
|
digitalWrite(strobeRelay, HIGH); //turn on strobe relay without strobe sync
|
||||||
|
} else {
|
||||||
|
digitalWrite(strobeRelay, LOW); //turn on strobe relay without strobe sync
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
digitalWrite(strobeRelay, HIGH); //turn off strobe relay
|
if (invertRelay){
|
||||||
|
digitalWrite(strobeRelay, LOW); //turn on strobe relay without strobe sync
|
||||||
|
} else {
|
||||||
|
digitalWrite(strobeRelay, HIGH); //turn on strobe relay without strobe sync
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void smokeDetectorOn(bool on){
|
void smokeDetectorOn(bool on){
|
||||||
if (on){
|
if (on){
|
||||||
digitalWrite(smokeDetectorRelay, LOW); //turn on smoke relay
|
if (invertRelay){
|
||||||
|
digitalWrite(smokeDetectorRelay, HIGH); //turn on smoke relay
|
||||||
|
} else {
|
||||||
|
digitalWrite(smokeDetectorRelay, LOW); //turn on smoke relay
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
digitalWrite(smokeDetectorRelay, HIGH); //turn off smoke relay
|
if (invertRelay){
|
||||||
|
digitalWrite(smokeDetectorRelay, LOW); //turn on smoke relay
|
||||||
|
} else {
|
||||||
|
digitalWrite(smokeDetectorRelay, HIGH); //turn on smoke relay
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//---------------------------------------------------------------------------------------- functions for turning certain things on and off
|
//---------------------------------------------------------------------------------------- functions for turning certain things on and off
|
||||||
@ -1963,8 +2004,13 @@ void failsafe(){ //--------------------------------------------- FAILSAFE MODE I
|
|||||||
fullAlarm = true;
|
fullAlarm = true;
|
||||||
silenced = false;
|
silenced = false;
|
||||||
digitalWrite(alarmLed, HIGH);
|
digitalWrite(alarmLed, HIGH);
|
||||||
digitalWrite(hornRelay, LOW);
|
if (invertRelay){
|
||||||
digitalWrite(strobeRelay, LOW);
|
digitalWrite(hornRelay, HIGH);
|
||||||
|
digitalWrite(strobeRelay, HIGH);
|
||||||
|
} else {
|
||||||
|
digitalWrite(hornRelay, LOW);
|
||||||
|
digitalWrite(strobeRelay, LOW);
|
||||||
|
}
|
||||||
lcd.clear();
|
lcd.clear();
|
||||||
lcd.setCursor(0,0);
|
lcd.setCursor(0,0);
|
||||||
lcd.print("FAILSAFE MODE");
|
lcd.print("FAILSAFE MODE");
|
||||||
@ -1973,8 +2019,13 @@ void failsafe(){ //--------------------------------------------- FAILSAFE MODE I
|
|||||||
}
|
}
|
||||||
if (digitalRead(silenceButtonPin) and not silenced and fullAlarm){
|
if (digitalRead(silenceButtonPin) and not silenced and fullAlarm){
|
||||||
silenced = true;
|
silenced = true;
|
||||||
digitalWrite(hornRelay, HIGH);
|
if (invertRelay){
|
||||||
digitalWrite(silenceLed,HIGH);
|
digitalWrite(hornRelay, LOW);
|
||||||
|
digitalWrite(strobeRelay, LOW);
|
||||||
|
} else {
|
||||||
|
digitalWrite(hornRelay, HIGH);
|
||||||
|
digitalWrite(strobeRelay, HIGH);
|
||||||
|
}
|
||||||
digitalWrite(alarmLed,LOW);
|
digitalWrite(alarmLed,LOW);
|
||||||
lcd.clear();
|
lcd.clear();
|
||||||
lcd.setCursor(0,0);
|
lcd.setCursor(0,0);
|
||||||
@ -1983,8 +2034,15 @@ void failsafe(){ //--------------------------------------------- FAILSAFE MODE I
|
|||||||
lcd.print("SILENCED");
|
lcd.print("SILENCED");
|
||||||
}
|
}
|
||||||
if (digitalRead(resetButtonPin)){
|
if (digitalRead(resetButtonPin)){
|
||||||
digitalWrite(smokeDetectorRelay, HIGH);
|
if (invertRelay){
|
||||||
digitalWrite(hornRelay, HIGH);
|
digitalWrite(smokeDetectorRelay, LOW);
|
||||||
|
digitalWrite(hornRelay, LOW);
|
||||||
|
digitalWrite(strobeRelay, LOW);
|
||||||
|
} else {
|
||||||
|
digitalWrite(smokeDetectorRelay, HIGH);
|
||||||
|
digitalWrite(hornRelay, HIGH);
|
||||||
|
digitalWrite(strobeRelay, HIGH);
|
||||||
|
}
|
||||||
digitalWrite(silenceLed,LOW);
|
digitalWrite(silenceLed,LOW);
|
||||||
digitalWrite(alarmLed,LOW);
|
digitalWrite(alarmLed,LOW);
|
||||||
digitalWrite(readyLed,LOW);
|
digitalWrite(readyLed,LOW);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user