Di masa lalu, firmware memperbarui sistem tertanam adalah tugas yang kritis. Tetapi sebagian besar perangkat IoT dan perangkat tertanam terhubung melalui Internet untuk memperbarui firmware dari jarak jauh oleh pengembang. Perangkat yang dapat terhubung ke internet memiliki manfaat memperbarui diri. Jadi pemrograman firmware semacam ini ESP32 disebut sebagai OTA (over-the-air), yang membantu menjaga perangkat tertanam tetap mutakhir dengan intervensi pengguna minimum. Selain itu, over-the-air menawarkan banyak fitur dan merupakan teknik yang hemat biaya bagi pengembang untuk membuat perangkat mereka diperbarui. Artikel ini mengeksplorasi Firmware OTA Prosedur Perbarui atas Dewan Pengembangan ESP32.
Apa pemrograman OTA di ESP32/ ESP32 OTA?
ESP32 OTA adalah kemampuan untuk mengunggah atau memperbarui program baru ke dalam proses Papan Pengembangan ESP32 melalui Internet tanpa terhubung ke komputer. Selain itu, proses ini juga dapat mengurangi waktu yang diperlukan untuk memperbarui setiap modul ESP dalam pemeliharaan. Dengan demikian, memungkinkan pembaruan nirkabel melalui internet atau jenis jaringan nirkabel lainnya.
Dewan Pengembangan ESP32 memperhatikan pembaruan firmware dengan mengunduhnya menggunakannya protokol seperti https, mqtt, atau http. Setelah itu, itu memverifikasi dan memalsukannya ke partisi yang dialokasikan dalam memori papan ESP32. Pembaruan OTA signifikan untuk perangkat tertanam atau perangkat IoT, terutama ketika perangkat sulit diakses atau di lokasi terpencil.
Bagian Inti Esp32 Ota
ESP32 OTA menggunakan berbagai komponen utama untuk pembaruan firmware tanpa menghubungkan perangkat secara fisik. Dengan demikian, bagian inti dari OTA ini membantu dalam mengirimkan dan menerima pembaruan. Selain itu, Asyncelegantota (OR) ESP HTTPS OTA Libraries & Frameworks dari Espressif mempersingkat prosedur implementasi.
Partisi data OTA
Partisi ini dalam memori flash papan ESP32 hanya menyimpan informasi yang diperbarui dari OTA, seperti Firmware Image & A Counter untuk melacak slot mana yang ditulis baru -baru ini.
Mekanisme komunikasi
Pembaruan OTA terutama tergantung pada protokol komunikasi nirkabel seperti Bluetooth atau WiFi, di mana Bluetooth digunakan untuk pembaruan yang lebih terlokalisasi dan lebih kecil, dan WiFi umumnya digunakan.

