OTA (Over the Air) -programmering är en funktion av alla WiFi-aktiverade mikrokontroller som ESP32 och ESP8266 som gör att dessa enheter kan uppgradera sin firmware eller programvara trådlöst utan någon fysisk åtkomst. Denna funktion kan användas för att omprogrammera enheter som är fixerade på ett tak eller någon annan plats där anslutningskabel är svår. Med OTA kan du skicka en uppdatering till flera mikrokontroller eller enheter som finns i samma nätverk. Till exempel kan den här funktionen användas för att skicka uppdateringar för att lösa buggarna, lägga till några funktioner etc. till flera mikroprocessorer, mobiltelefoner, datorer, digitalboxar etc. OTA-uppdateringarna spelar också en viktig roll i IoT. Den används för fjärranslutning av internetanslutna enheter med nya inställningar, programvara och firmware.
Vi har tidigare lärt oss att programmera ESP8266 NodeMCU med hjälp av OTA. I den här handledningen ska vi använda OTA-programmering med ESP32 med OTA Web Updater i Arduino IDE.
Komponenter krävs
- ESP32
- Arduino IDE
Hur fungerar OTA-programmering?
För att använda OTA-programmeringsfunktionen (Over the Air) måste du först ladda upp en skiss via seriell port. Denna skiss innehåller HTML-koden för att skapa en OTA Web Updater så att du kan ladda upp koden senare med webbläsaren. När koden laddas upp via seriell port skapas en webbserver där du kan välja och ladda upp en ny skiss via en webbläsare.
För att ladda upp den första koden, anslut ESP32 till den bärbara datorn och öppna Arduino IDE, välj korttyp som ESP32 Dev Kit och välj rätt seriell port.
Gå sedan till Arkiv> Exempel> ArduinoOTA> OTAWebUpdater
Ändra Wi-Fi-namn och lösenord i den ursprungliga koden.
const char * ssid = "Ditt WiFi-namn"; const char * password = "Lösenord";
Ladda upp koden till ditt ESP32-kort. Öppna seriell bildskärm efter att ha laddat upp koden. Ändra överföringshastigheten på 115200 på Serial Monitor och tryck på Reset-knappen på ESP32 och den ska skriva ut ESP32 IP-adressen.
Öppna nu standardwebbläsaren och klistra in ESP32 IP-adressen. Det bör öppna webbservern för Over the Air-programmering som visas i bilden nedan:
Standard användarnamn och lösenord är admin.
Ange sedan användarnamnet och lösenordet och klicka på inloggningssidan, en ny flik öppnas. Det är här du kan ladda upp koden.
Här ska vi ladda upp en enkel LED-blinkande kod. Varje kod som du laddar upp över luften ska ha en OTA-kod. Så lägg till blinkdelen i den ursprungliga OTA-koden. Den fullständiga koden ges i slutet av sidan.
void loop (void) {server.handleClient (); fördröjning (1); digitalWrite (ledd, HÖG); fördröjning (600); digitalWrite (led, LOW); fördröjning (600); }
Spara din kod med ett nytt namn och gå sedan till S ketch> Exportera kompilerad binär . Detta skapar en ny .bin- fil i din skissmapp.
Gå nu till OTA-webbsidan och klicka sedan på knappen ' Välj fil' och välj .bin- filen. Klicka sedan på knappen 'Uppdatera' för att ladda upp skissen.
Så här kan ESP32 programmeras med OTA utan seriekommunikation.