Avant de commencer , la programmation OTA sous entend que vous avez déjà réussit à programmer la carte ESP8266 en filaire ! Je ne reviendrais pas sur la procédure.
1/ Dans le Sketch MODIFIER le SSID ET le password (en gardant les guillemets) avec les données de votre réseau WIFI
2/ TELEVERSER le sketch par la liaison série classique, comme vous savez le faire Bien vérifier que Outils/Flash size 4M(3M SPIFFS). Conseil: notez ce qui est affiché en rouge: emplacement du sketch compilé dans votre PC. Il sera utile pour le retrouver.
3/ ouvrir le moniteur : Le Sketch est chargé, la carte se connecte au réseau WIFI configuré et indique son adresse IP
Modification du SOFT et Téléversement par WIFI :
1/ Modifier/Ajouter vos lignes de codes SANS TOUCHER aux paragraphes ##### OTA #####
2/ VERIFIER le SKETCH uniquement !
** !! le PC qui va programmer la carte en OTA doit être connecté sur le même réseau WIFI que la carte ESP8266 !!**
3/ ouvrir un Navigateur Internet a la page http://esp8266-webupdate.local/update
OU, si ça ne fonctionne pas http://192.168.xx.xx/update : adresse IP de la carte vu plus haut
4/ on va charger le SKETCH qu'on viens de compiler : (ne pas faire Reset + GPIO0 à GND sur la carte ESP8266)
cliquer sur "charger le fichier" et chercher dans C:\Users\john\AppData\Local\Temp\arduino_build_xxx\xxxxx.ino.bin
conseil : trier par date pour avoir le dernier sketch modifié
5/ cliquer sur "upload" attendre qq secondes : Update Success! La carte va rebooter et démarrer le nouveau SKETCH !!
6/ modifier, VERIFIER, "Charger le fichier", "upload" ... FACILE !
//*** MAJ du soft Esp8266 en OTA (Over The Air) wifi via Navigateur Internet ***
/* La programmation OTA sous entend que vous avez déjà réussit à programmer la carte ESP8266 en filaire !
1/ Dans ce Sketch MODIFIER le SSID ET le password (en gardant les guillemets) avec les données de votre réseau WIFI
2/ TELEVERSER le sketch par la liaison serie classique, comme vous savez le faire ;)
Bien vérifier que Outils/Flash size 4M(3M SPIFFS)
3/ ouvrir le moniteur :
Le Sketch est chargé, la carte se connecte au réseau WIFI configuré et indique son adresse IP
Modification du SOFT et Televersement par WIFI :
1/ Modifier/Ajouter vos lignes de codes SANS TOUCHER aux paragraphes ##### OTA #####
2/ VERIFIER le SKETCH uniquement !
!! le PC qui va programmer la carte en OTA doit etre connecte sur le meme reseau WIFI que la carte ESP8266 !!
3/ ouvrir un Navigateur Internet a la page http://esp8266-webupdate.local/update
OU, si ça ne fonctionen pas http://192.168.xx.xx/update : adresse IP de la carte vu plus haut
4/ on va charger le SKETCH qu'on viens de compiler : (ne pas faire Reset + GPIO0 à GND sur la carte ESP8266)
cliquer sur "charger le fichier" et chercher dans C:\Users\john\AppData\Local\Temp\arduino_build_xxx\xxxxx.ino.bin
conseil : trier par date pour avoir le dernier sketch modifié
5/ cliquer sur "upload" attendre qq secondes : Update Success!
la carte va rebooter et demarrer le nouveau SKETCH !!
(To upload through terminal you can use: curl -F "image=@firmware.bin" esp8266-webupdate.local/update)
6/ modifier, VERIFIER, "Charger le fichier", "upload" ... FACILE !
*/
//############# OTA ######################
#include <ESP8266WiFi.h> //#
#include <WiFiClient.h> //#
#include <ESP8266WebServer.h> //#
#include <ESP8266mDNS.h> //#
#include <ESP8266HTTPUpdateServer.h> //#
// #
const char* host = "esp8266-webupdate";//#
const char* ssid = "MonReseau"; //# <---- VOTRE réseau WIFI entre les guillemets
const char* password = "MonPass"; //# <---- le mot de passe du réseau entre les guillemets
// #
ESP8266WebServer httpServer(80); //#
ESP8266HTTPUpdateServer httpUpdater; //#
//########################################
// VOTRE SKETCH ICI
//***********************************
//* SETUP
//***********************************
void setup() {
//############################ OTA ####################################################
Serial.begin(9600); //#
Serial.println("\nDemarrage du Sketch..."); //#
WiFi.mode(WIFI_AP_STA); //#
WiFi.begin(ssid, password); //#
while (WiFi.waitForConnectResult() != WL_CONNECTED) { //#
WiFi.begin(ssid, password); //#
Serial.println("WiFi perdu, reconnection ..."); //#
} //#
MDNS.begin(host); //#
httpUpdater.setup(&httpServer); //#
httpServer.begin(); //#
MDNS.addService("http", "tcp", 80); //#
Serial.println("HTTPUpdateServer pret!"); //#
// Print le reseau et IP address //#
Serial.print("Reseau:"); Serial.print(WiFi.SSID()); Serial.print(WiFi.RSSI()); Serial.println("dB"); //#
Serial.print("Copier/Coller dans votre Navigateur: "); //#
Serial.print("http://"); Serial.print(WiFi.localIP()); Serial.print("/update ");//#
Serial.printf( "Ou http://%s.local/update \n", host); //#
//#####################################################################################
// VOTRE SKETCH ICI
Serial.println("\nSKETCH: Je fait clignoter la LED du GPIO15");
pinMode(15, OUTPUT);
} // fin du setup
//***********************************
//* LOOP
//***********************************
void loop() {
//############# OTA ##################
httpServer.handleClient(); //#
//####################################
// VOTRE SKETCH ICI
digitalWrite(15, HIGH); //led ON
delay(150);
digitalWrite(15, LOW); //led OFF
delay(2000);
}// fin de loop
Le sketch fait clignoter une led branchée sur le port GPIO15.
Modifiez les delay de led on et off , VERIFIER le Sketch. Dans le Navigateur: "Charger le fichier" puis "upload" !
Modifier le sketch, enregistrez le sous un autre nom, à volonté en faisant attention de ne pas toucher aux paragraphes #### OTA ###