V minulosti aktualizace firmwaru vestavěné systémy byly kritickým úkolem. Většina zařízení IoT a zařízení IoT je však přes internet připojena k aktualizaci firmwaru na dálku vývojáři. Zařízení, která se mohou připojit k internetu, mají výhodu pro aktualizaci sebe sama. Takže tento druh programování firmwaru ESP32 je označován jako OTA (Out-the-Air), která pomáhá udržovat vložená zařízení aktuální s minimálním zásahem uživatele. Kromě toho nabízí Over-The-Air mnoho funkcí a je to nákladově efektivní technika pro vývojáře, aby se jejich zařízení aktualizovala. Tento článek zkoumá OTA firmware Aktualizovat postup na vývojové desce ESP32.
Co je programování OTA v ESP32/ ESP32 OTA?
ESP32 OTA je schopnost nahrát nebo aktualizovat nový program do procesu vývojové rady ESP32 přes internet bez připojení k počítači. Tento proces může navíc zkrátit požadovaný čas na aktualizaci každého modulu ESP v údržbě. Umožňuje tak bezdrátové aktualizace přes internet nebo jiné typy bezdrátových sítí.
Vývojová deska ESP32 věnuje pozornost aktualizaci firmwaru tím, že ji stahuje pomocí pomocí protokoly jako HTTPS, MQTT nebo HTTP. Poté to ověří a bliká do přiděleného oddílu v paměti desky ESP32. Aktualizace OTA jsou významné pro vestavěná zařízení nebo zařízení IoT, zejména pokud je zařízení obtížné přístup nebo na odlehlých místech.
ESP32 OTA Core Parts
ESP32 OTA používá pro aktualizace firmwaru různé klíčové komponenty bez fyzického připojení zařízení. Hlavní části této OTA tedy pomáhají při přenosu a přijímání aktualizací. Kromě toho asyncelotatota (OR) knihovny a rámce ESP HTTPS OTA z ESPRESIF zkrátí implementační postup.
Oddíl dat OTA
Tento oddíl v rámci paměti Flash desky ESP32 jednoduše ukládá aktualizované informace OTA, jako je obrázek firmwaru a čítač, který sleduje, který slot byl nedávno zapsán.
Komunikační mechanismus
Aktualizace OTA závisí hlavně na bezdrátových komunikačních protokolech jako Bluetooth nebo WiFi, kde se Bluetooth používá pro lokalizovanější a menší aktualizace a běžně se používá WiFi.