Arsitektur klien-server
Klien, seperti aplikasi seluler atau PC, memulai pembaruan dan mengirim firmware ke server ESP32.
Perpustakaan & Kerangka Kerja
Asyncelegantota & Perpustakaan ESP HTTPS OTA menyediakan fungsionalitas yang sudah dibangun untuk menangani prosedur OTA dan mempersingkat pengembangan.
Bootloader
Bootloader ini menangani transisi ke firmware terbaru setelah pembaruan OTA yang berhasil.
Ota yang aman
Pembaruan OTA yang aman melibatkan verifikasi gambar tanda tangan firmware untuk memastikan integritas & keasliannya.
Intinya, pembaruan ESP32 OTA melibatkan kombinasi perangkat lunak (partisi, perpustakaan, dan firmware) dan protokol komunikasi (Wi-Fi atau Bluetooth). Dengan demikian, ini dengan mulus memperbarui firmware perangkat tanpa akses fisik.
Bekerja
Pemrograman ESP32 OTA memungkinkan firmware/perangkat lunak ESP32 untuk memperbarui secara nirkabel ke komputer tanpa koneksi fisik. Jadi ini dapat dilakukan dengan mengirim gambar firmware baru melalui jaringan seperti Wi-Fi, dan setelah itu menulisnya ke dalam memori flash ESP32. Dengan demikian, papan pengembangan ESP32 reboot & firmware terbaru berjalan.
Implementasi ESP32 OTA
Untuk mengimplementasikan pembaruan over-the-air untuk Dewan Pengembangan ESP32, sketsa OTA dasar harus diunggah. Setelah itu, server web digunakan untuk mengunggah firmware terbaru. Jadi seluruh instalasi prosedur OTA ESP32 ini melibatkan pengaturan koneksi Wi-Fi, instalasi perpustakaan, dan setelah itu, file biner yang dikompilasi diunggah ke papan ESP32.
Prosedur langkah demi langkah implementasi ESP32 OTA:
- Pertama, perlu menginstal paket papan ESP32 dalam IDE Arduino.
- Setelah itu, sertakan perpustakaan spesifik & lain yang diperlukan lainnya dari ESP32.
- Sketsa OTA dasar harus diunggah, yang biasanya berisi server web terutama untuk pembaruan OTA.
- Buka browser dan izinkan alamat IP server web ESP32.
- Pilih file .bin di antarmuka server web yang ingin Anda unggah.
- Klik tombol Unggah untuk memulai pembaruan OTA.
- Sekarang ESP32 terhubung ke jaringan Wi-Fi Anda.
- Buka AARD akan reboot melalui firmware yang baru diunggah.
- Perpustakaan Arduinoota harus digunakan dalam inti ESP32 untuk menyederhanakan prosedur OTA.
- Anda juga dapat menggunakan contoh Basicota yang diberikan oleh perpustakaan atau membuat aplikasi OTA Anda sendiri.
- Sekarang, Perpustakaan Arduinoota hanya memungkinkan Anda untuk mengunggah sketsa OTA terbaru ke ESP32 Anda.
Gunakan server web
- Di Perpustakaan ESP32 Arduino, contoh Otawebupdater menyediakan antarmuka web untuk mengunggah firmware.
- Sketsa dikompilasi untuk menghasilkan file .bin, setelah itu dapat diunggah melalui server web.
- Teknik ini memungkinkan pembaruan OTA yang sederhana dan lebih mudah diakses.
- Selain itu, pastikan Anda memiliki minimal dua partisi OTA dalam papan ESP32 Anda.
- Gunakan teknik lain seperti Arduino IoT Cloud, terutama untuk pembaruan OTA.
- Prosedur OTA menimpa firmware yang ada dalam partisi OTA khusus dengan memastikan bahwa firmware yang sedang berjalan tetap stabil.
ESP32 OTA Interfacing dengan Arduino
Fitur utama dari mikrokontroler yang mendukung WiFi (ESP32 & ESP8266 ) adalah pemrograman OTA. Perangkat ini meningkatkan firmware mereka secara nirkabel. Menggunakan OTA, pembaruan dapat dikirim ke berbagai mikrokontroler yang ada di jaringan serupa. Fitur ini digunakan untuk mengirim pembaruan untuk menyelesaikan bug dengan memasukkan beberapa fitur ke beberapa mikrokontroler, set-top box, komputer, ponsel, dll.
Secara umum, pembaruan OTA memainkan peran kunci dalam Internet of Things Untuk memperbarui perangkat yang terhubung ke Internet dari jarak jauh dengan pengaturan dan perangkat lunak baru. Di sini kita akan menggunakan pemrograman OTA dengan papan ESP32 di Arduino IDE dengan OTA Web Updater.
Komponen yang diperlukan untuk ESP32 OTA Interfacing dengan Dewan Arduino termasuk Dewan ESP32 dan Arduino IDE.

