Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
AWS IoT Di atas udara (OTA) perpustakaan
catatan
Konten di halaman ini mungkin tidak up-to-date. Silakan merujuk ke halaman pustaka RTOS .org Gratis
Pengantar
Pustaka pembaruan AWS IoT Over-the-air (OTA) memungkinkan Anda mengelola notifikasi, unduhan, dan verifikasi pembaruan firmware untuk RTOS perangkat Gratis yang menggunakan HTTP atau MQTT sebagai protokol. Dengan menggunakan pustaka OTA Agen, Anda dapat secara logis memisahkan pembaruan firmware dan aplikasi yang berjalan di perangkat Anda. OTAAgen dapat berbagi koneksi jaringan dengan aplikasi. Dengan berbagi koneksi jaringan, Anda berpotensi menghemat sejumlah besarRAM. Selain itu, pustaka OTA Agen memungkinkan Anda menentukan logika khusus aplikasi untuk menguji, melakukan, atau memutar kembali pembaruan firmware.
Internet of Things (IoT) memperluas konektivitas internet ke perangkat tertanam yang secara tradisional tidak terhubung. Perangkat ini dapat diprogram untuk mengkomunikasikan data yang dapat digunakan melalui internet, dan dapat dipantau dan dikendalikan dari jarak jauh. Dengan kemajuan teknologi, perangkat tertanam tradisional ini mendapatkan kemampuan internet di ruang konsumen, industri, dan perusahaan dengan cepat.
Perangkat IoT biasanya digunakan dalam jumlah besar dan seringkali di tempat-tempat yang sulit atau tidak praktis untuk diakses oleh operator manusia. Bayangkan sebuah skenario di mana kerentanan keamanan yang dapat mengekspos data ditemukan. Dalam skenario seperti itu, penting untuk memperbarui perangkat yang terpengaruh dengan perbaikan keamanan dengan cepat dan andal. Tanpa kemampuan untuk melakukan OTA pembaruan, mungkin juga sulit untuk memperbarui perangkat yang tersebar secara geografis. Memiliki teknisi memperbarui perangkat ini akan mahal, memakan waktu, dan sering kali tidak praktis. Waktu yang diperlukan untuk memperbarui perangkat ini membuat mereka terkena kerentanan keamanan untuk jangka waktu yang lebih lama. Mengingat perangkat ini untuk memperbarui juga akan mahal dan dapat menyebabkan gangguan signifikan bagi konsumen karena downtime.
Pembaruan Over the Air (OTA) memungkinkan untuk memperbarui firmware perangkat tanpa penarikan mahal atau kunjungan teknisi. Metode ini menambahkan manfaat berikut:
-
Keamanan - Kemampuan untuk dengan cepat merespons kerentanan keamanan dan bug perangkat lunak yang ditemukan setelah perangkat digunakan di lapangan.
-
Inovasi - Produk dapat sering diperbarui saat fitur baru dikembangkan, mendorong siklus inovasi. Pembaruan dapat berlaku dengan cepat dengan waktu henti minimum dibandingkan dengan metode pembaruan tradisional.
-
Biaya - OTA pembaruan dapat mengurangi biaya pemeliharaan secara signifikan dibandingkan dengan metode yang secara tradisional digunakan untuk memperbarui perangkat ini.
Menyediakan OTA fungsionalitas membutuhkan pertimbangan desain berikut:
-
Komunikasi Aman - Pembaruan harus menggunakan saluran komunikasi terenkripsi untuk mencegah unduhan dirusak selama transit.
-
Pemulihan - Pembaruan dapat gagal karena hal-hal seperti konektivitas jaringan intermiten atau menerima pembaruan yang tidak valid. Dalam skenario ini, perangkat harus dapat kembali ke keadaan stabil dan menghindari menjadi bata.
-
Verifikasi Penulis - Pembaruan harus diverifikasi agar berasal dari sumber tepercaya, bersama dengan validasi lain seperti memeriksa versi dan kompatibilitas.
Untuk informasi selengkapnya tentang menyiapkan OTA pembaruan dengan GratisRTOS, lihatRTOS Over-the-AirUpdate Gratis.
AWS IoT Di atas udara (OTA) perpustakaan
AWS IoT OTAPustaka memungkinkan Anda untuk mengelola pemberitahuan pembaruan yang baru tersedia, mengunduhnya, dan melakukan verifikasi kriptografi pembaruan firmware. Menggunakan pustaka klien over-the-air (OTA), Anda dapat secara logis memisahkan mekanisme pembaruan firmware dari aplikasi yang berjalan di perangkat Anda. Pustaka klien over-the-air (OTA) dapat berbagi koneksi jaringan dengan aplikasi, menyimpan memori di perangkat yang dibatasi sumber daya. Selain itu, pustaka klien over-the-air (OTA) memungkinkan Anda menentukan logika khusus aplikasi untuk menguji, melakukan, atau memutar kembali pembaruan firmware. Pustaka mendukung protokol aplikasi yang berbeda seperti Message Queuing Telemetry Transport (MQTT) dan Hypertext Transfer Protocol (HTTP) dan menyediakan berbagai opsi konfigurasi yang dapat Anda sesuaikan untuk jenis dan kondisi jaringan Anda.
Pustaka ini APIs menyediakan fungsi-fungsi utama ini:
-
Mendaftar untuk pemberitahuan atau jajak pendapat untuk permintaan pembaruan baru yang tersedia.
-
Menerima, mengurai, dan memvalidasi permintaan pembaruan.
-
Unduh dan verifikasi file sesuai dengan informasi dalam permintaan pembaruan.
-
Jalankan self-test sebelum mengaktifkan pembaruan yang diterima untuk memastikan validitas fungsional pembaruan.
-
Perbarui status perangkat.
Pustaka ini menggunakan AWS layanan untuk mengelola berbagai fungsi terkait cloud seperti mengirim pembaruan firmware, memantau sejumlah besar perangkat di berbagai wilayah, mengurangi radius ledakan penyebaran yang salah, dan memverifikasi keamanan pembaruan. Pustaka ini dapat digunakan dengan pustaka apa pun MQTT atau HTTP pustaka.
Demo untuk pustaka ini menunjukkan over-the-air pembaruan lengkap menggunakan MQTT Perpustakaan dan AWS Layanan inti pada RTOS perangkat Gratis.
Fitur
Berikut adalah antarmuka OTA Agen lengkap:
OTA_Init
-
Menginisialisasi OTA mesin dengan memulai OTA Agen (“OTATugas”) dalam sistem. Hanya satu OTA agen yang mungkin ada.
OTA_Shutdown
-
Sinyal ke OTA Agen untuk mematikan. OTAAgen secara opsional akan berhenti berlangganan dari semua topik pemberitahuan MQTT pekerjaan, menghentikan OTA pekerjaan yang sedang berlangsung, jika ada, dan menghapus semua sumber daya.
OTA_GetState
-
Mendapat status OTA Agen saat ini.
OTA_ActivateNewImage
-
Mengaktifkan gambar firmware mikrokontroler terbaru yang diterima melalui. OTA (Status pekerjaan terperinci sekarang harus self-test.)
OTA_SetImageState
-
Menetapkan status validasi gambar firmware mikrokontroler yang sedang berjalan (pengujian, diterima atau ditolak).
OTA_GetImageState
-
Mendapat status gambar firmware mikrokontroler yang sedang berjalan (pengujian, diterima atau ditolak).
OTA_CheckForUpdate
-
Meminta OTA pembaruan berikutnya yang tersedia dari layanan OTA Pembaruan.
OTA_Suspend
-
Menangguhkan semua operasi OTA Agen.
OTA_Resume
-
Lanjutkan operasi OTA Agen.
OTA_SignalEvent
-
Sinyal suatu peristiwa ke tugas OTA Agen.
OTA_EventProcessingTask
-
OTAloop pemrosesan acara agen.
OTA_GetStatistics
-
Dapatkan statistik paket OTA pesan yang mencakup jumlah paket yang diterima, antri, diproses dan dijatuhkan.
OTA_Err_strerror
-
Kode kesalahan ke konversi string untuk OTA kesalahan.
OTA_JobParse_strerror
-
Mengkonversi kode kesalahan OTA Job Parsing ke string.
OTA_PalStatus_strerror
-
Kode status ke konversi string untuk OTA PAL status.
OTA_OsStatus_strerror
-
Kode status ke konversi string untuk status OTA OS.
APIreferensi
Untuk informasi selengkapnya, lihat AWS IoT Over-the-air Update: Functions
Contoh penggunaan
Aplikasi perangkat OTA berkemampuan khas menggunakan MQTT protokol menggerakkan OTA Agen dengan menggunakan urutan API panggilan berikut.
-
Connect ke MQTT Agen AWS IoT inti. Untuk informasi selengkapnya, lihat perpustakaan MQTT Agen inti.
-
Inisialisasi OTA Agen dengan memanggil
OTA_Init
, termasuk buffer, antarmuka ota yang diperlukan, nama benda, dan panggilan balik aplikasi. Callback mengimplementasikan logika khusus aplikasi yang dijalankan setelah menyelesaikan pekerjaan pembaruan. OTA -
Ketika OTA pembaruan selesai, Free RTOS memanggil callback penyelesaian pekerjaan dengan salah satu peristiwa berikut:
accepted
,rejected
, atauself test
. -
Jika gambar firmware baru telah ditolak (misalnya, karena kesalahan validasi), aplikasi biasanya dapat mengabaikan notifikasi dan menunggu pembaruan berikutnya.
-
Jika pembaruan valid dan telah ditandai sebagai diterima, hubungi
OTA_ActivateNewImage
untuk mengatur ulang perangkat dan mem-boot gambar firmware baru.
Porting
Untuk informasi tentang OTA fungsionalitas porting ke platform Anda, lihat Porting OTA Perpustakaan di Panduan RTOS Porting Gratis.
Penggunaan memori
Ukuran Kode dari AWS IoT OTA (contoh yang dihasilkan dengan GCC untuk ARM Cortex-M) | ||
---|---|---|
File | Dengan Optimasi -O1 | Dengan Optimasi -Os |
ota.c | 8.3K | 7.5K |
ota_interface.c | 0,1K | 0,1K |
ota_base64.c | 0.6K | 0.6K |
ota_mqtt.c | 2.4K | 2.2K |
ota_cbor.c | 0.8K | 0.6K |
ota_http.c | 0.3K | 0.3K |
Total perkiraan | 12.5K | 11.3K |