voidsetup(){Serial.begin(115200);Serial.println("Booting");WiFi.mode(WIFI_STA);WiFi.begin(ssid,password);while(WiFi.waitForConnectResult()!=WL_CONNECTED){Serial.println("Connection Failed! Rebooting...");delay(5000);ESP.restart();}// Port defaults to 3232
// ArduinoOTA.setPort(3232);
// Hostname defaults to esp3232-[MAC]
// ArduinoOTA.setHostname("myesp32");
// No authentication by default
// ArduinoOTA.setPassword("admin");
// Password can be set with it's md5 value as well
// MD5(admin) = 21232f297a57a5a743894a0e4a801fc3
// ArduinoOTA.setPasswordHash("21232f297a57a5a743894a0e4a801fc3");
ArduinoOTA.onStart([](){Stringtype;if(ArduinoOTA.getCommand()==U_FLASH)type="sketch";else// U_SPIFFS
type="filesystem";// NOTE: if updating SPIFFS this would be the place to unmount SPIFFS using SPIFFS.end()
Serial.println("Start updating "+type);}).onEnd([](){Serial.println("\nEnd");}).onProgress([](unsignedintprogress,unsignedinttotal){Serial.printf("Progress: %u%%\r",(progress/(total/100)));}).onError([](ota_error_terror){Serial.printf("Error[%u]: ",error);if(error==OTA_AUTH_ERROR)Serial.println("Auth Failed");elseif(error==OTA_BEGIN_ERROR)Serial.println("Begin Failed");elseif(error==OTA_CONNECT_ERROR)Serial.println("Connect Failed");elseif(error==OTA_RECEIVE_ERROR)Serial.println("Receive Failed");elseif(error==OTA_END_ERROR)Serial.println("End Failed");});ArduinoOTA.begin();Serial.println("Ready");Serial.print("IP address: ");Serial.println(WiFi.localIP());}