From 24f2306129c2e8e08505bd55346b65aa0700508f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bla=C5=BE=20Kristan?= Date: Tue, 15 Jul 2025 10:32:10 +0200 Subject: [PATCH] Strip .local from mDNS resolution --- wled00/mqtt.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/wled00/mqtt.cpp b/wled00/mqtt.cpp index d825957a5..06247ac58 100644 --- a/wled00/mqtt.cpp +++ b/wled00/mqtt.cpp @@ -214,8 +214,10 @@ bool initMqtt() mqtt->setServer(mqttIP, mqttPort); } else { #ifdef ARDUINO_ARCH_ESP32 - if (strlen(cmDNS) > 0 && strchr(mqttServer, '.') == nullptr) { // if mDNS is enabled and server does not have domain - mqttIP = MDNS.queryHost(mqttServer); + String mqttMDNS = mqttServer; + mqttMDNS.replace(F(".local"), ""); // remove .local if present + if (strlen(cmDNS) > 0 && mqttMDNS.length() > 0 && mqttMDNS.indexOf('.') < 0) { // if mDNS is enabled and server does not have domain + mqttIP = MDNS.queryHost(mqttMDNS.c_str()); if (mqttIP != IPAddress()) // if MDNS resolved the hostname mqtt->setServer(mqttIP, mqttPort); else