Architektura klienta-serveru
Klient, stejně jako mobilní aplikace nebo PC, iniciuje aktualizaci a pošle firmware na server ESP32.
Knihovny a rámce
Knihovny OTA AsynceleGantota a ESP HTTPS poskytují předem vytvořené funkce pro zpracování postupu OTA a zkrácení vývoje.
Bootloader
Tento bootloader zpracovává přechod na nejnovější firmware po úspěšné aktualizaci OTA.
Bezpečný OTA
Bezpečné aktualizace OTA zahrnují ověření obrázku podpisu firmwaru, aby bylo zajištěno jeho integritu a autentičnost.
Aktualizace ESP32 OTA v podstatě zahrnují kombinaci softwaru (oddíly, knihovny a firmware) a komunikačních protokolů (Wi-Fi nebo Bluetooth). Bezproblémově aktualizuje firmware zařízení bez fyzického přístupu.
Pracovní
Programování ESP32 OTA umožňuje firmwaru/softwaru ESP32 bezdrátově aktualizovat na počítač bez fyzického připojení. Toho lze provést odesláním nového obrázku firmwaru přes síť, jako je Wi-Fi, a poté jej zapíše do flash paměti ESP32. Spustí se tedy restartování vývojové desky ESP32 a nejnovější firmware.
Implementace ESP32 OTA
Chcete-li implementovat bezprostřední aktualizace pro vývojovou desku ESP32, musí být nahrána základní náčrt OTA. Poté se webový server používá k nahrávání nejnovějšího firmwaru. Celá tato instalace postupu ESP32 OTA tedy zahrnuje nastavení připojení Wi-Fi, instalaci knihovny a poté je do desky ESP32 nahrán kompilovaný binární soubor.
Postupný postup implementace ESP32 OTA:
- Nejprve je třeba nainstalovat balíček desky ESP32 do Arduino IDE.
- Poté zahrňte konkrétní a další nezbytné knihovny ESP32.
- Základní náčrt OTA musí být nahrán, který obvykle obsahuje webový server hlavně pro aktualizace OTA.
- Otevřete prohlížeč a povolte IP adresu webového serveru ESP32.
- Vyberte soubor .bin v rozhraní webového serveru, který chcete nahrát.
- Kliknutím na tlačítko Uploadu spustit aktualizaci OTA.
- Nyní je ESP32 připojen k síti Wi-Fi.
- Otevřete Aard restartujte nově nahraným firmwarem.
- Knihovna Arduinoota musí být použita v jádru ESP32 k zjednodušení postupu OTA.
- Příklad BasicOta můžete také použít knihovnou nebo vytvořit vlastní aplikaci OTA.
- Nyní knihovna Arduinoota jednoduše umožňuje nahrát nejnovější náčrt OTA do vašeho ESP32.
Použijte webový server
- V knihovně Arduino ESP32 poskytuje příklad Otawebupdater webové rozhraní pro nahrávání firmwaru.
- Náčrt je kompilován tak, aby generoval soubor .bin, poté může být nahrán přes webový server.
- Tato technika umožňuje jednoduché a přístupnější aktualizace OTA.
- Kromě toho se ujistěte, že máte v desce ESP32 minimálně dva oddíly OTA.
- Používejte další techniky, jako je Cloud Arduino IoT, zejména pro aktualizace OTA.
- Postup OTA přepisuje stávající firmware v rámci vyhrazeného oddílu OTA tím, že zajišťuje, že běžící firmware zůstane stabilní.
ESP32 OTA propojení s Arduinem
Hlavní rys mikrokontrolérů s podporou WiF (ESP32 & ESP8266 ) je programování OTA. Tato zařízení upgradují svůj firmware bezdrátově. Pomocí OTA lze aktualizaci odeslat do různých mikrokontrolérů, které jsou v podobné síti. Tato funkce se používá k odesílání aktualizací pro řešení chyb zahrnutím některých funkcí do několika mikrokontrolérů, set-top boxů, počítačů, mobilních telefonů atd.
Obecně aktualizace OTA hrají klíčovou roli v Internet věcí Aktualizovat zařízení připojená k internetu vzdáleně pomocí nového nastavení a softwaru. Zde budeme používat programování OTA s deskou ESP32 v Arduino IDE s OTA Web Updater.
Mezi požadované komponenty pro propojení ESP32 OTA s deskou Arduino patří deska ESP32 a Arduino IDE.

