electronique:esp:esp8266-commandes-at

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
electronique:esp:esp8266-commandes-at [2020/12/12 18:23] Cédric ABONNELelectronique:esp:esp8266-commandes-at [2020/12/13 09:51] (Version actuelle) Cédric ABONNEL
Ligne 1: Ligne 1:
 +====== Commandes AT ======
 +
 +Sans modification du programme le **circuit intégré ESP8266**  répondra à des commandes AT (ou commandes Hayes) s'il est chargé avec le [[electronique:esp:esp8266ex-restore-commandes-at|firmware adéquat]]. C'est le cas de la plupart des [[electronique:esp:specifications-esp-01|ESP-01]]
 +
 +Je propose le T.P. suivant afin de prendre en main un **ESP8266** avec les commandes AT.
 +
 +<WRAP clear/>
 +----
 +
 +Vérifier le fonctionnement du mode Wifi
 +
 +  AT+CWMODE?
 +
 +----
 +
 +Passer en mode dual (AP + client)  
 +
 +  AT+CWMODE=3
 +  -> ok
 +
 +----
 +
 +Se connecter à un réseau
 +  
 +  AT+CWJAP="ACEGRP_NET","249cb30b415788bdd20c5d3c20"
 +  
 +  -> WIFI CONNECTED
 +  -> WIFI GOT IP
 +  -> 
 +  -> OK
 +
 +----
 +
 +Mémoriser les paramètres de connexion
 +
 +  AT+CWQAP
 +  -> 
 +  -> OK
 +
 +----
 +
 +Lister les adresses réseaux
 +
 +  AT+CIFSR
 +  -> +CIFSR:APIP,"192.168.4.1"
 +  -> +CIFSR:APMAC,"1a:fe:34:9a:36:13"
 +  -> +CIFSR:STAIP,"192.168.101.20"
 +  -> +CIFSR:STAMAC,"18:fe:34:9a:36:13"
 +  -> 
 +  -> OK
 +
 +----
 +
 +Activer les connexions multiples
 +
 +<code>
 +00:21:55.429 -> OK
 +01:09:33.601 -> AT+CIPMUX=1
 +</code>
 +
 +----
 +
 +Activer le serveur Web (port 80)
 +
 +<code>
 +01:09:33.601 -> OK
 +01:09:40.391 -> AT+CIPSERVER=1,80
 +</code>
 +
 +Lorsqu'un client se connecte, les informations suivantes dans la console s'affichent :
 +
 +<code>
 +01:09:56.319 -> 0,CONNECT
 +01:09:56.319 -> 
 +01:09:56.319 -> +IPD,0,341:GET / HTTP/1.1
 +01:09:56.319 -> Host: 192.168.101.20
 +01:09:56.319 -> User-Agent: Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:83.0) Gecko/20100101 Firefox/83.0
 +01:09:56.319 -> Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
 +01:09:56.319 -> Accept-Language: fr,fr-FR;q=0.5
 +01:09:56.319 -> Accept-Encoding: gzip, deflate
 +01:09:56.352 -> DNT: 1
 +01:09:56.352 -> Connection: keep-alive
 +01:09:56.352 -> Upgrade-Insecure-Requests: 1
 +01:09:56.352 -> 
 +01:12:56.522 -> 0,CLOSED
 +</code>
 +  
 +====== Glossaire des commandes AT - Wifi ======
 +
 +===== CWMODE : Mode de fonctionnement du Wifi =====
 +
 +**Retourner** la valeur numérique du mode de fonctionnement du Wifi du module ESP.
 +
 +  AT+CWMODE?
 +
 +**Désigner** la valeur numérique du mode de fonctionnement du Wifi du module ESP. Par exemple
 +
 +  AT+CWMODE=3
 +
 +**Valeurs numériques** pour désigner du mode de fonctionnement du Wifi pour **CWMODE** :
 +
 +  * 1 = mode client
 +  * 2 = mode point d'accès (AP)
 +  * 3 = AP + mode client (dual mode)
 +
 +__Exemple de réponse avec AT+CWMODE?__
 +  23:16:33.243 -> AT+CWMODE?
 +  23:16:33.243 -> +CWMODE:1
 +
 +
 +===== CWLAP - Lister les points d'accès =====
 +
 +Lister les points d'accès vus par l'ESP.
 +
 +  AT+CWLAP
 +
 +Chaque ligne retournée correspond à un point d'accès avec les paramètres **ecn**, **ssid**, **rssi**, **mac**, **channel**.
 +
 +  * ecn:  0 OPEN  , 1 WEP , 2 WPA_PSK , 3 WPA2_PSK , 4 WPA_WPA2_PSK
 +  * ssid: chaîne représentant le nom du point d'accès
 +  * rssi: force du signal en dB
 +  * mac: chaîne représentant l'adresse MAC
 +  * channel : valeur numérique
 +
 +__Exemple de réponse avec AT+CWLAP__
 +
 +<code>
 +23:16:55.796 -> AT+CWLAP
 +23:16:57.915 -> +CWLAP:(3,"ACEGRP_NET-F2",-22,"f8:9a:78:9b:67:05",4)
 +23:16:57.915 -> +CWLAP:(3,"ACEGRP_NET",-68,"50:c7:bf:8c:4f:e9",6)
 +23:16:57.915 -> +CWLAP:(3,"ACEGRP_NET",-82,"e0:24:81:49:14:eb",7)
 +23:16:57.915 -> 
 +23:16:57.915 -> OK
 +</code>
 +
 +===== CWJAP - Se connecter à un point d'accès =====
 +
 +Connecter à un point d'accès l'ESP de nom de réseau **ssid** et de mot de passe **passwd**.
 +
 +  AT+CWJAP="ssid","passwd"
 +
 +__Exemple de réponse avec AT+CWJAP en echec__
 +
 +<code>
 +00:13:39.096 -> AT+CWJAP="ACEGRP_NET","249cb30b415788bdd20c5d3c20"
 +
 +00:13:46.182 -> WIFI DISCONNECT
 +00:13:54.427 -> +CWJAP:1
 +00:13:54.427 -> 
 +00:13:54.427 -> FAIL
 +</code>
 +
 +__Exemple de réponse avec AT+CWJAP en réussite__
 +
 +<code>
 +00:14:02.538 -> AT+CWJAP="ACEGRP_NET","249cb30b415788bdd20c5d3c20"
 +
 +00:14:08.763 -> WIFI CONNECTED
 +00:14:12.671 -> WIFI GOT IP
 +00:14:13.632 -> 
 +00:14:13.632 -> OK
 +</code>
 +
 +===== CIFSR - Renvoi l'adresse IP local =====
 +
 +  AT+CIFSR
 +  
 +Renvoi l'adresse IP local. Il y a une adresse en mode client et une adresse en mode AP.
 +
 +===== CIPMUX - Permettre des connexions multiples =====
 +
 +Permet des connexions multiples ou non. L'option **mode** permet d'autoriser (valeur 1) ou non (valeur 0) les connexions multiples.
 +
 +  AT+CIPMUX=mode
 +
 +===== CIPSERVER - Configurer comme un serveur =====
 +
 +Configurer l'ESP8266 comme un serveur (**mode** à 1) ou non (**mode** à 0) sur le **port** indiqué. **Port** n'est pas une valeur obligatoire.
 +
 +  AT+CIPSERVER=mode,port
 +
 +Si **mode** est passé à 0, il faut redémarrer l'ESP8266.
 +
 +Le **port** par défaut est le 333.
 +
 +La création d'un serveur n'est possible qu'a condition d'executer en pré requis la commande ''AT+CIPMUX=1''.
 +
 +