Kako ažurirati firmver ESP32 preko -The -air (OTA) pomoću Arduino IDE i web poslužitelja

Isprobajte Naš Instrument Za Uklanjanje Problema





U prošlosti su ažuriranja upravljačkog softvera u ugrađeni sustavi bili kritični zadatak. Ali većina IoT uređaja i ugrađenih uređaja povezana je putem Interneta kako bi programeri daljinski ažurirali firmver. Uređaji koji se mogu povezati s Internetom imaju prednost ažuriranja. Dakle, ovakva vrsta programiranja firmvera u ESP32 naziva se OTA (Over-the Ear), što pomaže u ažuriranju ugrađenih uređaja s minimalnom intervencijom korisnika.  Uz to, Over-the Air nudi puno značajki i isplativa je tehnika za programere kako bi njihovi uređaji ažurirali. Ovaj članak istražuje Firmware Postupak ažuriranja preko Odbora za razvoj ESP32.


Što je OTA programiranje u ESP32/ ESP32 OTA?

ESP32 OTA je mogućnost prijenosa ili ažuriranja novog programa u proces razvojne ploče ESP32 putem Interneta bez povezivanja s računalom. Osim toga, ovaj postupak također može smanjiti potrebno vrijeme za ažuriranje svakog ESP modula u održavanju. Stoga omogućava bežična ažuriranja putem Interneta ili drugih vrsta bežičnih mreža.



Razvojna ploča ESP32 obraća pažnju na ažuriranje firmvera preuzimanjem koristeći ga protokoli poput https, mqtt ili http. Nakon toga, provjerava ga i bljesne u dodijeljenu particiju u sjećanju na ploču ESP32.  Ažuriranja OTA značajna su za ugrađene uređaje ili IoT uređaje, posebno kada je uređaje teško pristupiti ili na udaljenim mjestima.

ESP32 OTA jezgra dijelovi

ESP32 OTA koristi različite ključne komponente za ažuriranja firmvera bez fizičkog povezivanja uređaja. Dakle, temeljni dijelovi ovog OTA pomažu u prijenosu i primanju ažuriranja. Pored toga, asyncelegantota (ili) ESP HTTPS OTA knjižnice i okviri iz espressif skraćuju postupak provedbe.



Data podjela OTA

Ova particija unutar flash memorije ploče ESP32 jednostavno pohranjuje ažurirane informacije OTA -e, poput slike firmware -a i brojača za praćenje u kojem je slot napisan u novije vrijeme.

Komunikacijski mehanizam

OTA ažurira uglavnom ovisi o protokolima bežične komunikacije poput Bluetooth ili WiFi, gdje se Bluetooth koristi za više lokaliziranih i manjih ažuriranja, a WiFi se obično koristi.

  Pcbway

Arhitektura klijenta-poslužitelj

Klijent, poput mobilne aplikacije ili računala, pokreće ažuriranje i šalje firmver na poslužitelj ESP32.

Knjižnice i okviri

Asyncelegantota i ESP HTTPS OTA knjižnice pružaju unaprijed izgrađene funkcionalnosti za rješavanje OTA postupka i skraćivanje razvoja.

Pokretač

Ovaj pokretač pokreće prijelaz na najnoviji firmver nakon uspješnog ažuriranja OTA.

Sigurna OTA

Sigurna ažuriranja OTA uključuju provjeru slike firmvera kako bi se osigurala njegova integritet i autentičnost.

U osnovi, ažuriranja ESP32 OTA uključuju kombinaciju softvera (particije, knjižnice i firmver) i komunikacijske protokole (Wi-Fi ili Bluetooth). Stoga neprimjetno ažurira firmver uređaja bez fizičkog pristupa.

Rad

ESP32 OTA programiranje omogućuje firmware/softver ESP32 da bežično ažurira računalo bez fizičke veze. Dakle, to se može učiniti slanjem nove slike firmvera preko mreže poput Wi-Fi-ja, a nakon toga je upisali u flash memoriju ESP32. Stoga se pokreće razvojni odbor ESP32 i najnoviji firmver.

