Add triggering of actuator on/off state by button press.

This will enable using button on the gateway to switch any controlled attached actuators/relays when pressed.

Adds the following macros:
- ACTUATOR_ON; 0 or 1, set to the output level of the gpio pin to turn the actuator on.
- ACTUATOR_ONOFF_DEFAULT; ACTUATOR_ON or !ACTUATOR_ON, set to the state desired on reset.
- ACTUATOR_BUTTON_TRIGGER_LEVEL; 0 or 1, set to the sensing level which to detect a button press to change the actuator state.
This commit is contained in:
h2zero authored and Florian committed 2021-07-09 21:52:40 -05:00
1 parent 2ae8f0c0c0
commit 45a0184320
5 files changed
+36

No files matched your search

+11
View File
@@ -76,4 +76,15 @@ void MQTTtoONOFF(char* topicOri, char* datacallback) {
}
# endif
void ActuatorButtonTrigger() {
uint8_t level = !digitalRead(ACTUATOR_ONOFF_GPIO);
char* level_string = "ON";
if (level != ACTUATOR_ON) {
level_string = "OFF";
}
Log.trace(F("Actuator triggered %s by button" CR), level_string);
digitalWrite(ACTUATOR_ONOFF_GPIO, level);
pub(subjectGTWONOFFtoMQTT, level_string);
}
#endif