From d397a14b41c1392b00ec3c0ea20ec605c5716d11 Mon Sep 17 00:00:00 2001 From: MichaelDvP Date: Mon, 17 Aug 2026 11:37:19 +0200 Subject: [PATCH] prevent unsuccessful mqtt connections, dev7 --- src/core/mqtt.cpp | 7 +++---- src/emsesp_version.h | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/core/mqtt.cpp b/src/core/mqtt.cpp index 2f0966e8d..401018e51 100644 --- a/src/core/mqtt.cpp +++ b/src/core/mqtt.cpp @@ -351,6 +351,7 @@ void Mqtt::reset_mqtt() { if (mqttClient_->connected()) { mqttClient_->disconnect(true); // force a disconnect } + load_settings(); // reload MQTT settings } // load the settings from service @@ -502,8 +503,8 @@ void Mqtt::on_disconnect(espMqttClientTypes::DisconnectReason reason) { // MQTT on_connect - when an MQTT connect is established void Mqtt::on_connect() { - if (connecting_) { - return; // prevent duplicated connections + if (connecting_ || !connected()) { + return; // prevent duplicated connections and unsuccessful tries } LOG_INFO("MQTT connected"); @@ -511,8 +512,6 @@ void Mqtt::on_connect() { connecting_ = true; queuecount_ = mqttClient_->queueSize(); - load_settings(); // reload MQTT settings - in case they have changes - if (ha_enabled_) { queue_unsubscribe_message(discovery_prefix_ + "/+/" + Mqtt::basename() + "/#"); EMSESP::reset_mqtt_ha(); // re-create all HA devices if there are any diff --git a/src/emsesp_version.h b/src/emsesp_version.h index e7d93e24b..2bce065ab 100644 --- a/src/emsesp_version.h +++ b/src/emsesp_version.h @@ -1 +1 @@ -#define EMSESP_APP_VERSION "3.9.0-dev.6" +#define EMSESP_APP_VERSION "3.9.0-dev.7"