This video shows how to advertise a network service with mDNS, using the ESP32 and the Arduino core.
Our network service will be a simple HTTP web server. We will be using the async HTTP web server library to set it up. Nonetheless, it could be something else other than a HTTP server.
Written tutorial with all the source code: https://techtutorialsx.com/2020/04/18/esp32-advertise-service-with-mdns/
pip (Python package installer): https://pypi.org/project/pip/
Zeroconf library: https://pypi.org/project/zeroconf/
Requests library: https://requests.readthedocs.io/en/master/
Commands to install both libraries with pip:
pip install zeroconf
pip install requests
PyCharm IDE: https://www.jetbrains.com/pycharm/download/#section=windows
mDNS IDF library documentation: https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/protocols/mdns.html
Common network service names: http://www.dns-sd.org/serviceTypes.html
Async HTTP web server (written post): https://techtutorialsx.com/2017/12/01/esp32-arduino-asynchronous-http-webserver/