Prasyarat untuk pembaruan OTA menggunakan MQTT - Gratis RTOS

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Prasyarat untuk pembaruan OTA menggunakan MQTT

Bagian ini menjelaskan persyaratan umum untuk menggunakan MQTT untuk melakukan over-the-air (pembaruan OTA).

Persyaratan minimum

  • Firmware perangkat harus menyertakan pustaka FreeRTOS yang diperlukan (Agen CoreMQTT, pembaruan OTA, dan dependensinya).

  • FreeRTOS versi 1.4.0 atau yang lebih baru diperlukan. Namun, kami menyarankan Anda menggunakan versi terbaru bila memungkinkan.

Konfigurasi

Dimulai dengan versi 201912.00, FreeRTOS OTA dapat menggunakan protokol HTTP atau MQTT untuk mentransfer gambar pembaruan firmware dari perangkat. AWS IoT Jika Anda menentukan kedua protokol saat membuat pembaruan OTA di FreeRTOS, setiap perangkat akan menentukan protokol yang digunakan untuk mentransfer gambar. Lihat Prasyarat untuk pembaruan OTA menggunakan HTTP untuk informasi selengkapnya.

Secara default, konfigurasi protokol OTA ota_config.hadalah dengan menggunakan protokol MQTT.

Konfigurasi khusus perangkat

Tidak ada.

Penggunaan memori

Ketika MQTT digunakan untuk transfer data, tidak diperlukan memori tambahan untuk koneksi MQTT karena digunakan bersama antara kontrol dan operasi data.

Kebijakan perangkat

Setiap perangkat yang menerima pembaruan OTA menggunakan MQTT harus terdaftar sebagai sesuatu AWS IoT dan hal tersebut harus memiliki kebijakan terlampir seperti yang tercantum di sini. Anda dapat menemukan informasi lebih lanjut tentang item di "Action" dan "Resource" objek di Tindakan Kebijakan AWS IoT Inti dan Sumber Daya Tindakan AWS IoT Inti.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iot:Connect", "Resource": "arn:partition:iot:region:account:client/${iot:Connection.Thing.ThingName}" }, { "Effect": "Allow", "Action": "iot:Subscribe", "Resource": [ "arn:partition:iot:region:account:topicfilter/$aws/things/${iot:Connection.Thing.ThingName}/streams/*", "arn:partition:iot:region:account:topicfilter/$aws/things/${iot:Connection.Thing.ThingName}/jobs/*" ] }, { "Effect": "Allow", "Action": [ "iot:Publish", "iot:Receive" ], "Resource": [ "arn:partition:iot:region:account:topic/$aws/things/${iot:Connection.Thing.ThingName}/streams/*", "arn:partition:iot:region:account:topic/$aws/things/${iot:Connection.Thing.ThingName}/jobs/*" ] } ] }
Catatan
  • iot:ConnectIzin memungkinkan perangkat Anda terhubung ke AWS IoT melalui MQTT.

  • iot:SubscribeDan iot:Publish izin pada topik AWS IoT pekerjaan (.../jobs/*) memungkinkan perangkat yang terhubung untuk menerima pemberitahuan pekerjaan dan dokumen pekerjaan, dan untuk mempublikasikan status penyelesaian eksekusi pekerjaan.

  • iot:SubscribeDan iot:Publish izin pada topik aliran AWS IoT OTA (.../streams/*) memungkinkan perangkat yang terhubung untuk mengambil data pembaruan OTA dari. AWS IoT Izin ini diperlukan untuk melakukan pembaruan firmware melalui MQTT.

  • iot:ReceiveIzin memungkinkan AWS IoT Core untuk mempublikasikan pesan pada topik tersebut ke perangkat yang terhubung. Izin ini diperiksa pada setiap pengiriman pesan MQTT. Anda dapat menggunakan izin ini untuk mencabut akses ke klien yang saat ini berlangganan topik.