Visão geral do processo FUOTA - AWS IoT Wireless

Visão geral do processo FUOTA

O seguinte diagrama exibe como o AWS IoT Core for LoRaWAN executa o processo FUOTA para os dispositivos finais. Se estiver adicionando dispositivos individuais à sua sessão FUOTA, você pode pular as etapas de criação e configuração de um grupo de multicast. É possível adicionar dispositivos diretamente a uma sessão FUOTA e, em seguida, o AWS IoT Core for LoRaWAN iniciará o processo de atualização de firmware.

Imagem que mostra como o AWS IoT Core for LoRaWAN executa o FUOTA nos dispositivos finais.

Para executar o FUOTA nos dispositivos, primeiramente crie uma imagem de firmware assinada digitalmente e configure os dispositivos e grupos multicast a serem adicionados à tarefa FUOTA. Após iniciar uma sessão FUOTA, os dispositivos finais coletam todos os fragmentos, reconstroem a imagem a partir dos fragmentos, reportam o status ao AWS IoT Core for LoRaWAN e aplicam a nova imagem de firmware.

O seguinte demonstra as diferentes etapas do processo FUOTA:

  1. Crie uma imagem de firmware ou imagem delta com uma assinatura digital

    Para que o AWS IoT Core for LoRaWAN execute o FUOTA nos dispositivos LoRaWAN, é recomendável assinar digitalmente a imagem de firmware ou a imagem delta ao enviar atualizações de firmware sem fios. Os dispositivos que recebem as imagens podem, então, verificar se elas vêm da origem correta.

    Sua imagem de firmware não deve ter tamanho superior a 1 megabyte. Quanto maior o tamanho do firmware, mais tempo levará para que o processo de atualização seja concluído. Para realizar uma transferência de dados mais rápida, ou se a nova imagem for maior que 1 megabyte, use uma imagem delta, que é a parte da nova imagem que é o delta entre a nova imagem de firmware e a imagem anterior.

    nota

    O AWS IoT Core for LoRaWAN não oferece a ferramenta de geração de assinatura digital e o sistema de gerenciamento de versão de firmware. É possível usar qualquer ferramenta de terceiros para gerar a assinatura digital para a sua imagem de firmware. Nós recomendamos usar uma ferramenta de assinatura digital, como a incorporada no repositório ARM Mbed do GitHub, que também inclui ferramentas para gerar a imagem delta e para dispositivos usarem essa imagem.

  2. Identifique e configure os dispositivos para o FUOTA

    Após identificar os dispositivos para o FUOTA, envie atualizações de firmware para dispositivos individuais ou para vários dispositivos.

    • Para enviar atualizações de firmware para vários dispositivos, crie um grupo de multicast e configure o grupo de multicast com dispositivos finais. Para ter mais informações, consulte Crie grupos de multicast para enviar uma carga de downlink para vários dispositivos.

    • Para enviar atualizações de firmware para dispositivos individuais, adicione esses dispositivos à sua sessão FUOTA e, depois, execute a atualização de firmware.

  3. Agende uma janela de distribuição e configure a sessão de fragmentação

    Se você criou um grupo de multicast, é possível especificar a janela de distribuição de classe B ou classe C para determinar quando os dispositivos podem receber os fragmentos do AWS IoT Core for LoRaWAN. Os dispositivos podem estar operando na classe A antes de migrarem para o modo classe B ou classe C. Também é preciso especificar a hora de início da sessão.

    Os dispositivos de classe B ou classe C são ativados na janela de distribuição especificada e passam a receber os pacotes de downlink. Dispositivos que operam no modo classe C podem consumir mais energia do que dispositivos da classe B. Para ter mais informações, consulte Classes de dispositivos.

  4. Os dispositivos finais relatam o status ao AWS IoT Core for LoRaWAN e atualizam a imagem de firmware

    Depois que você configurar uma sessão de fragmentação, os dispositivos finais e o AWS IoT Core for LoRaWAN executam as etapas a seguir para atualizar o firmware dos dispositivos.

    1. Como os dispositivos LoRaWAN têm uma baixa taxa de dados, para iniciar o processo FUOTA, o AWS IoT Core for LoRaWAN configura uma sessão de fragmentação para fragmentar a imagem de firmware. Depois, ele envia esses fragmentos aos dispositivos finais.

    2. Depois que o AWS IoT Core for LoRaWAN enviar os fragmentos da imagem, os dispositivos finais LoRaWAN executam as seguintes tarefas.

      1. Coleta dos fragmentos e reconstrução da imagem binária a partir desses fragmentos.

      2. Verificação da assinatura digital da imagem reconstruída para autenticar a imagem e verificar se ela vem da origem correta.

      3. Comparação da versão de firmware do AWS IoT Core for LoRaWAN com a versão atual.

      4. Comunicação sobre o status das imagens fragmentadas que foram transferidas ao AWS IoT Core for LoRaWAN e, depois, aplicação da nova imagem de firmware.

        nota

        Em alguns casos, os dispositivos finais relatam o status das imagens fragmentadas que foram transferidas para o AWS IoT Core for LoRaWAN antes de verificar a assinatura digital da imagem de firmware.

Agora que você aprendeu sobre o processo FUOTA, você pode criar sua tarefa FUOTA e adicionar dispositivos à tarefa para atualizar o firmware. Para ter mais informações, consulte Criar uma tarefa FUOTA e fornecer a imagem de firmware.