ESP8266 Tutoriel Arduino – Examen approfondi du module WiFi IoT avec exemple -Commander sur Amazon -46 % Réduction





La technologie progresse de façon exponentielle chaque année, que nous fassions quelque chose ou non. À la même vitesse, les ingénieurs s’efforcent de réduire la taille de chaque dispositif électronique ou composant et de perdre la majeure partie du câblage. Si vous regardez en arrière il y a 20 ans, un appareil s'appelait portable si vous pouviez le porter dans vos bras et le porter. Aujourd’hui, rien n’est portable si cela ne tient pas dans votre poche.

De nos jours, les appareils, qu’ils soient conçus pour un usage courant ou industriel, sont basés sur la technologie de communication sans fil et que la raison principale n’est pas de se débarrasser des câbles, mais de pouvoir les interconnecter. Pendant ce temps, l'achat d'un appareil sans fil est devenu naturel pour tout le monde et le prix d'un équipement WiFi Ready a diminué avec le temps.

Pendant que vous lisez ceci, une micropuce WiFi n’a pas plus de 5 mm de long et peut être alimentée avec aussi peu que 10 micro-ampères pendant la période de sommeil. Dans cet article, nous allons tester l'une des plates-formes de développement WiFi les moins chères et les plus simples à utiliser, l'appareil compatible arduino ESP8266.

Solution WiFi bon marché pour votre premier projet IoT – Module wifi ESP8266 compatible Arduino avec mise à niveau flash de 1 Mo

ESP8266 Design du module Wifi

Le module compatible ESP8266 arduino est un puce Wi-Fi à faible coût avec pleine capacité TCP / IP, et la chose étonnante est que cette petite planche a un MCU (Micro Controller Unit) intégré ce qui donne la possibilité de broches numériques I / O de contrôle via simple et presque pseudo-code comme langage de programmation. Cet appareil est fabriqué par un fabricant chinois basé à Shanghai, Systèmes Espressif.

Cette puce a été vue pour la première fois dans Août 2014, dans ESP-01 version module, faite par AI-penseur, un fabricant tiers. Ce petit module permet à la MCU de se connecter au réseau WiFi et de créer des connexions TCP / IP simples.

Le sien Le sien très bas prix (1.7 $ – 3.5 $) et l'incroyable petite taille a attiré beaucoup geeks et les hackers pour l'explorer et l'utiliser dans un grande variété de projets. Être un vrai succès, Espressif produit maintenant de nombreuses versions ayant différentes dimensions et spécifications techniques. L'un des successeurs est ESP32.

Vous pouvez trouver sur Internet des centaines de projets et diverses implémentations telles que la domotique, des solutions d'enregistrement de données, la robotique, le contrôle de choses sur Internet, même des drones ou des coptères.

