réseau Wifi ESP

bonjour,

dans la liste des réseaux WiFi "visibles" depuis chez moi, il y en a un qui s'appelle ESP-DD33E6
qui n'est pas protégé par mot de passe.

J'ai 2 ESP8266 en fonction chez moi, ils se connectent au réseau wifi de ma box.
En aucun cas je n'ai demandé la création d'un nouveau point d'accès.

Est-il possible qu'un ESP crée par défaut un nouveau réseau wifi ?

Bonjour

utillises tu WiFiManager ou un systeme analogue sur tes ESP ? ( tout systeme créant un point d'accès pour scanner l'environnement et configurer le mode station)

le DD33E6 est un bout de l'adresse MAC , ça aide à trouver le coupable....

Dans l'un d'eux, j'utilise des objets Wifi, WiFiUDP et WiFiClient.
Dans l'autre, un WiFi, un WiFiServer, un WiFiClient.
C'est tout.
Je vais enquêter vers les adresses Mac, merci du tuyau.

[Edit] Bheuuuu, comment je lis l'adresse Mac des mes ESP ? sans les démonter de leur site si possible ?
Sur Mac, arp-a ne liste que les adresses Ethernet.

ta box ne peux pas montrer les adresses MAC des stations connectées ?

Freebox :sur la page de gestion cliquer sur Périphériques réseau puis sur l'içiôe représentant un appareil connecté :
Freebox.png

De mémoire il me semble que l'adresse MAC d'un ESP en AP est voisine de son adresse MAC en Station

Freebox.png

Bonjour,

biggil:
Est-il possible qu'un ESP crée par défaut un nouveau réseau wifi ?

Les ESP sont vendus configurés en AP, donc, avec leur propre réseau.

merci beaucoup, j'ai trouvé le fautif, c'est bien un de mes ESP !
voici son setup :

#define LOW_IP 160 
void setup() {
  Serial.begin ( 9600 );
  Serial.setTimeout ( 1000 );
  WiFi.begin ( MYSSID, PASSWORD );
  delay ( 2000 );

  IPAddress ip      ( 192, 168,   0, LOW_IP );
  IPAddress gateway ( 192, 168,   0, 254 );
  IPAddress subnet  ( 255, 255, 255,   0 );
  WiFi.config ( ip, gateway, subnet );
  while ( WiFi.status() != WL_CONNECTED ) {
    delay ( 100 );
  }
  
  Udp.begin ( MY_PORT );
}

J'ai un autre ESP avec quasiment le m^me code, mais sans le client UDP. Et qui ne crée pas de point d'accès. Je comprends pas...

kayel:
Les ESP sont vendus configurés en AP, donc, avec leur propre réseau.

Tu parles du firmware AT ?
Je l'ai viré et remplacé par mon propre prog.

Bonjour

bug au flashage , SofAP antérieur resté activé, malgré le code ?
(dans le menu Erase Flash, on a une option "Erase Flash + WiFi settings" qui fait le ménage.
A essayer avant de re-lasher le code)

bug du client UDP qui activerait un SoftAP non désiré ??

biggil:
Tu parles du firmware AT ?
Je l'ai viré et remplacé par mon propre prog.

Virer le firmware ne vire pas la config de l'ESP.

Si le ESP est détecté par l'ordi, il est en mode AP ou ST+AP.

Pour que l'ordi ne le détecte pas, il faut le mettre en mode ST seul.

j'ai flashé mon sketch dans un autre ESP8266 (en changeant l'adresse IP).
Ca ne fait pas apparaître de nouvel AP. Donc ça vient pas de mon prog.

J'ai étudié cette doc:
http://onlineshouter.com/use-esp8266-wifi-modes-station-access-point/
J'y lis : "Switching the module to Station mode is done with begin function"
Il y a aussi la fonction WiFi.softAP(), qui m'est inutile.
Je n'y vois pas de fonction qui ferait "supprimer l'Acces Point".

Je vais essayer d'effacer la flash+Wifi.

Salut

Un ESP conserve ses paramètres de connexion au réseau WIFI dans une eeprom, indépendamment du programme chargé.

A chaque mise sous tension ou reboot ou téléversement de nouveau programme, il reprend ses derniers paramètres enregistrés.

