ESP8266 base de contrôle web configurable wifi usage général (partie II)

Remarque : Un prêt à partir le Conseil d’administration peut être acheté ici

Sur la deuxième partie je vais aller sur comment programmer le ESP8266 donc une clé USB à module série et un terminal n’est pas nécessaire : il tous se fera via le web. Aussi, je vais vous expliquer comment conduire un compteur binaire et relais de commande 4 (multi sur/multi off) utilisant GPIO0 comme contrôle et GPIO2 comme reset. De cette façon le ESP8266 se transforme vraiment en un appareil puissant qui peut être ajouté à n’importe quel projet d’automatisation et son facile à programmer sur le site.

Vous pouvez obtenir plus d’informations sur mes projets au Horacio Bouzas Web site

Le firmware de contrôle

Le firmware doit être en mesure de permettre à l’utilisateur de se connecter au module et régler la SSID et mot de passe du réseau du module sera connecté à. Les étapes pour concevoir le firmware sont comme suit :

1. mettre le module en mode serveur (AP)

2. Définissez un nom et un mot de passe

3. créer un serveur

4. écouter sur le port 80

5. module adresse est 192.168.4.1

6. vous présente une page web demandant des SSID et mot de passe

7. passez en mode Station et mettre le SSID et le mot de passe

8. se connecter au réseau

9. commencer à écouter pour les événements à venir sur l’adresse ip attribuée par le réseau et le port 9999

Voici le code pour le faire :

file.Open("init.lua","w")

