From 4aeffc76b0c1be5121ea27c154ca9d2fd07d70b1 Mon Sep 17 00:00:00 2001 From: Emanuele Trabattoni Date: Fri, 29 Aug 2025 22:18:49 +0200 Subject: [PATCH] fixed log on TCP reconnection --- src/main.cpp | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 74f8ec7..2db2d74 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -37,6 +37,7 @@ void loop() uint8_t sensors(0); bool buzzing(false); NetworkClient logStream; + LOG_ATTACH_STREAM(logStream); //////////////// DEVICES //////////////// // Declared here to keep devices local to the main loop otherwise the kernel crashes // @@ -148,7 +149,6 @@ void loop() time_t ntpTime; uint8_t timeRetries(0); uint8_t mqttRetries(0); - uint8_t logStreamRetries(0); while (timeRetries++ < conf.m_ntpRetries) { eth.setNtpTimeOffset(conf.m_ntpTimezone); @@ -176,14 +176,6 @@ void loop() } delay(250); } - while (logStreamRetries++ < conf.m_mqttRetries) - { - if (logStream.connect(conf.m_mqttHost.c_str(), 9876)) - { - LOG_ATTACH_STREAM(logStream); - break; - } - } }); //////////////////////////////////////// @@ -194,6 +186,16 @@ void loop() { const uint32_t start(millis()); drivers::PCF85063::datetime_t datetime; + + if (!logStream.connected()) + { + logStream.stop(); + logStream.clearWriteError(); + logStream.setConnectionTimeout(100); + logStream.connect(conf.m_mqttHost.c_str(), 9876); + LOG_WARN("TCP LogStream Connected"); + } + rtc.readDatetime(datetime); const std::string timeStr(drivers::PCF85063::datetime2str(datetime)); LOG_INFO("[", k++, "] Loop - Current Datetime UTC", timeStr.c_str());