La programmazione OTA (Over the Air) è una funzionalità di qualsiasi microcontrollore abilitato WiFi come ESP32 ed ESP8266 che consente a questi dispositivi di aggiornare il proprio firmware o software in modalità wireless senza alcun accesso fisico. Questa funzione può essere utilizzata per riprogrammare i dispositivi fissati su un tetto o in qualsiasi altro luogo in cui il cavo di collegamento è difficile. Utilizzando OTA, è possibile inviare un aggiornamento a più microcontrollori o dispositivi che si trovano sulla stessa rete. Ad esempio, questa funzione può essere utilizzata per inviare aggiornamenti per la risoluzione dei bug, l'aggiunta di alcune funzionalità, ecc. A più microcontrollori, cellulari, computer, set-top box, ecc. Anche gli aggiornamenti OTA giocano un ruolo importante nell'IoT. Viene utilizzato per aggiornare in remoto i dispositivi connessi a Internet con nuove impostazioni, software e firmware.
In precedenza abbiamo imparato a programmare ESP8266 NodeMCU utilizzando OTA. In questo tutorial, useremo la programmazione over-the-air (OTA) con ESP32 utilizzando OTA Web Updater in Arduino IDE.
Componenti richiesti
- ESP32
- IDE Arduino
Come funziona la programmazione OTA?
Per utilizzare la funzione di programmazione Over the Air (OTA), innanzitutto è necessario caricare uno schizzo tramite la porta seriale. Questo schizzo contiene il codice HTML per creare un OTA Web Updater in modo da poter caricare il codice in un secondo momento utilizzando il browser. Quando il codice viene caricato tramite porta seriale, crea un server web dove è possibile scegliere e caricare un nuovo schizzo tramite un browser web.
Per caricare il primo codice, collega l'ESP32 al laptop e apri l'IDE di Arduino, seleziona il tipo di scheda come ESP32 Dev Kit e seleziona la porta seriale corretta.
Quindi vai su File> Esempi> ArduinoOTA> OTAWebUpdater
Cambia il nome e la password Wi-Fi nel codice originale.
const char * ssid = "Il tuo nome WiFi"; const char * password = "Password";
Carica il codice sulla tua scheda ESP32. Dopo aver caricato correttamente il codice, apri il monitor seriale. Modificare la velocità di trasmissione di 115200 su Serial Monitor e premere il pulsante Reset su ESP32 e dovrebbe stampare l'indirizzo IP ESP32.
Ora apri il browser predefinito e incolla l'indirizzo IP ESP32. Dovrebbe aprire il server Web per la programmazione Over the Air come mostrato nell'immagine sottostante:
Il nome utente e la password predefiniti sono admin.
Quindi inserire il nome utente e la password e fare clic sulla pagina di accesso, si apre una nuova scheda. Qui è dove puoi caricare il codice.
Qui andremo a caricare un semplice codice lampeggiante a LED. Ogni codice che carichi via etere dovrebbe contenere un codice OTA. Quindi aggiungi la parte lampeggiante nel codice OTA originale. Il codice completo è riportato alla fine della pagina.
void loop (void) {server.handleClient (); ritardo (1); digitalWrite (led, HIGH); ritardo (600); digitalWrite (led, LOW); ritardo (600); }
Salva il tuo codice con un nuovo nome e poi vai su S ketch> Esporta binario compilato . Questo creerà un nuovo file .bin nella cartella degli schizzi.
Ora vai alla pagina web OTA, quindi fai clic sul pulsante " Scegli file" e seleziona il file .bin . Successivamente, fai clic sul pulsante "Aggiorna" per caricare lo schizzo.
In questo modo è possibile programmare ESP32 utilizzando OTA senza utilizzare la comunicazione seriale.