file.WriteLine ([[Imprimer (« WIFI control")]])

--mettre le module en mode AP

file.WriteLine ([[wifi.setmode (wifi. SOFTAP)]])

file.WriteLine ([[Imprimer ("mode ESP8266 est:".. WiFi.getMode())]])

file.WriteLine([[CFG={}]])

--Figurant le SSID du module AP mode et accès mot de passe

file.WriteLine([[cfg.SSID="ESP_STATION"]])

file.WriteLine([[cfg.pwd="the_ESP8266_WIFI_password"]])

file.WriteLine ([[if ssid et mot de passe puis]])

file.WriteLine ([[Imprimer (« ESP8266 SSID est: ".. cfg.SSID... "et le mot de passe est:"... cfg.Password)]])

file.WriteLine([[end]])

--Maintenant, vous devriez voir un routeur sans fil SSID nommé ESP_STATION lorsque vous numérisez des réseaux WIFI disponibles

--Vous permet de connecter au module d’un ordinateur de périphérique mobile. Donc, trouver le SSID et se connecter en utilisant le mot de passe choisi

file.WriteLine([[WiFi.AP.config(cfg)]])

file.WriteLine ([[ap_mac = wifi.ap.getmac()]])

--créer un serveur sur le port 80 et l’attente pour une connexion, lorsqu’une connexion se met en fonction c sera exécuté

file.WriteLine ([[sv=net.createServer (net. TCP, 30)]])

file.WriteLine([[SV:Listen(80,Function(c)]])

file.WriteLine ([[c: sur ("recevoir", function (c, pl)]])

--imprimer la charge utile pl provenant de la connexion

file.WriteLine([[print(pl)]])

file.WriteLine([[print(String.Len(pl))]])

--Attendez que SSID revient et analyser le SSID et le mot de passe

file.WriteLine([[print(String.match(PL,"Get"))]])

file.WriteLine([[ssid_start,ssid_end=String.Find(PL,"SSID=")]])

file.WriteLine ([[if ssid_start et ssid_end puis]])

file.WriteLine ([[amper1_start, amper1_end =string.find (pl, » & », ssid_end + 1)]])

file.WriteLine ([[if amper1_start et amper1_end puis]])

file.WriteLine ([[http_start, http_end =string.find (pl, « HTTP/1.1 ", ssid_end + 1)]])

file.WriteLine ([[if http_start et http_end puis]])

file.WriteLine ([[ssid=string.sub (pl, ssid_end + 1, amper1_start-1)]])

file.WriteLine ([[password=string.sub (pl, amper1_end + 10, http_start-2)]])

file.WriteLine ([[Imprimer (« ESP8266 connexion SSID: ".. SSID... "avec mot de passe:"... mot de passe)]])

file.WriteLine ([[if ssid et mot de passe puis]])

file.WriteLine([[SV:Close()]])

--fermer le serveur et mettre le module en mode STATION

file.WriteLine ([[wifi.setmode (wifi. STATIONAP)]])

file.WriteLine ([[Imprimer (« ESP8266 mode maintenant est: ".. WiFi.getMode())]])

--configure le module wso il peut se connecter au réseau en utilisant le SSID et le mot reçu

file.WriteLine([[WiFi.STA.config(SSID,Password)]])

file.WriteLine ([[Imprimer ("mise en place ESP8266 pour le mode station... Veuillez patientez")]])

file.WriteLine([[TMR.Delay(10000000)]])

file.WriteLine ([[Imprimer ("IP STATION ESP8266 maintenant est:".. WiFi.STA.GetIP())]])

file.WriteLine ([[Imprimer (« ESP8266 AP IP maintenant est: ".. WiFi.AP.GetIP())]])

--maintenant le module est configuré et connecté au réseau permet donc commencer à définir les choses pour la logique de contrôle

file.WriteLine ([[gpio.mode (8, gpio. SORTIE)]])

file.WriteLine ([[gpio.mode (9, gpio. SORTIE)]])

file.WriteLine([[TMR.Delay(10)]])

file.WriteLine ([[gpio.write (8, gpio. HAUTE)]])

file.WriteLine([[TMR.Delay(10)]])

file.WriteLine ([[gpio.write (8, gpio. LOW)]])

file.WriteLine ([[sv=net.createServer (net. TCP, 30)]])

file.WriteLine([[SV:Listen(9999,Function(c)]])

file.WriteLine ([[c: sur ("recevoir", function (c, pl)]])

file.WriteLine ([[if tonumber(pl) ~ = nil then]])

file.WriteLine ([[if tonumber(pl) > = 1 et tonumber(pl) < = 16 puis]])

file.WriteLine([[print(ToNumber(pl))]])

file.WriteLine([[TMR.Delay(10)]])

file.WriteLine ([[gpio.write (8, gpio. HAUTE)]])

file.WriteLine([[TMR.Delay(10)]])

file.WriteLine ([[gpio.write (8, gpio. LOW)]])

file.WriteLine ([[pour comte =1,tonumber(pl) do]])

file.WriteLine ([[print(count)]])

file.WriteLine([[TMR.Delay(10)]])

file.WriteLine ([[gpio.write (9, gpio. LOW)]])

file.WriteLine([[TMR.Delay(10)]])

file.WriteLine ([[gpio.write (9, gpio. HAUTE)]])

file.WriteLine ([[c:send("Sequence finished")]])

file.WriteLine([[end]])

file.WriteLine([[end]])

file.WriteLine([[end]])

file.WriteLine ([[Imprimer ("IP STATION ESP8266 maintenant est:".. new_ip)]])

file.WriteLine ([[c:send("ESP8266 STATION IP now is:".. new_ip)]])

file.WriteLine ([[c:send("Action completed")]])

file.WriteLine([[end)]])

file.WriteLine([[end)]])

file.WriteLine([[end]])

file.WriteLine([[end]])

file.WriteLine([[end]])

file.WriteLine([[end]])

--Il s’agit de la page web qui demande le SSID et le mot de passe de l’utilisateur

file.WriteLine ([[c:send("")]])

file.WriteLine ([[c:send("")]])

file.WriteLine ([[c:send("")]])

file.WriteLine ([[c:send("ESP8266 Wireless control setup")]])

file.WriteLine ([[mac_mess1 = "l’adresse MAC du module est:".. ap_mac]])

file.WriteLine ([[mac_mess2 = « Vous aurez besoin de cette adresse MAC pour trouver l’adresse IP du module, veuillez prendre note de celui-ci. »]])

file.WriteLine ([[c:send("".. mac_mess1... "")]])

file.WriteLine ([[c:send("".. mac_mess2... "")]])

file.WriteLine ([[c:send("Enter SSID and Password for your WIFI router")]])

file.WriteLine ([[c:send("

")]])

file.WriteLine ([[c:send("

")]])

file.WriteLine([[c:Send("SSID:")]])

file.WriteLine([[c:Send("")]])

file.WriteLine ([[c:send("
")]])

file.WriteLine([[c:Send("password:")]])

file.WriteLine([[c:Send("")]])

file.WriteLine([[c:Send("")]])

file.WriteLine([[end)]])

file.WriteLine([[end)]])

file.Close()

Articles Liés

ESP8266 base de contrôle web configurable wifi usage général (partie III)

ESP8266 base de contrôle web configurable wifi usage général (partie III)

NOTE : Prêt à partir de planches peuvent être achetés iciLa partie électroniqueDans la partie I et II nous avons vu comment programmer et configurer à distance les ESP8266 pour qu'il devienne un processeur d'événements TCP et utiliser GPIO pour commu
ESP8266 base de contrôle d’usage général web wifi configurables (partie I)

ESP8266 base de contrôle d’usage général web wifi configurables (partie I)

NOTE : Prêt à partir de planches peuvent être achetés iciD'AT commandes au firmware contrôléeLe genre de nouveau module wifi de ESP8266 n'est pas seulement bon marché, environ 3-4 dollars, son également un module assez polyvalent qui permet des tonne
ESP8266 Base lumière IoT

ESP8266 Base lumière IoT

Cette Instructables montrent comment utiliser la télécommande ESP8266 BASIC un éclairage domestique.Étape 1: Pourquoi changer de télécommande ?Interrupteur d'éclairage de ma maison hall se cacher derrière l'armoire et loin de la porte. Il est diffici
Préchauffage du moteur à distance basée sur le Web

Préchauffage du moteur à distance basée sur le Web

Ce Instructable décrira en détail un contrôle très précis basé sur le web et la méthode de surveillance qui peut être généralisé pour beaucoup d'autres utilisations.Un de mes passe-temps vole petits aéronefs dans l'Ohio. Ohio obtient-il très froid en
ESP8266 Client IRC Chat (contrôle Web) - partie terminale série 1

ESP8266 Client IRC Chat (contrôle Web) - partie terminale série 1

Ce qui est IRC ?IRC (Internet Relay Chat) est un protocole de communication en temps réel basé sur des discussions permettant de texte entre deux ou plusieurs personnes. Elle diffère de la messagerie instantanée aux utilisateurs ne devraient pas avoi
Contrôle des relais WiFI ESP 8266 autonome [ytUt]

Contrôle des relais WiFI ESP 8266 autonome [ytUt]

OBJECTIFContrôler un interrupteur relais via l'interface utilisateur Web à l'aide d'esp8266 en mode autonome (sans arduino, photo ou toute autre microcontrôleur)L'ESP diffuse son SSID. Il ne se connecte pas à un routeur. adresse IP locale de l'esp es
ESP8266 Gestion de fichiers distants pour le WiFi OTA

ESP8266 Gestion de fichiers distants pour le WiFi OTA

J'ai travaillé avec des microcontrôleurs ESP8266 assez longtemps maintenant d'avoir un certain nombre d'entre eux déployés dans mon environnement. J'ai installation quelques tests de mon courtier MQTT. J'ai un couple envoi de relevés de pression baro
Laitue pour la vie - Arduino 101 basé automatisé contrôleur pour la culture hydroponique, aéroponique, culture aquaponique, etc..  Intel Curie

Laitue pour la vie - Arduino 101 basé automatisé contrôleur pour la culture hydroponique, aéroponique, culture aquaponique, etc.. Intel Curie

RÉSUMÉUn dispositif qui permet de contrôler jusqu'à 4 systèmes hydroponique/Aeroponic différents à la fois. Le dispositif de contrôler les composants du système et afficher la notification à un écran LCD et permettent à l'utilisateur de personnaliser
Téléphone domotique contrôlé via le Wifi

Téléphone domotique contrôlé via le Wifi

la fonction principale de ma maison est de me donner et pour ma famille un endroit sûr et je veux juste faire ma maison un peu peu plus sûrs et plus intelligents à l'aide de la LinkIt un Conseil de développement, qui est l'un du meilleur conseil que
Les bases d’un site Web div

Les bases d’un site Web div

cette instructable va vous montrer les rudiments de la façon de construire un site Web avec des divs. Parce que les tables utilisées pour la mise en page sont mauvais ! : pPour comprendre ce instructable, vous aurez besoin de connaître le css et html
ESP8266 + Arduino + Oled (contrôle Client de Chat IRC) partie 1

ESP8266 + Arduino + Oled (contrôle Client de Chat IRC) partie 1

J'ai vu beaucoup d'exemples de comment contrôler l'Arduino à distance, mais nécessitent des paramètres excessifs et quelle aide LAN ethernet ou communication WLAN dans la plupart des exemples ne fonctionne que sur un réseau local ou l'intranet.J'avai
Système de gicleurs Arduino + contrôle Web

Système de gicleurs Arduino + contrôle Web

un intelligent système d'arrosage pour le reste d'entre nous... Aucune soudure impliqués ! Il suffit de s'empilent un couple de boucliers sur le dessus un arduino et contrôler votre système d'arrosage de n'importe où.Un couple d'amis a voulu reprodui
Arduino et LM35 à base de contrôleur de température pour les débutants

Arduino et LM35 à base de contrôleur de température pour les débutants

IntroductionVérifiez la température de votre propre système de surveillance à l'aide du capteur de température analogique Arduino et LM35. Il s'agit d'un projet de bricolage très simple pour les débutants de l'Arduino. Toutes les étapes et les exigen
Treeduino - l’arbre de Noël de contrôle Web

Treeduino - l’arbre de Noël de contrôle Web

Treeduino est l'affectueusement donné à la famille croisée, arbre de Noël. Dès 2009, les visiteurs vers une page Web ont pu allumer les lampes du marche et en arrêt pendant que vous regardez leurs actions à travers une webcam en direct feed. En 2010