C'est à la fois pratique et dangereux.
Pratique car il suffit de charger une première fois un programme "vide" avec WiFi.begin(MYSSID, PASSWORD), et par la suite tous les autres programmes peuvent contenir simplement WiFi.begin(), et ainsi être portables.
Dangereux car le code téléversé ne suffit pas à lui seul à définir entièrement l'état d'un ESP.

Perso mes programmes commencent systématiquement par tester et rétablir l'état de l'ESP.

Que retournent les fonctions ci-dessous?
WiFi.getPersistent() booleen
WiFi.getAutoConnect() booleen
WiFi.getMode() : WIFI_STA, WIFI_AP, WIFI_AP_STA ou bien WIFI_OFF

Bonjour

.... le code téléversé ne suffit pas à lui seul à définir entièrement l'état d'un ESP.

+1

Espressif n'a pas repris cette fonctionnalité de reprise systématique des paramètres WiFi antérieurs sur les ESP32

Avec l'IDE Arduino on peut facilement effacer la petite zone spéciale de mémoire Flash d'un ESP8266 contenant paramètres WiFi antérieurs,

Tools/ Erase Flash,/Erase Flash + WiFi settings

biggil:
Je n'y vois pas de fonction qui ferait "supprimer l'Acces Point"

Il n'y en a pas.

Les modes disponibles sont:

0: Null mode, WiFi RF will be disabled
1: Station mode
2: SoftAP mode
3: SoftAP+Station mode

En sélectionnant Station mode, on élimine SoftAP mode.

J'ai remplacé cet ESP par un autre. Le problème disparait.

J'ai fait des test sur l'ESP qui se met en AP :

  • menu Erase Flash->Sketch+WiFi settings. Je suppose que ce menu fixe une option (= ne fait rien tout de suite), j'ai ensuite téléversé mon sketch (plusieurs fois),
    Ca ne change rien ! L'ESP se met en AP.

En sélectionnant Station mode, on élimine SoftAP mode.

C'est bien ce que je fais en invoquant WiFi.begin( ssid, passwd ), mais ça reste en SoftAP !
La doc de la classe WiFi sur le site Arduino semble incomplète (je ne vois pas les membres cités par bricoleau).
A-t-on accès à une doc complète ?

Bonjour

ESP8266 (WiFi et le reste...) la doc à jour est ici : ESP8266WiFi library — ESP8266 Arduino Core 2.7.2-10-g2843a5ac documentation

J'ai remplacé cet ESP par un autre. Le problème disparait.

tu sembles avoir un exemplaire têtu, "un AP sinon rien...."

bricoleau:
Que retournent les fonctions ci-dessous?

getPersistent: 1
getAutoConnect: 1
getMode: 3 = WIFI_AP_STA
j’ai essayé au pif un WiFi.setMode ( WIFI_STA ) mais … pas de fonction setMode()
Grrrr … si je trouvais une doc sérieuse…

Grrrr ... si je trouvais une doc sérieuse..

#14

Pour ESP8266WiFI , voir à la source (dépôt de l'extension ESP8266 pour IDE Arduino) ?

getMode: 3 = WIFI_AP_STA

Confirmation que la puce est en mode mixte (AP+STA) , ce que tu cherches à éviter...

al1fch:
Pourquoi chercher ailleurs qu'à la source (dépôt de l'extension ESP8266 pour IDE Arduino) ?

Je connais cette doc, c'est moitié tuto, moitié labyrinthe...
Par ex. je n'arrive pas à y trouver la doc de Wifi.getMode(). Enfin pas en moins de 5 minutes...
Reste plus qu'à fouiller dans les .h :cry:
Ca, ou bien m'occuper de cet ESP avec un marteau et une enclume.

Je connais cette doc, c'est moitié tuto, moitié labyrinthe...

Y'en a aussi ...... :slight_smile:

Mais avec 'set mode' dans le moteur de recherche de la doc , je trouve directement :

set mode.png

set mode.png

Perso je suis tous les 4 matins en train de farfouiller dans le repo github du core esp8266, histoire d'appréhender toutes les fonctions disponibles.

WiFi.mode(WIFI_STA);