Kode OTA
Kode OTA untuk Dewan Pengembangan ESP32 diberikan di bawah ini.
#include
#include
const char* host = 'ESP32'; ssid = 'xxx'; kata sandi = 'xxxx';
Server WebServer (80);
/* halaman login*/
Const char* logindex =
“
''';
/*
* Halaman Indeks Server
*/
const char* serverIndex =
“';
/*
* Fungsi Pengaturan
*/
void setup (void) {
Serial.Begin (115200);
// terhubung ke jaringan wifi
Wifi.begin (SSID, kata sandi);
Serial.println ('');
// tunggu koneksi
while (wifi.status ()! = wl_connected) {
tunda (500);
Serial.print ('.');
}
Serial.println ('');
Serial.print (“Terhubung ke“);
Serial.println (SSID);
Serial.print (“Alamat IP:“);
Serial.println (wifi.localip ());
/*Gunakan MDNS untuk resolusi nama host*/
if (! mdns.begin (host)) {// c2e2f8f35ba56eedbbc296b8125c387d1182e239
Serial.println (“Kesalahan Mengatur MDNS Responder!”);
while (1) {
tunda (1000);
}
}
Serial.println (“MDNS Responder dimulai”);
/ *halaman indeks pengembalian yang disimpan di serverIndex */
server.on ('/', http_get, [] () {
server.sendHeader ('koneksi', 'tutup');
server.send (200, 'Teks/HTML', LoginIndex);
});
server.on ('/serverIndex', http_get, [] () {)
server.sendHeader ('koneksi', 'tutup');
server.send (200, “Teks/HTML”, ServerIndex);
});
/ *menangani file firmware mengunggah */
server.on ('/update', http_post, [] () {
server.sendHeader ('koneksi', 'tutup');
server.send (200, 'teks/polos', (update.haserror ())? 'Gagal': 'ok');
Esp.restart ();
} {
Httpupload & unggah = server.upload ();
if (unggah.status == unggah_file_start) {
Serial.printf (“Perbarui: %s \ n”, unggah.filename.c_str ());
if (! update.begin (update_size_unknown)) {// Mulai dengan ukuran yang tersedia maksimal
Update.printerror (serial);
}
} lain jika (unggah.status == unggah_file_write) {
/* firmware berkedip ke ESP*/
if (update.write (unggah.buf, unggah.currentSize)! = unggah.currentSize) {
Update.printerror (serial);
}
} lain jika (unggah.status == unggah_file_end) {
if (update.end (true)) {// true untuk mengatur ukuran ke kemajuan saat ini
Serial.printf (“Perbarui Sukses: %u \ nrooting… \ n”, unggah.TotalSize);
} kalau tidak {
Update.printerror (serial);
}}}
server.begin ();
}
void loop (void) {
server.handleclient ();
tunda (1);
}
Pemrograman OTA Bekerja
Untuk menggunakan fitur pemrograman OTA, sketsa perlu diunggah melalui port serial. Sketsa ini termasuk kode HTML untuk membuat pembaruan web OTA. Kemudian, Anda dapat dengan mudah mengunggah kode dengan browser. Setelah kode diunggah melalui port serial, server web akan dibuat di mana Anda dapat memilih & mengunggah sketsa baru melalui browser web.
Hubungkan papan ESP32 ke laptop untuk mengunggah kode utama, lalu buka IDE Arduino dan pilih jenis papan sebagai ESP32 Dev Kit & pilih port serial yang tepat.
Ubah nama Wi-Fi & Kata Sandi dalam kode asli.
Kode OTA harus diunggah ke papan ESP32 Anda. Setelah kode berhasil diunggah, buka monitor serial. Setelah itu, laju baud 115200 harus diubah pada monitor serial. Tekan tombol reset di atas modul ESP32, dan harus mencetak alamat IP papan ESP32.
Buka browser default untuk menempelkan alamat IP ESP32. Jadi itu harus membuka halaman server web untuk OTA. Di sini nama pengguna & kata sandi secara default adalah admin. Sekarang, masukkan detail login, klik pada halaman login, dan kemudian tab baru akan terbuka untuk mengunggah kode.
Keuntungan
Keuntungan dari ESP32 OTA termasuk yang berikut.
- Pendekatan terpusat ini memungkinkan pembaruan tunggal untuk menyebar ke berbagai ESP32 di jaringan serupa.
- OTA memungkinkan peningkatan firmware jarak jauh tanpa menggunakan akses fisik ke papan pengembangan untuk membuatnya sempurna untuk penyebaran IoT.
- OTA menghilangkan persyaratan koneksi fisik untuk memperbarui papan ESP32 dengan menyederhanakan prosedur pembaruan, terutama untuk perangkat yang tidak dapat diakses atau jarak jauh.
- Pembaruan dapat dicapai dari jarak jauh, yang mengurangi waktu yang dihabiskan untuk perlindungan dan operasi.
- Satu sumber mengirim pembaruan ke banyak ESP32 pada jaringan yang serupa dan merampingkan prosedur pembaruan untuk penyebaran besar.
- OTA memungkinkan pembaruan simultan ke beberapa perangkat dengan membuatnya sangat efisien untuk proyek skala besar.
- Pembaruan dapat direncanakan dan dieksekusi dalam jam-jam off-peak, yang mengurangi masalah untuk pengoperasian perangkat.
- Pembaruan OTA mencakup tambalan & peningkatan keamanan yang melindungi dari kerentanan.
- Fungsionalitas OTA dapat diintegrasikan ke dalam proyek berbasis ESP32 dengan perpustakaan Arduinoota.
- Pemrograman OTA memungkinkan Anda memperbarui program baru ke ESP32 tanpa koneksi ke komputer.
Kerugian
Itu Kekurangan ESP32 OTA termasuk yang berikut.
- Gambar pabrik dari papan ESP32 tidak mengandung kemampuan OTA. Dengan demikian, pertama, Anda perlu mengunggah firmware ini melalui koneksi serial sebelum Anda menggunakan pembaruan OTA.
- Selain itu, beberapa model ESP32 yang lebih lama memiliki keterbatasan memori, terutama yang memiliki memori flash 1MB.
- Setiap sketsa yang diunggah ke dalam papan ESP32 harus berisi kode yang diperlukan untuk memungkinkan fungsionalitas OTA. Perangkat tanpa kode ini tidak akan lagi tersedia untuk pembaruan OTA melalui server web.
- Banyak papan ESP32 modern memiliki memori yang cukup, tetapi model ESP32 yang lebih kecil atau lebih tua mungkin memenuhi keterbatasan melalui OTA, terutama jika sketsa yang diunggah berada di dekat batas memori yang ada.
- Jika pengguna mengunggah kode tanpa kata sandi, perangkat dapat menjadi tidak terjangkau untuk pembaruan OTA di masa depan, mungkin memerlukan penguncian ulang sketsa OTA yang diperlukan melalui serial.
- Meskipun pengguna dapat menambahkan nama pengguna dan kata rahasia untuk keselamatan, ukuran ini mungkin tidak sepenuhnya melindungi halaman unggahan OTA dari akses yang tidak sah jika seseorang mengidentifikasi URL spesifik.
- Implementasi kode OTA yang tidak tepat dapat menyebabkan masalah potensial, karena dapat menonaktifkan fungsionalitas OTA di masa depan.
Aplikasi
Aplikasi ESP32 OTA termasuk yang berikut.
- Aplikasi ESP32 OTA memungkinkan firmware perangkat untuk memperbarui dari jarak jauh tanpa koneksi fisik ke perangkat. Jadi ini terutama membantu untuk perangkat IoT yang dipasang di lokasi yang tidak dapat diakses, mengurangi biaya downtime & pemeliharaan. OTA memungkinkan pembaruan perangkat lunak, perbaikan bug, dan peningkatan fitur untuk digunakan dengan cepat dan efisien.
- Pembaruan ESP32 OTA sangat penting dalam berbagai aplikasi, terutama dalam sistem tertanam dan penyebaran IoT ..
- Pembaruan ini penting untuk pemeliharaan dan peningkatan sistem otomasi industri tanpa mematikan seluruh proses.
- OTA memungkinkan perangkat Smart Home untuk menerima peningkatan firmware jarak jauh dengan memastikan peningkatan kinerja & fitur terbaik.
- Pembaruan OTA penting untuk memperbarui firmware & sistem pemantauan sensor jarak jauh, dengan memastikan mereka tetap akurat & fungsional.
- Pembaruan OTA menyediakan metode yang cocok untuk menangani dan menyimpan perangkat di aplikasi IoT apa pun, di mana pun akses jarak jauh tidak praktis atau terbatas.
- Pengguna memperbarui kunci pintar, kamera keamanan, dan sistem keamanan untuk memastikan mereka tetap aman dan fungsional.
- Industri menggunakan ESP32 OTA untuk memperbarui perangkat lunak dan sistem mesin dalam proses otomasi.
- Teknisi memperbarui perangkat lunak perangkat di stasiun cuaca, pemantauan lingkungan, dan aplikasi jarak jauh.
- OTA ini memperbarui perangkat lunak dalam peralatan pertanian pintar, sistem irigasi, dll.
- Ini mengelola & memperbarui perangkat rumah pintar dari jarak jauh di otomatisasi rumah seperti kunci, sistem keamanan, lampu pintar, dll.
Kesimpulan:
Dengan demikian, Pembaruan ESP32 OTA menyediakan Metode yang nyaman untuk memperbarui firmware & file lain secara nirkabel pada perangkat ESP32 dengan menghapus koneksi fisik. Jadi metode ini terutama bermanfaat untuk penyebaran jarak jauh & mengurangi pemeliharaan dengan memungkinkan perbaikan bug & peningkatan fitur tanpa koneksi fisik. ESP32 OTA UPDATE memberikan teknik yang berharga untuk mempertahankan & memperbarui perangkat ESP32 dari jarak jauh, menyederhanakan pemeliharaan, dan mempersingkat proses pembaruan. Berikut pertanyaan untuk Anda: Apa itu Dewan ESP32?