Update main.cpp
This commit is contained in:
parent
7edd4f6b48
commit
bcc64b4a28
43
src/main.cpp
43
src/main.cpp
|
@ -28,11 +28,18 @@ void setup()
|
||||||
// Initialize the ESPMegaPRO
|
// Initialize the ESPMegaPRO
|
||||||
ESP_LOGV("CUD IoT OS", "Initializing ESPMegaPRO");
|
ESP_LOGV("CUD IoT OS", "Initializing ESPMegaPRO");
|
||||||
espmega.begin();
|
espmega.begin();
|
||||||
|
// Initialize Inputs
|
||||||
espmega.inputs.preloadInputBuffer();
|
espmega.inputs.preloadInputBuffer();
|
||||||
espmega.inputs.setDebounceTime(RIGHT_STADIUM_LIGHT_SWITCH_PIN, SWITCH_DEBOUNCE_TIME_MS);
|
espmega.inputs.setDebounceTime(RIGHT_STADIUM_LIGHT_SWITCH_PIN, SWITCH_DEBOUNCE_TIME_MS);
|
||||||
espmega.inputs.setDebounceTime(LEFT_STADIUM_LIGHT_SWITCH_PIN, SWITCH_DEBOUNCE_TIME_MS);
|
espmega.inputs.setDebounceTime(LEFT_STADIUM_LIGHT_SWITCH_PIN, SWITCH_DEBOUNCE_TIME_MS);
|
||||||
espmega.inputs.setDebounceTime(GIRLS_TOILET_LIGHT_SWITCH_PIN, SWITCH_DEBOUNCE_TIME_MS);
|
espmega.inputs.setDebounceTime(GIRLS_TOILET_LIGHT_SWITCH_PIN, SWITCH_DEBOUNCE_TIME_MS);
|
||||||
espmega.inputs.setDebounceTime(BOYS_TOILET_LIGHT_SWITCH_PIN, SWITCH_DEBOUNCE_TIME_MS);
|
espmega.inputs.setDebounceTime(BOYS_TOILET_LIGHT_SWITCH_PIN, SWITCH_DEBOUNCE_TIME_MS);
|
||||||
|
// Initialize Outputs
|
||||||
|
for (uint8_t i = 0; i < 16; i++)
|
||||||
|
{
|
||||||
|
// Digital Pin Mode
|
||||||
|
espmega.outputs.setValue(i, 4095);
|
||||||
|
}
|
||||||
// Initialize IoT Modules
|
// Initialize IoT Modules
|
||||||
ESP_LOGV("CUD IoT OS", "Initializing IoT Modules");
|
ESP_LOGV("CUD IoT OS", "Initializing IoT Modules");
|
||||||
espmega.setTimezone("ICT-7");
|
espmega.setTimezone("ICT-7");
|
||||||
|
@ -76,6 +83,8 @@ void smartvar_init() {
|
||||||
// Initialize Smart Variables
|
// Initialize Smart Variables
|
||||||
ESP_LOGV("CUD IoT OS", "Initializing Smart Variables");
|
ESP_LOGV("CUD IoT OS", "Initializing Smart Variables");
|
||||||
toiletLightsLock.begin(5);
|
toiletLightsLock.begin(5);
|
||||||
|
toiletLightsLock.bindFRAM(&espmega.fram, 10000);
|
||||||
|
toiletLightsLock.setValueAutoSave(true);
|
||||||
// Construct the topic
|
// Construct the topic
|
||||||
char* toilet_lock_topic = (char*)malloc(strlen(TOPIC_TOILET_LIGHT_LOCK) + strlen(espmega.iot->getMqttConfig()->base_topic) + 5);
|
char* toilet_lock_topic = (char*)malloc(strlen(TOPIC_TOILET_LIGHT_LOCK) + strlen(espmega.iot->getMqttConfig()->base_topic) + 5);
|
||||||
sprintf(toilet_lock_topic, "%s%s", espmega.iot->getMqttConfig()->base_topic, TOPIC_TOILET_LIGHT_LOCK);
|
sprintf(toilet_lock_topic, "%s%s", espmega.iot->getMqttConfig()->base_topic, TOPIC_TOILET_LIGHT_LOCK);
|
||||||
|
@ -88,6 +97,8 @@ void smartvar_init() {
|
||||||
toiletLightsLock.enableValueRequest(toilet_lock_request_topic);
|
toiletLightsLock.enableValueRequest(toilet_lock_request_topic);
|
||||||
|
|
||||||
gymLightsLock.begin(5);
|
gymLightsLock.begin(5);
|
||||||
|
gymLightsLock.bindFRAM(&espmega.fram, 10010);
|
||||||
|
gymLightsLock.setValueAutoSave(true);
|
||||||
// Construct the topic
|
// Construct the topic
|
||||||
char* gym_lock_topic = (char*)malloc(strlen(TOPIC_GYM_LIGHT_LOCK) + strlen(espmega.iot->getMqttConfig()->base_topic) + 5);
|
char* gym_lock_topic = (char*)malloc(strlen(TOPIC_GYM_LIGHT_LOCK) + strlen(espmega.iot->getMqttConfig()->base_topic) + 5);
|
||||||
sprintf(gym_lock_topic, "%s%s", espmega.iot->getMqttConfig()->base_topic, TOPIC_GYM_LIGHT_LOCK);
|
sprintf(gym_lock_topic, "%s%s", espmega.iot->getMqttConfig()->base_topic, TOPIC_GYM_LIGHT_LOCK);
|
||||||
|
@ -112,14 +123,14 @@ void button_init()
|
||||||
if (get_gym_light_lock())
|
if (get_gym_light_lock())
|
||||||
return;
|
return;
|
||||||
// Turn on right light
|
// Turn on right light
|
||||||
espmega.outputs.digitalWrite(RIGHT_LIGHT_RELAY_PIN, HIGH); });
|
espmega.outputs.setState(RIGHT_LIGHT_RELAY_PIN, HIGH); });
|
||||||
rightOnButton.setLongPressCallback([]()
|
rightOnButton.setLongPressCallback([]()
|
||||||
{
|
{
|
||||||
if (get_gym_light_lock())
|
if (get_gym_light_lock())
|
||||||
return;
|
return;
|
||||||
// Turn on both lights
|
// Turn on both lights
|
||||||
espmega.outputs.digitalWrite(RIGHT_LIGHT_RELAY_PIN, HIGH);
|
espmega.outputs.setState(RIGHT_LIGHT_RELAY_PIN, HIGH);
|
||||||
espmega.outputs.digitalWrite(LEFT_LIGHT_RELAY_PIN, HIGH); });
|
espmega.outputs.setState(LEFT_LIGHT_RELAY_PIN, HIGH); });
|
||||||
rightOnButton.begin();
|
rightOnButton.begin();
|
||||||
|
|
||||||
// Right Off Button
|
// Right Off Button
|
||||||
|
@ -130,14 +141,14 @@ void button_init()
|
||||||
if (get_gym_light_lock())
|
if (get_gym_light_lock())
|
||||||
return;
|
return;
|
||||||
// Turn off right light
|
// Turn off right light
|
||||||
espmega.outputs.digitalWrite(RIGHT_LIGHT_RELAY_PIN, LOW); });
|
espmega.outputs.setState(RIGHT_LIGHT_RELAY_PIN, LOW); });
|
||||||
rightOffButton.setLongPressCallback([]()
|
rightOffButton.setLongPressCallback([]()
|
||||||
{
|
{
|
||||||
if (get_gym_light_lock())
|
if (get_gym_light_lock())
|
||||||
return;
|
return;
|
||||||
// Turn off both lights
|
// Turn off both lights
|
||||||
espmega.outputs.digitalWrite(RIGHT_LIGHT_RELAY_PIN, LOW);
|
espmega.outputs.setState(RIGHT_LIGHT_RELAY_PIN, LOW);
|
||||||
espmega.outputs.digitalWrite(LEFT_LIGHT_RELAY_PIN, LOW); });
|
espmega.outputs.setState(LEFT_LIGHT_RELAY_PIN, LOW); });
|
||||||
rightOffButton.begin();
|
rightOffButton.begin();
|
||||||
|
|
||||||
// Left On Button
|
// Left On Button
|
||||||
|
@ -148,14 +159,14 @@ void button_init()
|
||||||
if (get_gym_light_lock())
|
if (get_gym_light_lock())
|
||||||
return;
|
return;
|
||||||
// Turn on left light
|
// Turn on left light
|
||||||
espmega.outputs.digitalWrite(LEFT_LIGHT_RELAY_PIN, HIGH); });
|
espmega.outputs.setState(LEFT_LIGHT_RELAY_PIN, HIGH); });
|
||||||
leftOnButton.setLongPressCallback([]()
|
leftOnButton.setLongPressCallback([]()
|
||||||
{
|
{
|
||||||
if (get_gym_light_lock())
|
if (get_gym_light_lock())
|
||||||
return;
|
return;
|
||||||
// Turn on both lights
|
// Turn on both lights
|
||||||
espmega.outputs.digitalWrite(RIGHT_LIGHT_RELAY_PIN, HIGH);
|
espmega.outputs.setState(RIGHT_LIGHT_RELAY_PIN, HIGH);
|
||||||
espmega.outputs.digitalWrite(LEFT_LIGHT_RELAY_PIN, HIGH); });
|
espmega.outputs.setState(LEFT_LIGHT_RELAY_PIN, HIGH); });
|
||||||
leftOnButton.begin();
|
leftOnButton.begin();
|
||||||
|
|
||||||
// Left Off Button
|
// Left Off Button
|
||||||
|
@ -164,12 +175,12 @@ void button_init()
|
||||||
leftOffButton.setShortPressCallback([]()
|
leftOffButton.setShortPressCallback([]()
|
||||||
{
|
{
|
||||||
// Turn off left light
|
// Turn off left light
|
||||||
espmega.outputs.digitalWrite(LEFT_LIGHT_RELAY_PIN, LOW); });
|
espmega.outputs.setState(LEFT_LIGHT_RELAY_PIN, LOW); });
|
||||||
leftOffButton.setLongPressCallback([]()
|
leftOffButton.setLongPressCallback([]()
|
||||||
{
|
{
|
||||||
// Turn off both lights
|
// Turn off both lights
|
||||||
espmega.outputs.digitalWrite(RIGHT_LIGHT_RELAY_PIN, LOW);
|
espmega.outputs.setState(RIGHT_LIGHT_RELAY_PIN, LOW);
|
||||||
espmega.outputs.digitalWrite(LEFT_LIGHT_RELAY_PIN, LOW); });
|
espmega.outputs.setState(LEFT_LIGHT_RELAY_PIN, LOW); });
|
||||||
leftOffButton.begin();
|
leftOffButton.begin();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -198,7 +209,7 @@ void handle_input_change(uint8_t pin, bool state)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
espmega.outputs.digitalWrite(RIGHT_STADIUM_LIGHT_RELAY_PIN,
|
espmega.outputs.setState(RIGHT_STADIUM_LIGHT_RELAY_PIN,
|
||||||
!espmega.outputs.getState(RIGHT_STADIUM_LIGHT_RELAY_PIN));
|
!espmega.outputs.getState(RIGHT_STADIUM_LIGHT_RELAY_PIN));
|
||||||
break;
|
break;
|
||||||
case LEFT_STADIUM_LIGHT_SWITCH_PIN:
|
case LEFT_STADIUM_LIGHT_SWITCH_PIN:
|
||||||
|
@ -206,7 +217,7 @@ void handle_input_change(uint8_t pin, bool state)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
espmega.outputs.digitalWrite(LEFT_STADIUM_LIGHT_RELAY_PIN,
|
espmega.outputs.setState(LEFT_STADIUM_LIGHT_RELAY_PIN,
|
||||||
!espmega.outputs.getState(LEFT_STADIUM_LIGHT_RELAY_PIN));
|
!espmega.outputs.getState(LEFT_STADIUM_LIGHT_RELAY_PIN));
|
||||||
break;
|
break;
|
||||||
case GIRLS_TOILET_LIGHT_SWITCH_PIN:
|
case GIRLS_TOILET_LIGHT_SWITCH_PIN:
|
||||||
|
@ -214,7 +225,7 @@ void handle_input_change(uint8_t pin, bool state)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
espmega.outputs.digitalWrite(GIRLS_TOILET_LIGHT_RELAY_PIN,
|
espmega.outputs.setState(GIRLS_TOILET_LIGHT_RELAY_PIN,
|
||||||
!espmega.outputs.getState(GIRLS_TOILET_LIGHT_RELAY_PIN));
|
!espmega.outputs.getState(GIRLS_TOILET_LIGHT_RELAY_PIN));
|
||||||
break;
|
break;
|
||||||
case BOYS_TOILET_LIGHT_SWITCH_PIN:
|
case BOYS_TOILET_LIGHT_SWITCH_PIN:
|
||||||
|
@ -222,7 +233,7 @@ void handle_input_change(uint8_t pin, bool state)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
espmega.outputs.digitalWrite(BOYS_TOILET_LIGHT_RELAY_PIN,
|
espmega.outputs.setState(BOYS_TOILET_LIGHT_RELAY_PIN,
|
||||||
!espmega.outputs.getState(BOYS_TOILET_LIGHT_RELAY_PIN));
|
!espmega.outputs.getState(BOYS_TOILET_LIGHT_RELAY_PIN));
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
Loading…
Reference in New Issue