OTA kód
Níže je uvedena kód OTA pro vývojovou desku ESP32.
#include
#include
const char* host = „esp32“; ssid = „xxx“; heslo = „xxxx“;
WebServer Server (80);
/* Přihlašovací stránka*/
Const char* logindex =
„
“„“;
/*
* Stránka indexu serveru
*/
const char* serverIndex =
“
„
„
„“
'
„”;
/*
* Funkce nastavení
*/
nastavení void (void) {
Serial.begin (115200);
// Připojte se k síti WiFi
Wifi.begin (SSID, heslo);
Serial.println („“);
// počkejte na připojení
while (wifi.status ()! = WL_CONNECTED) {
zpoždění (500);
Serial.print („.“);
}
Serial.println („“);
Serial.print („připojeno k“);
Serial.println (SSID);
Serial.print („IP adresa:“);
Serial.println (wifi.localip ());
/*Použijte MDNS pro rozlišení názvu hostitele*/
if (! Mdns.begin (host)) {// c2e2f8f35ba56eedbbc296b8125c387d1182e239
Serial.println („Nastavení chyb MDNS Responder!“);
zatímco (1) {
zpoždění (1000);
}
}
Serial.println („MDNS Responder spuštěn“);
/ *Stránka Indexu návratu, která je uložena v ServerIndex */
server.on („/“, http_get, [] () {
Server.Sendheader („Connection“, „Close“);
server.send (200, „text/html“, loginIndex);
});
server.on („/serverIndex“, http_get, [] () {
Server.Sendheader („Connection“, „Close“);
Server.send (200, „Text/HTML“, ServerIndex);
});
/ *Manipulace s nahráváním souboru firmwaru */
server.on („/aktualizace“, http_post, [] () {
Server.Sendheader („Connection“, „Close“);
Server.send (200, „Text/Plain“, (Update.Haserror ())? „FAIL“: „OK“);
Esp.restart ();
} {
HttpUpload & upload = server.upload ();
if (upload.status == upload_file_start) {
Serial.printf („Aktualizace: %s \ n“, upload.fileName.c_str ());
if (! Update.begin (update_size_unknown)) {// Začněte s max dostupnou velikostí
UPDATE.printerror (serial);
}
} else if (upload.status == upload_file_write) {
/* blikající firmware na esp*/
if (update.write (upload.buf, upload.currentSize)! = upload.currentize) {
UPDATE.printerror (serial);
}
} else if (upload.status == upload_file_end) {
if (update.end (true)) {// true nastavit velikost na aktuální pokrok
Serial.printf („Aktualizovat úspěch: %u \ nrebooting… \ n“, upload.totalsalize);
} else {
UPDATE.printerror (serial);
}}}
server.begin ();
}
void loop (void) {
Server.HandLeclient ();
zpoždění (1);
}
Programování OTA funguje
Chcete -li použít funkci programování OTA, je třeba přes sériový port nahrán skica. Tato skica obsahuje kód HTML pro vytvoření webového aktualizace OTA. Později můžete kód snadno nahrát pomocí prohlížeče. Jakmile je kód nahrán přes sériový port, bude vytvořen webový server, kde si můžete vybrat a nahrát nový náčrt prostřednictvím webového prohlížeče.
Připojte desku ESP32 k notebooku pro nahrát primární kód, poté otevřete Arduino IDE a vyberte typ desky jako ESP32 Dev Kit a vyberte správný sériový port.
Upravte název Wi-Fi a heslo v původním kódu.
Kód OTA musí být nahrán do vaší desky ESP32. Jakmile je kód úspěšně nahrán, otevřete sériový monitor. Poté musí být na sériovém monitoru změněna míra baudů 115200. Stiskněte tlačítko Reset nad modulem ESP32 a musí vytisknout IP adresu desky ESP32.
Otevřete výchozí prohlížeč a vložte IP adresu ESP32. Musí tedy otevřít stránku webového serveru pro OTA. Ve výchozím nastavení jsou uživatelské jméno a heslo Admin. Nyní zadejte přihlašovací údaje, klikněte na přihlašovací stránku a poté se otevře nová karta pro nahrání kódu.
Výhody
Výhody ESP32 OTA zahrnují následující.
- Tento centralizovaný přístup umožňuje, aby se jediná aktualizace rozšířila do různých ESP32 v podobné síti.
- OTA umožňuje upgrady vzdáleného firmwaru bez použití fyzického přístupu k vývojové desce, aby byl ideální pro nasazení IoT.
- OTA odstraní požadavek na fyzické připojení k aktualizaci desky ESP32 zjednodušením postupu aktualizace, zejména pro nepřístupná nebo vzdálená zařízení.
- Aktualizace lze dosáhnout vzdáleně, což zkracuje čas strávený na ochraně a provozu.
- Jeden zdroj odesílá aktualizace na řadu ESP32 v podobné síti a zefektivňuje postup aktualizace pro obrovská nasazení.
- OTA umožňuje současné aktualizace několika zařízení tím, že je velmi efektivní pro rozsáhlé projekty.
- Aktualizace lze naplánovat a provádět v době mimo špičku, což snižuje potíže s provozem zařízení.
- Aktualizace OTA zahrnují bezpečnostní opravy a vylepšení, která chrání před zranitelností.
- Funkce OTA lze integrovat do projektů založených na ESP32 s knihovnami Arduinoota.
- Programování OTA umožňuje aktualizovat nový program do ESP32 bez jakéhokoli připojení k počítači.
Nevýhody
The Nevýhody ESP32 OTA zahrnout následující.
- Tovární obraz desky ESP32 neobsahuje schopnost OTA. Nejprve tedy musíte tento firmware nahrát prostřednictvím sériového připojení před použitím aktualizací OTA.
- Kromě toho některé starší modely ESP32 mají omezení paměti, zejména ty, které mají 1 MB flash paměti.
- Každá nahraná skica do desky ESP32 musí obsahovat požadovaný kód, aby umožnil funkčnost OTA. Zařízení bez tohoto kódu již nebude k dispozici pro aktualizace OTA prostřednictvím webového serveru.
- Mnoho moderních desek ESP32 má dostatek paměti, ale menší nebo starší modely ESP32 mohou splňovat omezení prostřednictvím OTA, zejména pokud se nahraná skica blíží k existujícímu limitu paměti.
- Pokud uživatelé nahrávají kód bez hesla, může být zařízení pro budoucí aktualizace OTA nedosažitelné, což může vyžadovat opětovné načtení nezbytného náčrtu OTA prostřednictvím seriálu.
- Zatímco uživatelé mohou přidat uživatelské jméno a tajné slovo pro bezpečnost, toto opatření nemusí plně chránit stránku OTA nahrávání před neoprávněným přístupem, pokud někdo identifikuje konkrétní adresu URL.
- Nesprávné implementace kódu OTA může vést k potenciálním problémům, protože může deaktivovat budoucí funkčnost OTA.
Aplikace
Aplikace ESP32 OTA zahrnují následující.
- Aplikace ESP32 OTA umožňují firmwaru zařízení vzdáleně aktualizovat bez fyzického připojení k zařízení. To je tedy užitečné hlavně pro zařízení IoT nainstalovaná v nepřístupných místech, což snižuje náklady na údržbu a údržbu. OTA umožňuje rychle a efektivně nasazovat aktualizace softwaru, opravy chyb a vylepšení funkcí.
- Aktualizace ESP32 OTA jsou nezbytné v různých aplikacích, zejména v zabudovaných systémech a nasazení IoT ..
- Tyto aktualizace jsou významné pro údržbu a upgrade průmyslových automatizačních systémů bez uzavření celého procesu.
- OTA umožňuje inteligentním domácím zařízením dostávat vzdálené aktualizace firmwaru zajištěním nejlepšího vylepšení výkonu a funkcí.
- Aktualizace OTA jsou významné pro aktualizaci systémů firmwaru a monitorování dálkových senzorů tím, že zajistí, že zůstanou přesné a funkční.
- Aktualizace OTA poskytuje vhodnou metodu pro zpracování a udržování zařízení v jakékoli aplikaci IoT, kdekoli je vzdálený přístup nepraktický nebo omezený.
- Uživatelé aktualizují inteligentní zámky, bezpečnostní kamery a bezpečnostní systémy, aby zajistili, že zůstanou bezpečné a funkční.
- Odvětví zaměstnává ESP32 OTA k aktualizaci softwaru a systémů strojů v automatizačních procesech.
- Technici aktualizují software zařízení na povětrnostních stanicích, monitorování životního prostředí a vzdálených aplikacích.
- Tento OTA aktualizuje software v inteligentních zemědělských zařízeních, zavlažovacích systémech atd.
- Spravuje a aktualizuje inteligentní domácí zařízení na dálku v domácí automatizaci, jako jsou zámky, bezpečnostní systémy, inteligentní světla atd.
Závěr:
Tedy, Aktualizace ESP32 OTA poskytují Vhodná metoda pro aktualizaci firmwaru a jiných souborů bezdrátově na zařízeních ESP32 odstraněním fyzických připojení. Tato metoda je tedy užitečná hlavně pro vzdálené nasazení a snižuje údržbu tím, že umožňuje opravy chyb a vylepšení funkcí bez jakéhokoli fyzického připojení. Aktualizace ESP32 OTA poskytuje cennou techniku pro údržbu a aktualizaci zařízení ESP32 vzdáleně, zjednodušení údržby a zkrácení procesu aktualizace. Zde je pro vás otázka: Co je deska ESP32?