2
votes

ESP32 échoue sur le nom d'hôte wifi défini

J'utilise la commande binaire AT (fournie par Espresif) pour interfacer mon application wi-fi. Afin d'identifier l'appareil sur un réseau, j'ai changé le nom d'hôte en un nom connu, mais lorsque je scanne le réseau, le nom d'hôte est toujours "Espressif", au lieu d'être mon "propre nom d'hôte".

Quelqu'un sait-il comment résoudre ce problème? Je pense en fait que c'est une erreur sur le binaire de la commande AT.


0 commentaires

3 Réponses :


1
votes

J'ai le même problème.

Le code ressemble à:

#include <Arduino.h>
#include "WiFi.h"

void setup() {
    // Start the Wifi connection ...
    WiFi.enableSTA(true);
    WiFi.begin(ssid, password);

    // TODO Hostname setting does not work. Always shows up as "espressif"
    if(WiFi.setHostname("myHostname")) {
        Serial.printf("\nHostname set!\n");
    } else {
        Serial.printf("\nHostname NOT set!\n");
    }
}


1 commentaires

Je ne dis pas que c'est ok, je pense que c'est assez merdique, je confirme simplement votre problème. C'est la même chose pour moi.



0
votes

Essayez d'attendre la configuration du Wi-Fi. la manière la plus simple (jamais la meilleure) avec Delay (150).


0 commentaires

0
votes

Après littéralement plus de 10 heures de recherche, essayant d'identifier, d'analyser et / ou de résoudre le problème d'une manière ou d'une autre, j'ai abandonné et accepté la solution de contournement. Vous pouvez le trouver ici .

En bref, ce que je fais et ce qui fonctionne pour moi est:

WiFi.disconnect();
WiFi.config(INADDR_NONE, INADDR_NONE, INADDR_NONE);  // This is a MUST!
if (!WiFi.setHostname("myFancyESP32")) {
  Serial.println("Hostname failed to configure");
}
WiFi.begin(ssid, password);

C'est vraiment frustrant mais pour le moment, il semble que le problème vienne de l'ESP IDF et à moins qu'il ne soit résolu ici , cela ne fonctionnera pas.


0 commentaires