Table des matières:
- Étape 1: BROCHER
- Étape 2: WiFiManager
- Étape 3: Comment ça marche
- Étape 4: Bibliothèques
- Étape 5: Fonctions
- Étape 6: Assemblage
- Étape 7: Coder
- Étape 8: configuration
- Étape 9: boucle
- Étape 10: Rappels
Vidéo: ESP8266 et ESP32 avec WiFiManager : 10 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:09
Connaissez-vous WiFiManager ? C'est une bibliothèque qui sert de gestionnaire de connexion sans fil, et avec elle, nous avons un moyen plus simple de configurer à la fois un point d'accès et une station. J'ai reçu plusieurs suggestions pour discuter de ce sujet; donc aujourd'hui je vais vous présenter cette bibliothèque et ses fonctions. Je ferai également une démonstration de son utilisation avec l'ESP32 et l'ESP8266.
Étape 1: BROCHER
Ici, je montre le PINOUT des deux appareils que nous utiliserons:
- NodeMCU ESP-12E
- NodeMCU ESP-WROOM-32
Étape 2: WiFiManager
Le WiFiManager n'est vraiment rien de plus qu'une bibliothèque écrite au-dessus de WiFi.h pour une gestion facile des connexions sans fil. N'oubliez pas qu'avec lui, nous avons une plus grande facilité pour configurer à la fois un point d'accès et une station. Pour le mode Station, nous configurons via un portail dans le navigateur.
Certaines fonctionnalités:
• Cela dépend de la connectivité automatique
• Initialisation du portail de configuration non automatique
• Fonctionne sélectivement en mode double
Étape 3: Comment ça marche
L'ESP lancera un portail de configuration WiFi lorsqu'il sera connecté et enregistrera les données de configuration dans une mémoire non volatile. Par la suite, le portail de configuration ne redémarrera que si un bouton est enfoncé dans le module ESP.
Ici, vous pouvez vérifier le flux de configuration et suivre cette étape par étape:
1. À l'aide de n'importe quel appareil compatible WiFi avec un navigateur, connectez-vous au point d'accès nouvellement créé et entrez l'adresse 192.168.4.1.
2. Sur l'écran, vous aurez deux options pour vous connecter à un réseau existant:
• Configurer le Wi-Fi
• Configurer le WiFi (pas de scan)
3. Choisissez l'un des réseaux et saisissez le mot de passe (si nécessaire). Ensuite, enregistrez et attendez que l'ESP redémarre.
4. À la fin du démarrage, ESP tente de se connecter au réseau enregistré. Si vous ne pouvez pas le faire, vous activerez un point d'accès.
Étape 4: Bibliothèques
Ajouter la bibliothèque "WifiManager-ESP32".
Allez sur https://github.com/zhouhan0126/WIFIMANAGER-ESP32 et téléchargez la bibliothèque.
Décompressez le fichier et collez-le dans le dossier des bibliothèques de l'IDE Arduino.
C:/Program Files (x86)/Arduino/bibliothèques
Ajoutez la bibliothèque "DNSServer-ESP32".
Accédez au lien https://github.com/zhouhan0126/DNSServer---esp32 et téléchargez la bibliothèque.
Décompressez le fichier et collez-le dans le dossier des bibliothèques de l'IDE Arduino.
C:/Program Files (x86)/Arduino/bibliothèques
Ajoutez la bibliothèque "WebServer-ESP32".
Accédez au lien https://github.com/zhouhan0126/WebServer-esp32 et téléchargez la bibliothèque.
Décompressez le fichier et collez-le dans le dossier des bibliothèques de l'IDE Arduino.
C:/Program Files (x86)/Arduino/bibliothèques
Noter:
La bibliothèque WiFiManager-ESP32 possède déjà les paramètres qui fonctionnent avec ESP8266, nous n'utiliserons donc que cela, au lieu de deux bibliothèques WiFiManager (une pour chaque type de puce).
Comme nous le verrons plus tard, ESP8266WiFi et ESP8266WebServer sont des bibliothèques que nous n'avons pas besoin de télécharger, car elles viennent déjà lorsque nous installons ESP8266 dans l'IDE Arduino.
Étape 5: Fonctions
Voici quelques fonctions que le WiFiManager nous offre.
1. autoConnect
La fonction autoConnect est responsable de la création d'un point d'accès. Nous pouvons l'utiliser de trois manières.
• autoConnect ("nom du réseau", "mot de passe"); - crée un réseau avec le nom et le mot de passe définis.
• autoConnect ("nom du réseau"); - crée un réseau ouvert avec le nom défini.
• autoConnect (); - crée un réseau ouvert et nommé automatiquement avec le nom 'ESP' + chipID.
2. démarrerConfigPortal
La fonction startConfigPortal est responsable de la création d'un point d'accès sans tenter de se connecter à un réseau précédemment enregistré.
• startConfigPortal ("nom de réseau", "mot de passe"); - crée un réseau avec le nom et le mot de passe définis.
• startConfigPortal (); - crée un réseau ouvert et nommé automatiquement avec le nom 'ESP' + chipID.
3. getConfigPortalSSID
Renvoie le SSID du portail (Access Point)
4. obtenir le SSID
Cela renvoie le SSID du réseau auquel il est connecté.
5. obtenir le mot de passe
Celui-ci renvoie le mot de passe du réseau auquel il est connecté.
6. setDebugOutput
La fonction setDebugOutput est responsable de l'impression des messages de débogage sur le moniteur série. Ces messages sont déjà définis dans la bibliothèque. Au fur et à mesure que vous parcourez les fonctions, les données seront imprimées.
Par défaut, cette fonction est définie sur TRUE. Si vous souhaitez désactiver les messages, définissez simplement la fonction sur FALSE.
7. setMinimumSignalQuality
La fonction setMinimumSignalQuality est responsable du filtrage des réseaux en fonction de la qualité du signal. Par défaut, WiFiManager n'affichera pas les réseaux de connexion inférieurs à 8%.
8. setRemoveDuplicateAPs
La fonction setRemoveDuplicateAPs est chargée de supprimer les doublons du réseau.
Par défaut, il est défini sur TRUE.
9. setAPStaticIPConfig
La fonction setAPStaticIPConfig est chargée de définir les paramètres d'adresse statique en mode point d'accès.
(IP, PASSERELLE, SOUS-RÉSEAU)
10. setSTAStaticIPConfig
La fonction setSTAStaticIPConfig est chargée de définir les paramètres d'adresse statique en mode station.
(IP, PASSERELLE, SOUS-RÉSEAU)
Vous devez ajouter la commande avant autoConnect!!!
11. setAPCallback
La fonction setAPCallback est chargée de vous informer que le mode AP a démarré.
Le paramètre est une fonction qui doit être créée pour l'indiquer comme rappel;
12. setSaveConfigCallback
La fonction setSaveConfigCallback est chargée de vous informer qu'une nouvelle configuration a été enregistrée et que la connexion a été effectuée avec succès.
Le paramètre est une fonction à créer et l'indique comme un allback.
Vous devez ajouter la commande avant autoConnect !!!
Étape 6: Assemblage
Exemple
Dans notre exemple, nous allons créer un point d'accès avec ESP (le code servira à la fois ESP8266 et ESP32). Après la création de l'AP, nous accéderons au portail via IP 192.168.4.1 (qui est la valeur par défaut pour y accéder). Alors, récupérons les réseaux disponibles, sélectionnez-en un et économisez. À partir de là, l'ESP redémarrera et tentera de s'y connecter, puis il fonctionnera comme une station et non plus comme un point d'accès.
Après être entré en mode station, vous pouvez faire revenir l'ESP en mode point d'accès uniquement à l'aide du bouton.
Étape 7: Coder
Bibliothèques
Commençons par définir les bibliothèques que nous utiliserons.
Notez que nous avons les commandes #ifdefined, #else et #endif. Ils sont conditionnels à inclure les bibliothèques nécessaires relatives à la puce. Cette partie est extrêmement importante pour exécuter le même code sur ESP8266 et ESP32.
#si défini(ESP8266)
#include //Bibliothèque WiFi principale ESP8266 #else #include //Bibliothèque WiFi principale ESP32 #endif
#si défini(ESP8266)
#include //Serveur Web local utilisé pour servir le portail de configuration
#autre
#include //Serveur DNS local utilisé pour rediriger toutes les requêtes vers le portail de configuration (https://github.com/zhouhan0126/DNSServer---esp32)
#fin si
#include //Serveur Web local utilisé pour servir le portail de configuration (https://github.com/zhouhan0126/DNSServer---esp32) #include // Magie de configuration WiFi (https://github.com/zhouhan0126/DNSServer-- -esp32) >> https://github.com/zhouhan0126/DNSServer---esp32 (ORIGINAL)
Étape 8: configuration
Lors de la configuration, nous configurons notre WiFiManager de la manière la plus simple. Définissons simplement les rappels et créons le réseau.
const int PIN_AP = 2;
void setup() { Serial.begin(9600); pinMode(PIN_AP, ENTRÉE); //déclaration de l'objet wifiManager WiFiManager wifiManager;
//utilizando esse comando, as configurações são apagadas da memória //caso tiver salvo alguma rede para conectar automaticamente, ela é apagada. // wifiManager.resetSettings(); //rappel pour le mode de configuration AP wifiManager.setAPCallback(configModeCallback); //rappel pour quand on se connecte à un rede, ou seja, quand on passe à un mode de connexion wifiManager.setSaveConfigCallback(saveConfigCallback); //Cria uma rede de nome ESP_AP com senha 12345678 wifiManager.autoConnect("ESP_AP", "12345678"); }
Étape 9: boucle
Dans la boucle, nous lirons la broche du bouton pour voir si elle a été enfoncée, puis nous appellerons la méthode pour réactiver le mode AP.
boucle vide() {
WiFiManager wifiManager; //se o botão foi pressionado if (digitalRead(PIN_AP) == HIGH) { Serial.println("resetar"); // tente d'ouvrir le portail if(!wifiManager.startConfigPortal("ESP_AP", "12345678")){ Serial.println("Falha ao conectar"); retard (2000); ESP.restart(); retard(1000); } Serial.println("Conectou ESP_AP!!!"); }
Lorsque vous appuyez sur le bouton, l'ESP quitte le mode Station et ouvre votre point d'accès et votre portail.
N'oubliez pas que nous n'utilisons pas la commande resetSettings(). Les paramètres sont toujours enregistrés pour le prochain démarrage de l'ESP.
Étape 10: Rappels
Les fonctions de rappel, associées à des événements, vous permettent d'avoir le moment exact d'une opération, dans notre cas, l'entrée en mode AP et en mode Station. Nous pouvons ensuite mettre en œuvre une routine souhaitée, telle que la récupération du SSID du réseau connecté, par exemple.
//rappel que indica que o ESP entrou no modo AP
void configModeCallback (WiFiManager * myWiFiManager) { // Serial.println ("Entré en mode de configuration"); Serial.println("Entrez sans modo de configuration"); Serial.println(WiFi.softAPIP()); //imprime o IP do AP Serial.println(myWiFiManager->getConfigPortalSSID()); //Imprime o SSID criado da rede
}
//rappel que indica que salvamos uma nova rede para se conectar (modo estação)
void saveConfigCallback () { // Serial.println("Doit enregistrer la configuration"); Serial.println("Configuration salva"); Serial.println(WiFi.softAPIP()); //imprime o IP do AP }
Conseillé:
Comment envoyer des e-mails avec pièces jointes avec Arduino, Esp32 et Esp8266 : 6 étapes
Comment envoyer des e-mails avec pièces jointes avec Arduino, Esp32 et Esp8266 : Ici, je voudrais expliquer la version 2 de ma bibliothèque EMailSender, une grande évolution par rapport à la version 1, avec le support d'Arduino avec w5100, w5200 et w5500 ethernet shield et enc28J60 cloner des périphériques et prendre en charge esp32 et esp8266. Vous pouvez désormais annoncer
Capturez et envoyez des images avec ESP32-Cam à l'aide du processeur Wifi ESP8266 WeMos D1 R1 avec Uno: 7 étapes
Capturez et envoyez des images avec ESP32-Cam à l'aide du processeur Wifi ESP8266 WeMos D1 R1 avec Uno: Capturez une image à l'aide de ESP32-Cam (OV2640) à l'aide du processeur WiFI ESP8266 WeMos D1 R1 avec Uno et envoyez-la par courrier électronique, enregistrez-la sur Google Drive et envoyez-la à Whatsapp utilisant Twilio.Exigences : ESP8266 WeMos D1 R1 WiFI Processor avec Uno (https://protosupplies
PWM avec ESP32 - Dimming LED avec PWM sur ESP 32 avec Arduino IDE: 6 étapes
PWM avec ESP32 | Dimming LED With PWM on ESP 32 With Arduino IDE: Dans ces instructables, nous verrons comment générer des signaux PWM avec ESP32 à l'aide d'Arduino IDE & PWM est essentiellement utilisé pour générer une sortie analogique à partir de n'importe quel MCU et cette sortie analogique peut être comprise entre 0 V et 3,3 V (dans le cas d'esp32) & de
Balance intelligente bricolage avec réveil (avec Wi-Fi, ESP8266, Arduino IDE et Adafruit.io): 10 étapes (avec photos)
Balance intelligente bricolage avec réveil (avec Wi-Fi, ESP8266, Arduino IDE et Adafruit.io): Dans mon projet précédent, j'ai développé une balance de salle de bain intelligente avec Wi-Fi. Il peut mesurer le poids de l'utilisateur, l'afficher localement et l'envoyer vers le cloud. Vous pouvez obtenir plus de détails à ce sujet sur le lien ci-dessous : https://www.instructables.com/id/Wi-Fi-Smart-Scale-wi
Premiers pas avec ESP32 - Installation de cartes ESP32 dans Arduino IDE - Code de clignotement ESP32 : 3 étapes
Premiers pas avec ESP32 | Installation de cartes ESP32 dans Arduino IDE | ESP32 Blink Code: Dans ces instructables, nous verrons comment commencer à travailler avec esp32 et comment installer des cartes esp32 dans Arduino IDE et nous programmerons esp 32 pour exécuter le code clignotant en utilisant arduino ide