#include <ESP8266WiFi.h>
#include <ESP8266mDNS.h>
#include <WiFiUdp.h>
#include <ArduinoOTA.h>
const char* ssid = "XXXXX"; // votre réseau wifi
const char* pass = "YYYYY"; // votre cléf wifi
const char* host = "nom_de_la_machine"; // le nom de votre projet
unsigned long previousMillis = 0; // variable pour le temps
const long interval = 1000; // intervale em ms
int ledState = LOW; // ledState pour allumer ou pas la led
void setup() {
pinMode(LED_BUILTIN, OUTPUT); // on met la led interne du NodeMCU en sortie
Serial.begin(115200);
WiFi.mode(WIFI_STA); // on defini le mode du wifi
WiFi.begin(ssid, pass); // on se connecte
while (WiFi.status() != WL_CONNECTED) { // tant qu'on est pas connecté on attend
delay(500);
Serial.print(".");
}
digitalWrite(LED_BUILTIN, ledState); // on allume la led interne du nodeMCU (logic inversé pour cette led)
ArduinoOTA.setPort(8266); // le port de transmission
ArduinoOTA.setHostname(host); // on donne un nom au port réseau
ArduinoOTA.begin(); // on démarre le port réseau
}
void loop() {
ArduinoOTA.handle(); // on écoute en boucle
// pour faire clignoter une led sans delay
unsigned long currentMillis = millis(); // pour caclculer l'intervale de temp
if (currentMillis - previousMillis >= interval) { // des qu'on a ateint l'interval
previousMillis = currentMillis; // on remet le compteur a zero
ledState = !ledState; // on change l'état de la led toute les secondes (interval)
digitalWrite(LED_BUILTIN, ledState); // on allume la led ou pas selon l'etat
}
}