From c005764a0d7ab0b7a4f65fe113d56e42523c629e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Patrick=20Ha=C3=9Fel?= Date: Tue, 3 Jan 2023 13:04:30 +0100 Subject: [PATCH] display config write delay --- src/config.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/config.cpp b/src/config.cpp index 2508865..d287ee0 100644 --- a/src/config.cpp +++ b/src/config.cpp @@ -1,5 +1,8 @@ #include #include "config.h" +#include "display.h" + +#define WRITE_DELAY_MS (30 * 1000) uint32_t calculateChecksum(Config *ptr); @@ -11,6 +14,8 @@ Config config; bool dirty = false; +bool notify = false; + unsigned long lastDirtyMillis = 0; void config_setup() { @@ -25,13 +30,20 @@ void config_set_dirty() { } void config_loop() { + if (notify && millis() - lastDirtyMillis <= WRITE_DELAY_MS + 1000) { + notify = false; + display.set(0, 0, 255, 0, 0); + } + if (!dirty) { return; } + if (millis() - lastDirtyMillis <= 30000) { return; } dirty = false; + notify = true; uint32_t checksum = calculateChecksum(&config);