Panoramica del processo FUOTA - Wireless AWS IoT

Panoramica del processo FUOTA

Il seguente diagramma mostra come AWS IoT Core per LoRaWAN esegue il processo FUOTA per i tuoi dispositivi finali. Se stai aggiungendo singoli dispositivi alla sessione FUOTA, puoi saltare i passaggi per creare e configurare il tuo gruppo multicast. Puoi aggiungere i tuoi dispositivi direttamente a una sessione FUOTA, poi AWS IoT Core per LoRaWAN avvierà il processo di aggiornamento del firmware.

Immagine che mostra come AWS IoT Core per LoRaWAN esegue aggiornamenti FUOTA per i tuoi dispositivi finali.

Per eseguire i FUOTA per i tuoi dispositivi, prima di tutto crea l'immagine del firmware con firma digitale, poi configura i dispositivi e i gruppi multicast che desideri aggiungere all'attività FUOTA. Dopo aver avviato una sessione FUOTA, i dispositivi finali raccolgono tutti i frammenti, da cui ricostruiscono l'immagine, riportano lo stato a AWS IoT Core per LoRaWAN, e applicano la nuova immagine del firmware.

Di seguito sono illustrati i diversi passaggi del processo FUOTA:

  1. Crea un'immagine firmware o un'immagine delta con una firma digitale

    Affinché AWS IoT Core per LoRaWAN possa eseguire i FUOTA per i tuoi dispositivi LoRaWAN, ti consigliamo di firmare digitalmente l'immagine del firmware o l'immagine delta quando invii gli aggiornamenti del firmware via etere (OTA). I dispositivi che ricevono le immagini possono quindi verificare che questa provenga dalla sorgente giusta.

    L'immagine del firmware non deve avere dimensioni superiori a 1 megabyte. Maggiore è la dimensione del firmware, maggiore sarà il tempo necessario per completare il processo di aggiornamento. Per un trasferimento dati più rapido o se la nuova immagine è più grande di 1 Megabyte, utilizza un'immagine delta, che è parte della nuova immagine e rappresenta il delta tra la nuova immagine del firmware e l'immagine precedente.

    Nota

    AWS IoT Core per LoRaWAN non fornisce lo strumento di generazione della firma digitale e il sistema di gestione delle versioni del firmware. È possibile utilizzare qualsiasi strumento di terze parti per generare la firma digitale per l'immagine del firmware. Si consiglia di utilizzare uno strumento di firma digitale come quello incorporato in ARM Mbed GitHub repository (Repository GitHub ARM Mbed), che include anche strumenti per la generazione dell'immagine delta e per i dispositivi per l'utilizzo di tale immagine.

  2. Identificazione e configurazione dei dispositivi per FUOTA

    Dopo aver identificato i dispositivi per FUOTA, inviare gli aggiornamenti del firmware a dispositivi singoli o multipli.

  3. Pianificazione di una finestra di distribuzione e configurazione della sessione di frammentazione

    Se è stato creato un gruppo multicast, è possibile specificare la finestra di distribuzione di classe B o di classe C, per determinare quando i dispositivi possono ricevere i frammenti da AWS IoT Core per LoRaWAN. I dispositivi potrebbero funzionare in classe A, prima di passare alla modalità di classe B o classe C. È inoltre necessario specificare l'ora di inizio della sessione.

    I dispositivi di classe B o di classe C si riattivano alla finestra di distribuzione specificata e iniziano a ricevere i pacchetti di downlink. I dispositivi che funzionano in modalità classe C possono consumare più energia rispetto ai dispositivi di classe B. Per ulteriori informazioni, consultare Classi di dispositivi.

  4. I dispositivi finali segnalano lo stato a AWS IoT Core per LoRaWAN, e aggiornano l'immagine firmware

    Dopo aver configurato una sessione di frammentazione, i dispositivi finali e AWS IoT Core per LoRaWAN eseguono la procedura seguente per aggiornare il firmware del dispositivo.

    1. Poiché i dispositivi LoRaWAN hanno una bassa velocità di dati, per avviare il processo FUOTA, AWS IoT Core per LoRaWAN imposta una sessione di frammentazione per frammentare l'immagine del firmware. Poi invia questi frammenti ai dispositivi finali.

    2. Dopo che AWS IoT Core per LoRaWAN invia i frammenti di immagine, i dispositivi finali LoRaWAN eseguono le seguenti attività.

      1. Raccolgono i frammenti e, successivamente, ricostruiscono i l'immagine binaria da questi frammenti.

      2. Controllano la firma digitale dell'immagine ricostruita per autenticare l'immagine e verificano che provenga dalla sorgente giusta.

      3. Confrontano la versione del firmware da AWS IoT Core per LoRaWAN con la versione corrente.

      4. Segnalano lo stato delle immagini frammentate trasferite in AWS IoT Core per LoRaWAN, quindi applicano la nuova immagine del firmware.

        Nota

        In alcuni casi, i dispositivi finali riportano lo stato delle immagini frammentate trasferite in AWS IoT Core per LoRaWAN prima di controllare la firma digitale dell'immagine del firmware.

Ora che conosci il processo FUOTA, è possibile creare l'attività FUOTA e aggiungere dispositivi all'attività per aggiornare il firmware. Per ulteriori informazioni, consultare Creazione di attività FUOTA e dotazione dell'immagine del firmware.