Provedba ESP32 OTA

Za implementaciju ažuriranja prekomjernog zraka za razvojnu ploču ESP32, mora se prenijeti osnovna skica OTA. Nakon toga, web poslužitelj se koristi za prijenos najnovijeg firmvera. Dakle, cijela instalacija postupka ESP32 OTA uključuje postavljanje Wi-Fi veze, instalaciju knjižnice i nakon toga, sastavljena binarna datoteka prenesena je u ploču ESP32.

Korak po korak postupak implementacije ESP32 OTA:

  • Prvo, trebate instalirati paket ploče ESP32 u Arduino IDE.
  • Nakon toga uključite specifične i druge potrebne knjižnice ESP32.
  • Osnovna skica OTA mora biti prenesena, koja obično sadrži web poslužitelj uglavnom za ažuriranja OTA.
  • Otvorite preglednik i dopustite IP adresu web poslužitelja ESP32.
  • Odaberite .bin datoteku u sučelju web poslužitelja koje želite prenijeti.
  • Kliknite gumb Upload da biste pokrenuli OTA ažuriranje.
  • Sada je ESP32 povezan s vašom Wi-Fi mrežom.
  • Open Aard će se ponovno pokrenuti kroz novo preneseni firmver.
  • Biblioteka Arduinoota mora se koristiti u jezgri ESP32 za pojednostavljenje postupka OTA.
  • Također možete upotrijebiti primjer BasicOta koji je dala knjižnica ili napraviti svoju OTA prijavu.
  • Sada, knjižnica Arduinoota jednostavno vam omogućuje da unesete najnoviju skicu OTA u svoj ESP32.

Koristite web poslužitelj

  • U biblioteci ESP32 Arduino, primjer Otawebupdater nudi web sučelje za prijenos firmvera.
  • Skica je sastavljena za generiranje .bin datoteke, nakon toga može se prenijeti putem web poslužitelja.
  • Ova tehnika omogućuje jednostavna i pristupačnija OTA ažuriranja.
  • Osim toga, provjerite imate li najmanje dvije OTA particije unutar svoje ESP32 ploče.
  • Koristite druge tehnike poput Arduino IoT Cloud -a, uglavnom za ažuriranja OTA.
  • OTA postupak prepisuje postojeći firmver unutar namjenske particije OTA osiguravajući da upravljački firmver ostane stabilan.

ESP32 OTA povezivanje s Arduino

Glavna značajka mikrokontrolera s omogućenim Wifijem (ESP32 & ESP8266 ) je OTA programiranje. Ovi uređaji bežično nadograđuju svoj firmver. Koristeći OTA, ažuriranje se može poslati raznim mikrokontrolerima koji su na sličnoj mreži. Ova se značajka koristi za slanje ažuriranja za rješavanje grešaka uključivanjem nekih značajki u nekoliko mikrokontrolera, set-top kutija, računala, mobitela, itd.

Općenito, OTA ažuriranja igraju ključnu ulogu u Internet stvari Za daljinsko ažuriranje uređaja povezanih s Internetom na daljinu s novim postavkama i softverom. Ovdje ćemo koristiti OTA programiranje s odborom ESP32 u Arduino IDE s OTA Web Updaterom.

Potrebne komponente za ESP32 OTA povezane s odborom Arduino uključuju odbor ESP32 i Arduino IDE.

  ESP32 OTA povezivanje s Arduino
 ESP32 OTA povezivanje s Arduino

OTA kod

OTA kôd za razvojnu ploču ESP32 dan je u nastavku.

#include

#include

const char* host = 'esp32';  SSID = 'XXX'; lozinka = 'xxxx';

Webserver Server (80);

/* Prijava stranica*/

Const char* logindex =

''

''

''

''

' esp32 stranica za prijavu '

'
'

''

'
'

'
'

''

''

' Korisničko ime: '

'
'

''

'
'

'
'

''

' lozinka: '

'
'

'
'

'
'

''

''

' '

''

''

''

'