ESP32 mDNS library doesn't work


#1

There is ESPmDNS library in ESP32 Arduino framework. I’ve built an example named mDNS_Web_Server from this library. It is supposed to run mDNS responder and advertise the web server running on the ESP32.

Nevertheless, when I run this example, I get:

12.12.2018 00:40:22.582 [RX] - ets Jun  8 2016 00:22:57<CR><LF>
<CR><LF>
rst:0x1 (POWERON_RESET),boot:0x33 (SPI_FAST_FLASH_BOOT)<CR><LF>
configsip: 0, SPIWP:0xee<CR><LF>
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00<CR><LF>
mode:DIO, clock div:2<CR><LF>
load:0x3fff0018,len:4<CR><LF>
load:0x3fff001c,len:952<CR><LF>
lo40078000,len:6084<CR><LF>
load:0x40080000,len:7944<CR><LF>
entry 0x40080310<CR><LF>
<CR><LF>
.
12.12.2018 00:40:24.068 [RX] - .<CR><LF>
Connected to Le 2<CR><LF>
IP address: 192.168.43.186<CR><LF>
mDNS responder started<CR><LF>
TCP server started<CR><LF>

And that’s it.
I’ve installed Bonjour Browser from Hobbyist Software: https://hobbyistsoftware.com/bonjourbrowser
It doesn’t show any mDNS endpoints from ESP32.
On the other hand, the software works, because I’ve installed Service Browser application on my Android phone and created another mDNS endpoint there. It is seen by Bonjour Browser. So it should be ESP32 who is failing.

All mDNS code basically is contained in the following snippet in setup() function:

  // Set up mDNS responder:
  // - first argument is the domain name, in this example
  //   the fully-qualified domain name is "esp8266.local"
  // - second argument is the IP address to advertise
  //   we send our IP address on the WiFi network
  if (!MDNS.begin("esp32")) {
      Serial.println("Error setting up MDNS responder!");
      while(1) {
          delay(1000);
      }
  }
  Serial.println("mDNS responder started");
  // Add service to MDNS-SD
  MDNS.addService("http", "tcp", 80);

Have you tried working with mDNS library for ESP32 Arduino? Does mDNS_Web_Server example work for you? What am I missing?


#2

I guess no one used mDNS library for Arduino on ESP32?


#3

Sounds like https://github.com/esp8266/Arduino/issues/5514 ? The people who wrote this library might be able to help you better.