summaryrefslogtreecommitdiffstats
path: root/radiator-plc
diff options
context:
space:
mode:
authorroot <root@ka-ata-killa.ourano.james.local>2021-06-13 11:41:11 +0100
committerroot <root@ka-ata-killa.ourano.james.local>2021-06-13 11:41:11 +0100
commit0d810335cfc55c836a054db14fab36fb99f58441 (patch)
tree67e9fc2ab764bbe76d03f644ecea2dfd6dde4037 /radiator-plc
parent6386636edb53aabc99de2f8479b00ca8f6ee6bfe (diff)
downloadheating-0d810335cfc55c836a054db14fab36fb99f58441.tar.gz
heating-0d810335cfc55c836a054db14fab36fb99f58441.tar.bz2
heating-0d810335cfc55c836a054db14fab36fb99f58441.zip
add atacamaHEADmaster
Diffstat (limited to 'radiator-plc')
-rw-r--r--radiator-plc/stm32/app/logic.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/radiator-plc/stm32/app/logic.c b/radiator-plc/stm32/app/logic.c
index b5b768d..fb6ccd4 100644
--- a/radiator-plc/stm32/app/logic.c
+++ b/radiator-plc/stm32/app/logic.c
@@ -96,6 +96,8 @@ int high_limit[N_VALVES] = {
00000,
};
+int override[N_VALVES];
+
int valve_state[N_VALVES];
int failed_reads[N_VALVES];
@@ -130,6 +132,10 @@ void mqtt_dispatch (char *type, char *who, char *what, char *msg)
usart1_queue_buf (msg_buf, sprintf (msg_buf, "\r\nMQTTR stat/%s/var2 %.2f\r\n", valve_name[i], scale (high_limit[i])));
}
+ if (!strcmp (what, "var3")) {
+ override[i] = atoi (msg);
+ usart1_queue_buf (msg_buf, sprintf (msg_buf, "\r\nMQTTR stat/%s/var3 %d\r\n", valve_name[i], override[i]));
+ }
}
}
@@ -164,6 +170,9 @@ void logic_tick (void)
valve_state[i] = 0;
}
+ if (override[i])
+ valve_state[i]=1;
+
o = valve_state[i];
output_write (i, o);