MQTT trouble

This commit is contained in:
2026-04-21 18:52:53 +02:00
parent b3e2ef0f81
commit 0d7ae5cedc

View File

@@ -530,17 +530,12 @@ _WIFI_CONNECT_ATTEMPTS = 3
def _reset_wifi_interface():
global _wifi_sta
_wifi_sta = network.WLAN(network.STA_IF)
_wifi_sta.active(True)
try:
_wifi_sta.disconnect()
except Exception:
pass
try:
_wifi_sta.active(False)
utime.sleep_ms(500)
except Exception:
pass
_wifi_sta.active(True)
utime.sleep_ms(500)
utime.sleep_ms(1000)
def connect_wifi(ssid, password, timeout_s=15, force_reconnect=False):
@@ -906,6 +901,11 @@ def connect_mqtt():
except Exception as e:
last_error = e
log_err(f"MQTT connect attempt {attempt + 1} failed: {e}")
try:
client.sock.close()
except Exception:
pass
gc.collect()
utime.sleep_ms(1000)
_mqtt_connected = False
@@ -963,7 +963,7 @@ def check_mqtt():
keepalive=30,
)
client_ref.set_callback(on_message)
_mqtt_connect_with_timeout(client_ref)
client_ref.connect()
_mqtt_connected = True
info("MQTT reconnected!")
schedule_discovery()
@@ -974,6 +974,11 @@ def check_mqtt():
return True
except Exception as e2:
log_err(f"MQTT reconnect attempt {attempt + 1} failed: {e2}")
try:
client_ref.sock.close()
except Exception:
pass
gc.collect()
utime.sleep_ms(2000)
log_err("MQTT reconnection failed after 3 attempts")