Bonsoir,
J'ai travaillé avec OTA pour mettre à jour mon firmware sur NodeMcu,et j'ai pu récupérer le fichier et l'exécuter sur ma carte le problème est que je dois toujours faire un reboot manuel pour exécuter le nouveau scketch,Je me demande s'il y a une méthode pour faire un reboot automatique après la récupération du nouveau fichier.
Merci d'avance.
voici mon code:
#include <Arduino.h>
#include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h>
#include <ESP8266HTTPClient.h>
#include <ESP8266httpUpdate.h>
#define USE_SERIAL Serial
ESP8266WiFiMulti WiFiMulti;
void setup() {
USE_SERIAL.begin(9600);
// USE_SERIAL.setDebugOutput(true);
/* USE_SERIAL.println();
USE_SERIAL.println();
USE_SERIAL.println();
//chr url="";*/
for(uint8_t t = 4; t > 0; t--) {
USE_SERIAL.printf("[SETUP] WAIT %d...\n", t);
USE_SERIAL.flush();
delay(1000);
}
WiFiMulti.addAP("SSID","PASSWORD");
}
void loop() {
// wait for WiFi connection
if((WiFiMulti.run() == WL_CONNECTED)) {
t_httpUpdate_return ret = ESPhttpUpdate.update("https://server/file.bin");
switch(ret) {
case HTTP_UPDATE_FAILED:
USE_SERIAL.println("HTTP_UPDATE_FAILD");
break;
case HTTP_UPDATE_NO_UPDATES:
USE_SERIAL.println("HTTP_UPDATE_NO_UPDATES");
break;
case HTTP_UPDATE_OK:
USE_SERIAL.println("HTTP_UPDATE_OK");
break;
}
}
}