Skip to content

[Interface Température] Utilisation de mDNS pour éviter de connaître l'IP du module pour s'y connecter #19

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Devdevdavid opened this issue Jan 9, 2021 · 8 comments
Labels
Documentation Improvements or additions to documentation

Comments

@Devdevdavid
Copy link
Owner

Cet article montre comment utiliser mDNS pour effectuer une résolution de nom de domaine en local sur le module wifi.

Le nom de domaine à utiliser doit être unique, il faut donc qu'il soit configurable par l'utilisateur.

Ce même nom de domaine devrait s'afficher à côté de l'IP au moment du boot dans la liaison série.

Plus d'info sur le protocole mDNS ici : RFC 6762

@Devdevdavid Devdevdavid added the Amélioration New feature or request label Jan 9, 2021
@Devdevdavid
Copy link
Owner Author

Il semblerait que la librairie ArduinoOTA gère déjà cette fonctionnalité. Peut-être qu'une simple configuration suffirait.

@GilDev
Copy link
Collaborator

GilDev commented Jan 14, 2021

Je confirme, j’ai déjà réussi à faire fonctionner mDNS avec ArduinoOTA sans souci par le passé.

@Devdevdavid
Copy link
Owner Author

✅ Fonction implémentée avec le commit 07693a6

Le nom du module est configurable depuis la page du wifi.
On accède au module en tapant <nom>.local dans son navigateur.
Si on configure un nom vide, alors on n'utilise pas le mDNS.

Fun fact : Bonjour c'est l'autre nom de mDNS donné par Apple 🤯

@Devdevdavid Devdevdavid added the À tester Need a test on hardware platform label Feb 4, 2021
@Devdevdavid
Copy link
Owner Author

Dans mon cas, la résolution de nom avec un ESP8266 ne fonctionne pas sur MacOS. Pas de soucis en revanche avec les ESP32.

Cette différence est expliquée ici : esp8266/Arduino#4790 (comment)

@Devdevdavid
Copy link
Owner Author

Devdevdavid commented Feb 10, 2021

Suite à quelques tests, nous avons remarqué que la résolution mDNS ne fonctionnait pas sur un PC Windows 7 et un téléphone Android.

mDNS n'est en effet pas supporté nativement par ces plateformes contrairement aux appareils IOS et MacOS.

Sous windows 7, un hack est possible d'après ce site en utilisant "bonjour" d'Apple
Windows 10 supporte nativement mDNS. Ceci reste à tester.
Pour Android, cela s'annonce mal d'après ce site. Seules quelques version récente d'Android seraient compatibles nativement.
Pas de problème avec Linux du moment que le paquet Avahi est installé

@GilDev
Copy link
Collaborator

GilDev commented Feb 11, 2021

En effet j’avais rencontré le même problème. Windows 7 est relativement obsolète maintenant mais Bonjour ça fonctionnait bien. Pour Android c’est une impasse, j’ai cherché un moment mais pas de solution… Si ce n’est pas supporté nativement c’est compliqué.

@Devdevdavid
Copy link
Owner Author

Devdevdavid commented Mar 25, 2021

✅ mDNS fonctionnel pour ESP32 et ESP8266 avec commit 58fc617
⚠️ Pas de solution trouvée pour le support de mDNS sur Android

@Devdevdavid
Copy link
Owner Author

Devdevdavid commented Mar 27, 2021

Validé ce jour avec Pascal
Demande de Pascal : Un mode d'emploi de connexion pour les utilisateurs

@Devdevdavid Devdevdavid added Documentation Improvements or additions to documentation and removed Amélioration New feature or request À tester Need a test on hardware platform labels Mar 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

2 participants