ESP8266-01Caractéristiques techniques

  • CPU RISC 32 bits: Tensilica Xtensa LX106 fonctionnant à 80 MHz **
  • 64 Ko de RAM d'instruction, 96 Ko de RAM de données
  • Flash QSPI externe – 512 Ko à 4 Mio * (jusqu'à 16 Mio est pris en charge)
  • Wi-Fi IEEE 802.11 b / g / n
  • Commutateur TR intégré, balun, LNA, amplificateur de puissance et réseau d'adaptation
  • Authentification WEP ou WPA / WPA2, ou réseaux ouverts
  • 16 broches GPIO **
  • SPI, I²C,
  • Interfaces I²S avec DMA (partage de broches avec GPIO)
  • UART sur des broches dédiées, plus un UART de transmission uniquement peut être activé sur GPIO2
  • 1 ADC 10 bits

** La vitesse du processeur et de l'horloge flash peut être augmentée via l'overclocking sur certains appareils et les 16 E / S ne sont pas disponibles dans toutes les versions.

Kit de démarrage Arduino IoT complet

Module Arduino ESP8266 livré avec Antenne trace de PCB qui semble avoir un très bonne couverture (J'ai vu une démonstration avec plus de 1 km de portée !!!). Autre version peut avoir antenne céramique intégrée ou connecteur externe qui vous permet de connecter des modules d'antennes WiFi externes. L'ESP-01 n'a que 6 broches actives, bien que la MCU puisse prendre en charge jusqu'à 16 E / S. Les dimensions du conseil sont 14,3 x 24,8 mm.

ESP8266 Module Arduino ESP-01 1 Mo contre 0,5 MoSur Internet, j’ai trouvé que le module ESP8266 arduino, version 01, est vendu en deux versions ou plus, ce qui à première vue semble tout à fait le même. Après avoir acheté les deux, j'ai constaté qu'il y avait une différence de taille de la mémoire flash. Vous pouvez rencontrer des problèmes en clignotant si vous ne définissez pas les paramètres appropriés en fonction des spécifications de la carte.

Bien que la carte par défaut dispose de 2 GPIO disponibles, vous pouvez effectuer certaines solutions de contournement et utiliser d'autres broches disponibles du MCU si vous disposez des outils de soudage appropriés. J'ai réussi à utiliser GPIO 16 afin de réactiver l'appareil après le mode DEEP SLEEP (expliqué plus tard dans MODES SOMMEIL).

Description de la broche du module (brochage)ESP8266-01 brochage description broche

Les broches sont disposées sur deux rangées, avec 4 sur chaque rangée. Certains modèles ont une description de la broche sur le circuit imprimé, ce qui le rend simple. Sur la rangée du haut, vous trouverez les repères suivants de gauche à droite:

  1. GND (Masse de l'alimentation)
  2. GPIO2 (E / S numérique programmable)
  3. GPIO0 (E / S numérique programmable, également utilisé pour les modes BOOT)
  4. RX – Canal de réception UART

En bas (deuxième rangée), vous trouverez:

  1. TX – Canal de transmission UART
  2. CH_PD (activer / éteindre, doit être tiré à 3.3v directement ou via une résistance)
  3. DU REPOS – reset, doit être tiré à 3.3v)

  4. VCC -3.3v alimentation

Alimentation et consommation de courant

Tous les modules compatibles esp8266 arduino doivent être alimentés avec courant DC de tout type de source qui peut livrer stable 3.3V et au moins 250mA. Également signal logique est évalué à 3.3v et le canal RX doit être protégé par un diviseur 3.3v abaisseur. Soyez prudent lorsque vous utilisez ce module avec Arduino ou d’autres cartes fournissant 5v, car ce module ne vient pas avec la protection de la surpuissance et peut être facilement détruit.

Voici la consommation d'énergie déclarée d'Espressif:

Paramètres Typique Unité
Tx802.11b, CCK 11Mbps, P OUT = + 17dBm 170 mA
Tx 802.11g, OFDM 54 Mbps, P OUT = + 15dBm 140 mA
Tx 802.11n, MCS7, P OUT = + 13dBm 120 mA
Rx 802.11b, longueur de paquet de 1024 octets, -80dBm 50 mA
Rx 802.11g, longueur de paquet de 1024 octets, -70dBm 56 mA
Rx 802.11n, longueur de paquet de 1024 octets, -65dBm 56 mA
Modem-Sleep 15 mA
Sommeil léger 0,9 mA
Sommeil profond dix uA
Éteindre 0.5 uA

Si vous allez utiliser ESP-01 dans un projet qui est alimenté par piles ou par énergie solaire il est obligatoire de tout savoir sur ESP8266 arduino Modes de veille. La version actuelle offre 3 modes de sommeil différents qui peuvent être déclenchés par programme. La bibliothèque ESP8266WiFi offre des fonctions spécifiques pour appeler des modes veille qui peuvent prendre des paramètres de réglage qui modifient les tâches de rappel après le réveil, comme si vous vous réveilliez avec un module RF sous ou hors tension.

Le mode le plus important est SOMMEIL PROFOND en raison de la très faible consommation d'énergie pendant le sommeil. Le mode de veille prolongée est très courant dans les projets qui enregistrent des données à des intervalles spécifiques et sont inactifs entre les mesures.

Afin de tirer parti de ce mode lorsque vous utilisez le module compatible esp8266 arduino, norme ESP-01, vous devez créer un peu de solution de contournement et connecter la broche REST à la broche GPIO16 (qui n’est pas disponible par défaut à six ou six broches).
Voici un exemple comment le faire
Module WiFi ESP8266 GPIO16 sommeil profond
Module WiFi ESP8266 GPIO16 sommeil profond
Une fois cette connexion établie, vous pouvez utiliser la commande suivante pour déclencher le mode de veille prolongée:

ESP.deepSleep (sleepTimeInSeconds * 1000000);

Une autre chose que vous devez savoir sur la version du esp8266 arduino 01 est qu’elle vient habituellement avec deux LED, une rouge un pour le pouvoir, et un bleu un pour la transmission de données. le la LED rouge est toujours allumée quand le module est alimenté allumé et le voyant bleu clignote pendant les activités en série. Pour les versions plus récentes, les producteurs ont supprimé la broche RED à cause de la consommation électrique continue. Si vous en achetez une, essayez de trouver une version qui n’a que le voyant bleu série notamment si vous allez utiliser un alimentation par batterie dans votre projet.

Les différences peuvent être vues dans les images suivantes:

Indicateur led de puissance du module Wifi ESP8266

Alors que dans l'image de gauche, vous pouvez voir deux voyants smd près de l’antenne, l’un pour l’indicateur de puissance et l’autre pour l’indicateur de données, le module de droite a une LED unique juste pour indiquer la transmission de données. La conception des PCB peut différer d’un producteur à l’autre parce que les producteurs ont tendance à réduire les coûts en réduisant les matériaux.

Parler avec l'ESP-01 (AT / LUA / Arduino)

ESP8266-01 vous donne beaucoup de méthodes pour communiquer avec ça à travers le RX / TX des épingles ou over the air (OTA). Les différences ne sont pas seulement matérielles mais peuvent aussi concerner quel type de logiciel. le firmware est flashé hors de la boîte. Peu importe quel firmware est installé par défaut, vous devrait pouvoir flasher votre firmware préféré en suivant les instructions de mise à jour du micrologiciel de la fiche technique.

Ce module peut être programmé en utilisant Code LUA, code Arduino ou directement par les commandes AT et cela nous donne plus de liberté pour intégrer ce dispositif à nos projets. Aussi il y a peu modes de firmware python mais je n’ai pas eu la chance de les tester. Personnellement j'ai choisi de travailler avec Arduino à cause de l'expérience passée et tons des bibliothèques disponibles.

Comme il vient, hors de la boîte, ce module est prêt à parler via Commandes AT sans autres paramètres ou configurations supplémentaires. Il existe de nombreuses applications logicielles que vous pouvez utiliser pour communiquer via À et ont des tons de outils prêts à l'emploi et les fonctions ce qui rendra tout plus facile. j'ai utilisé ESPlorer et je le recommande totalement, vous pouvez le trouver ici. Après le démarrage, être capable d'utiliser AT commandes, module devrait afficher "prêt" sur le moniteur série.

Quelques exemples de commandes AT de base:

  • AT - réponse OK
  • AT + CWLAP - liste les réseaux WiFi disponibles à proximité
  • AT + GMR - vérifier la version du firmware
  • AT + CWJAP = "","”- rejoindre le réseau WiFi en utilisant les informations d'identification
  • AT + CIFSR - Obtenir l'adresse IP actuelle attribuée

Voir ici une liste complète avec Au jeu d'instructions.

Pour pouvoir parler avec le module compatible ESP8266 arduino, vous devez choisir un moyen de connectez-le avec votre ordinateur. Vous pouvez communiquer avec le module via Communication série standard RS232 en utilisant un Arduino conseil en tant que proxy / pont, Arduino ayant par défaut un convertisseur USB / série intégré. Si vous êtes débutant en développement, je vous recommande totalement l'un des meilleurs livres Arduino de Jeremy Blum, la meilleure combinaison d'un ingénieur en électronique ayant suivi une formation formelle et d'un fabricant / hackeur.

Arduino Uno diffère de tous les conseils précédents en ce qu'il n'utilise pas le FTDI USB vers série puce de conducteur. Au lieu de cela, il comporte le Atmega16U2 (Atmega8U2 jusqu'à la version R2) programmé en tant que convertisseur USB / série. Pour utiliser Arduino en tant que pont, vous devez d’abord charger un programme vide dessus. Après cela, vous devez établir les connexions suivantes pour pouvoir fonctionner:

Connexions filaires ESP8266 Arduino UNO

ONU ESP-01
RX RX
TX TX
3.3v VCC
GND GND
RST 3.3v / float
CH_PD 3.3v

Après cela, vous devriez pouvoir voir les données et envoyer des commandes AT dans Serial Monitor en sélectionnant le port COM de Arduino, réglage un bon vitesse de transmission, par défaut devrait être 115200et effectuez les réglages supplémentaires pour lire “NL et CR“.

Micrologiciel par liaison radio (FOTA) solution dans chaque embarqué DIY ou un projet commercial est une fonctionnalité hautement souhaitable, voire indispensable, lorsque chaque cœur de projet doit être évolutif. Donc, la possibilité de télécharger votre code depuis un ordinateur distant via une connexion Wi-Fi plutôt que Serial est un grand avantage dans chaque projet. D'abord, vous avez besoin de la FOTA, des besoins, des conditions préalables. Le premier téléchargement du micrologiciel doit être effectué via le port série. Si les routines OTA sont correctement implémentées dans le programme, les prochains téléchargements peuvent être effectués par liaison radio.

Étant donné que le module doit être exposé sans fil, il existe une possibilité d'être piraté et chargé avec du code maléfique. Vous pouvez améliorer votre sécurité en définissant un port et un mot de passe personnalisés. Vérifiez les fonctionnalités de la bibliothèque ArduinoOTA qui pourraient vous aider à renforcer la sécurité. En raison de la complexité de cette procédure, nous couvrirons l’histoire complète dans un prochain article, mais pour l’instant, sachez que cette option existe et qu’elle fonctionne assez bien.

Un autre moyen de connecter le module esp8266 arduino à un ordinateur consiste à utiliser un TTL ou FTDI USB vers série module dédié. Il y en a beaucoup sur le marché et ils sont assez bon marché, mais ne vous y trompez pas, la qualité est importante. Vous pouvez rencontrer des problèmes lorsque vous travaillez avec ce dernier si vous vous retrouvez avec un produit bon marché en raison des différences de connexions et de la compatibilité des pilotes.

Les puces les plus utilisées des convertisseurs TTL / FTDI sont CH340G, CP2102 et FT232RL. J'ai personnellement utilisé les deux premiers et je n'ai aucun problème lors du chargement des programmes. Les connexions suivantes doivent être effectuées:

ESP-01 TTL / FTDI
RX TX
TX RX
VCC 3.3v
GND GND
RST 3.3v / float
CH_PD 3.3v

je Je vous recommande vivement de ne pas utiliser l'alimentation TTL 3.3v parce que la plupart d’entre eux ne sont pas en mesure de fournir assez de puissance pour gérer le périphérique compatible esp8266 arduino. Le régulateur de tension intégré utilisé sur ces modules n'est pas le choix le plus heureux et vous risquez d'avoir des problèmes s'il ne peut pas prendre en charge l'ESP. Si vous choisissez d'utiliser un alimentation externe n'oubliez pas de configurer un terrain d'entente afin d'avoir un circuit de travail.

Vous pouvez trouver des modules TTL dont l’émission nominale est à 3,3 v, sinon, vous réduisez le canal TX pour protéger votre module ESP-01. Vous pouvez voir ci-dessous un schéma de câblage entre ESP-01 et CP2102 qui comprend un bouton de réinitialisation connecté à la terre, ainsi que GPIO0 pour le commutateur de démarrage.

ESP8266-01 connexion UART TTL GeeksTips.com

Voici un schéma simple diviseur 3.3v utilisant des résistances:

Diviseur 3.3v pour Arduino ESP8266

Le moyen le plus pratique de communiquer avec l’ESP-01 est d’utiliser un module de programmation ESP01 dédié, qui peuvent être achetés aussi chez les mêmes producteurs et les coûts sont très bas. Ce type d'appareils peut avoir des boutons intégrés pour la commutation RESET et BOOT et également être doté d'un emplacement dédié. Tout ce que vous devez faire est de brancher votre esp et votre fait.

Programmateur ESP8266-01 Programmateur ESP8266-01 Programmateur ESP8266-01

Vous pouvez également créer votre propre programmeur si vous avez un peu de compétences, vous n’avez pas besoin d’être un expert. Voici quelques essais maison:

Programmeur bricolage ESP8266 Programmeur bricolage ESP8266 Programmeur bricolage ESP8266 Programmateur maison ESP8266-01

Afin de configurer votre IDE Arduino Pour utiliser votre module compatible esp8266 arduino, vous devez suivre les étapes suivantes:

  1. Connectez votre module ESP8266-01 à un PC
  2. Ouvrez votre Arduino IDE
  3. Aller dans Fichier -> Préférences
  4. Ajouter ce lien à Additional Board Manager
  5. Allez dans Outils -> Board Manager
  6. Trouver le jeu de cartes ESP8266 et l'activer
  7. Sélectionnez la carte générique ESP8266 dans Outils-> Cartes
  8. Choisissez votre port COM du programmeur
  9. Vous êtes prêt à partir!

Installation de la carte Arduino IDE ESP8266

Maintenant, pour pouvoir télécharger le programme sur votre module ESP-01, vous devez d'abord placer votre appareil dans la bon mode de démarrage (Code de téléchargement de UART). ESP8266-01 ont les éléments suivants modes de démarrage:

MTDO / GPIO15 GPIO0 GPIO2 Mode La description
L L H UART Code de téléchargement de UART
L H H Flash Démarrer à partir de SPI Flash
H X X SDIO Boot depuis la carte SD

Notez que L = LOW (mise à la terre / -3.3v) et H = HIGH (mise à 3.3v)

Après avoir réinitialisé le module dans Code de téléchargement de UART vous devriez voir un message contenant "mode d'amorçage:[1,6]” dans le moniteur série, si vous avez le bon débit en bauds. Un mauvais réglage de la vitesse de transmission affichera du texte / des caractères incohérents ou rien du tout. Après cela, vous devriez pouvoir télécharger votre dessin sur ESP8266. Lorsque le téléchargement est terminé, le module devrait se réinitialiser. N'oubliez pas de tirez HAUT le GPI0 ou le module va entrer Mode de téléchargement encore et vous ne pourrez pas le voir fonctionner. Le module peut être redémarré à tout moment en tirant la broche REST sur LOW. Après chaque réinitialisation, il suivra la séquence de démarrage et le chargement du programme.

Une fois la ESP8266 le conseil est installé et activé dans Arduino IDE, vous pourrez inclure toutes les bibliothèques et exemples WiFi ESP cela vient avec le paquet. La bibliothèque la plus utilisée est ESP8266WiFi qui offre de nombreux exemples de mise en œuvre comme WiFiClient, WiFiServer, WiFiAccessPoint etc. Vous pouvez trouver de nombreux exemples de projets sur Internet, par exemple, j'ai trouvé de bonnes idées sur arduino.cc projecthub. Voici un simple Exemple de clignotement Arduino que vous pouvez utiliser pour tester le module esp avec la DEL intégrée:

/ *
 ESP8266 Arduino Blink par Simon Peter
 Clignote la LED bleue sur le module ESP-01
 Cet exemple de code est dans le domaine public
 
 Le voyant bleu du module ESP-01 est connecté à GPIO1.
 (qui est aussi la broche TXD; nous ne pouvons donc pas utiliser Serial.print () en même temps)
 
 Notez que cette esquisse utilise LED_BUILTIN pour rechercher la broche avec le voyant interne.
* /

void setup() 
  pinMode (LED_BUILTIN, OUTPUT); // Initialise la broche LED_BUILTIN en tant que sortie


// la fonction de boucle tourne encore et encore pour toujours
boucle vide () 
  digitalWrite (LED_BUILTIN, LOW); // Allume la LED (notez que LOW est le niveau de tension
                                    // mais en réalité le voyant est allumé; Ceci est dû au fait
                                    // c'est bas sur l'ESP-01)
  délai (1000); // Attend une seconde
  digitalWrite (LED_BUILTIN, HIGH); // éteindre la LED en augmentant la tension
  délai (2000); // Attendez deux secondes (pour démontrer le voyant bas actif)

Bien sûr, vous pouvez ensuite essayer un exemple plus complexe en chargeant un ESP8266 Arduino Exemple de client WiFi programme qui envoie des données via WiFi à la plate-forme data.spakfun.com:

/ *
 * Cette esquisse envoie des données via des requêtes HTTP GET au service data.sparkfun.com.
 *
 * Vous devez obtenir streamId et privateKey à data.sparkfun.com et les coller
 *  au dessous de. Ou tout simplement personnaliser ce script pour parler à d'autres serveurs HTTP.
 * Exemple ESP8266 Arduino
 * /
#comprendre 
const char * ssid = "your-ssid";
const char * password = "votre-mot de passe";
const char * host = "data.sparkfun.com";
const char * streamId = "....................";
const char * privateKey = "....................";
void setup() 
  Serial.begin (115200);
  délai (10);
  // On commence par se connecter à un réseau WiFi
  Serial.println ();
  Serial.println ();
  Serial.print ("Connexion à");
  Serial.println (ssid);
  
  WiFi.begin (ssid, mot de passe);
  
  while (WiFi.status ()! = WL_CONNECTED) 
    retard (500);
    Serial.print (".");
  
  Serial.println ("");
  Serial.println ("WiFi connected");
  Serial.println ("adresse IP:");
  Serial.println (WiFi.localIP ());
int valeur = 0;
boucle vide () 
  retarder (5000);
  ++ valeur;
  Serial.print ("connexion à");
  Serial.println (hôte);
  
  // Utiliser la classe WiFiClient pour créer des connexions TCP
  Client WiFiClient;
  const int httpPort = 80;
  if (! client.connect (host, httpPort)) 
    Serial.println ("connexion échouée");
    revenir;
  
  
  // Nous créons maintenant un URI pour la requête
  String url = "/ input /";
  url + = streamId;
  url + = "? private_key =";
  url + = privateKey;
  url + = "& value =";
  url + = valeur;
  
  Serial.print ("URL demandée:");
  Serial.println (url);
  
  // Ceci enverra la demande au serveur
  client.print (String ("GET") + url + "HTTP / 1.1  r  n" +
               "Hôte:" + hôte + " r  n" +
               "Connexion: fermer  r  n  r  n");
  unsigned long timeout = millis ();
  while (client.available () == 0) 
    if (millis () - délai d'attente> 5000) 
      Serial.println (">>> Client Timeout!");
      client.stop ();
      revenir;
    
  
  
  // Lire toutes les lignes de la réponse du serveur et les imprimer en série
  while (client.available ()) 
    Ligne de chaîne = client.readStringUntil (' r');
    Serial.print (ligne);
  
  
  Serial.println ();
  Serial.println ("fermeture de la connexion");

Ou si vous avez besoin de créer un serveur sur votre réseau, vous pouvez essayer Serveur WiFi Arduino ESP8266 exemple de programme:

/ *
 * Cette esquisse montre comment configurer un serveur simple semblable à HTTP.
 * Le serveur définira une broche GPIO en fonction de la demande.
 * http: // server_ip / gpio / 0 définira le GPIO2 bas,
 * http: // server_ip / gpio / 1 définira le GPIO2 haut
 * server_ip est l'adresse IP du module ESP8266 Arduino, sera
 * imprimé en série lorsque le module est connecté.
 * /
#comprendre 
const char * ssid = "your-ssid";
const char * password = "votre-mot de passe";
// Créer une instance du serveur
// spécifie le port à écouter en argument
Serveur WiFiServer (80);
void setup() 
  Serial.begin (115200);
  délai (10);
  // prépare GPIO2
  pinMode (2, OUTPUT);
  écriture numérique (2, 0);
  
  // Connexion au réseau WiFi
  Serial.println ();
  Serial.println ();
  Serial.print ("Connexion à");
  Serial.println (ssid);
  
  WiFi.begin (ssid, mot de passe);
  
  while (WiFi.status ()! = WL_CONNECTED) 
    retard (500);
    Serial.print (".");
  
  Serial.println ("");
  Serial.println ("WiFi connected");
  
  // Démarrer le serveur
  server.begin ();
  Serial.println ("Serveur démarré");
  // Imprimer l'adresse IP
  Serial.println (WiFi.localIP ());
boucle vide () 
  // Vérifie si un client s'est connecté
  Client WiFiClient = server.available ();
  si (! client) 
    revenir;
  
  
  // Attend que le client envoie des données
  Serial.println ("nouveau client");
  while (! client.available ()) 
    retarder (1);
  
  
  // Lire la première ligne de la requête
  String req = client.readStringUntil (' r');
  Serial.println (req);
  client.flush ();
  
  // correspond à la demande
  int val;
  if (req.indexOf ("/ gpio / 0")! = -1)
    val = 0;
  else if (req.indexOf ("/ gpio / 1")! = -1)
    val = 1;
  autre 
    Serial.println ("demande invalide");
    client.stop ();
    revenir;
  
  // Définit GPIO2 en fonction de la demande
  digitalWrite (2, val);
  
  client.flush ();
  // prépare la réponse
  String s = "HTTP / 1.1 200 OK  r  nContenu-Type: text / html  r  n  r  n r  n r  nGPIO is now ";
  s + = (val)? "haut": "bas";
  s + = "n ";
  // envoyer la réponse au client
  client.print (s);
  retarder (1);
  Serial.println ("Client déconnecté");
  // le client sera réellement déconnecté
  // quand la fonction retourne et que l'objet 'client' est détruit

Iot Complete Starter Kit

Et dans le dernier exemple un ESP8266 Point d'accès WiFi Arduino qui héberge un serveur Web est créé:

/ * Créez un point d'accès WiFi et fournissez un serveur Web dessus.
ESP8266 Exemple Arduino
 * /
#comprendre 
#comprendre  
#comprendre 
/ * Définissez-les sur vos informations d'identification souhaitées. * /
const char * ssid = "ESPap";
const char * password = "thereisnospoon";
Serveur ESP8266WebServer (80);
/ * Juste un petit message de test. Accédez à http://192.168.4.1 dans un navigateur Web
 * connecté à ce point d'accès pour le voir.
 * /
void handleRoot () 
server.send (200, "text / html", "

Tu es connecté

"); void setup() délai (1000); Serial.begin (115200); Serial.println (); Serial.print ("Configuration du point d'accès ..."); / * Vous pouvez supprimer le paramètre de mot de passe si vous voulez que le PA soit ouvert. * / WiFi.softAP (ssid, mot de passe); IPAddress myIP = WiFi.softAPIP (); Serial.print ("Adresse IP du point d'accès:"); Serial.println (myIP); server.on ("/", handleRoot); server.begin (); Serial.println ("serveur HTTP démarré"); boucle vide () server.handleClient ();

Dernières pensées

Après avoir joué à ce module pendant quelques semaines, je trouve que c’est l’un des gadgets les plus cools que j’ai jamais utilisé dans mes projets et que je n’ai que de beaux mots à ce sujet. Si vous êtes même un peu attiré par les conseils de développement et que vous n’avez pas eu la chance de jouer avec la série ESP8266, c’est l’une des premières choses que je recommande d’acquérir et de jouer avec. Il vérifie facilement chaque objectif, le prix est excellent, il intègre MCU, Wi-Fi intégré, la portée du signal est assez impressionnant, sa taille est excellente pour l'intégration dans la plupart des projets et il peut être alimenté par n'importe quelle moyenne aucun problème.

Dans les articles suivants, je vais vous montrer comment créer un réseau de 5 ESP8266-01 chez moi et les faire communiquer pour centraliser les données dans un serveur Web IoT. Aussi, je veux revenir avec des commentaires sur le comportement au jour le jour et en particulier sur la consommation d'énergie.

Mettre à jour: Plusieurs ESP8266 se parlant l'un l'autre article prêt. Trouvez ici l'histoire incroyable d'un agriculteur européen qui a réussi à implémenter une énorme topologie WiFi ESP8266 en utilisant plus de 40 modules ESP dans un exemple concret.

ESP8266 parler l'un avec l'autre -deux esp connectés

Mettre à jour: Lis tLe guide complet du module ESP32, la dernière mise à jour de l’ESP8266, est désormais disponible avec Bluetooth et des capteurs intégrés. Revue complète avec des tutoriels de programmation et des exemples de code.

En espérant que cet article vous a inspiré, je vous invite gentiment partager Cet article, souscrire mon Youtube canal et joindre les communautés sur les réseaux sociaux. S'il vous plaît n'hésitez pas à commenter ou envoyer des suggestions / remarques afin que je puisse améliorer la qualité du contenu!

Partager sur Facebook Gazouillement Google+





Laisser un commentaire