Partager via


Mises à jour OTA en aval avec Azure Sphere

De nombreuses solutions Azure Sphere intègrent à la fois un MCU certifié Azure Sphere et d’autres processeurs dans le cadre d’une solution IoT complète. Ces autres processeurs ont besoin de mises à jour régulières du microprogramme. Ce guide explique comment activer les mises à jour OTA en aval à l’aide d’Azure Sphere.

Selon le scénario d’application particulier, il existe plusieurs façons d’y parvenir. Chaque solution a un flux commun :

  1. Déclenchez la mise à jour du microprogramme.
  2. Acquérir la mise à jour du microprogramme.
  3. Déterminez un emplacement de téléchargement intermédiaire.
  4. Validez le microprogramme et mettez à jour le processeur en aval.

Étape 1 : Déclencher la mise à jour du microprogramme

Problème : Comment le processus de mise à jour du microprogramme est-il lancé ?

Options :

  • Chaque version de l’application Azure Sphere est liée à une version de microprogramme en aval :

    • Description : au démarrage de l’application Azure Sphere, la version du microprogramme prise en charge est comparée à la version déployée sur le processeur en aval. Si les versions ne correspondent pas, une mise à jour est nécessaire.
    • Avantages : Contrat de support défini entre l’application Azure Sphere et la version du microprogramme. Tire également parti du processus de mise à jour d’application Azure Sphere existant.
    • Inconvénients : doit mettre à jour l’application Azure Sphere pour déclencher une mise à jour du microprogramme, même s’il n’y a aucune modification de l’application Azure Sphere. En outre, vous devez ajouter la surveillance de la progression des mises à jour.
  • Mise à jour du microprogramme de gestion des appareils Azure IoT Hub :

    • Description : lorsqu’une mise à jour du microprogramme est prête, un opérateur de solution IoT crée une configuration de gestion des appareils avec le microprogramme mis à jour. L’application Azure Sphere reçoit la demande de mise à jour du microprogramme et peut commencer la mise à jour.
    • Avantages : solution de gestion facile à définir, déclencher et surveiller une mise à jour.
    • Inconvénients : Doit utiliser Azure IoT Hub, aucun autre point de terminaison cloud n’est pris en charge.
  • Vérification de microprogramme distincte (solution personnalisée) :

    • Description : Créez un contrôle de microprogramme personnalisé dans l’application Azure Sphere. Vérifiez régulièrement un point de terminaison défini pour une nouvelle version et, si un point de terminaison est détecté, lancez une mise à jour.
    • Avantages : fonctionne avec n’importe quel point de terminaison cloud pour télécharger le microprogramme.
    • Inconvénients : doit ajouter la surveillance du processus de mise à jour. Solution créée personnalisée, sans tirer parti des voies de mise à jour existantes.

Solution recommandée : si vous déclenchez des mises à jour pour les processeurs en aval via les mises à jour d’application Azure Sphere fonctionne pour votre scénario, cette approche est recommandée. Cette solution garantit que les versions du microprogramme Azure Sphere et en aval sont toujours mises en correspondance et qu’elles ne nécessitent pas la création d’un autre système pour déclencher des mises à jour. Sinon, si l’application utilise déjà Azure IoT Hub, IoT Gestion des appareils est la solution recommandée, sinon une solution personnalisée est requise.

Exemples :

  • La solution de référence ExternalMcuUpdate montre comment exiger une version de microprogramme spécifique sur un appareil en aval pour chaque version d’application Azure Sphere.
  • Azure Sphere External MCU OTA implémente une mise à jour de microprogramme pour Azure Sphere utilisant la gestion des appareils Azure IoT Hub.
  • Le tutoriel de mise à jour du microprogramme Azure IoT Hub décrit comment déclencher des mises à jour via des propriétés de jumeau d’appareil Azure IoT Hub.

Étape 2 : Acquérir la mise à jour du microprogramme

Problème : Comment le microprogramme doit-il être téléchargé en fonction des contraintes de mémoire d’Azure Sphere MT3620 ?

Options :

  • Incluez le microprogramme en aval dans le package d’images déployé sur MT3620. Cela est possible si la taille totale du logiciel MT3620, y compris l’image en aval, ne dépasse pas la limite flash documentée.

  • Téléchargez le microprogramme à partir d’un emplacement hébergé, par exemple à l’aide de Stockage Blob Azure. Il peut être nécessaire de télécharger le microprogramme en blocs, car la limite de RAM de MT3620 peut empêcher le téléchargement de l’image entière vers la RAM. Il est important de valider le serveur utilisé pour le téléchargement du microprogramme( par exemple, en utilisant HTTPS) pour vous assurer que seul le microprogramme approuvé est téléchargé et appliqué sur le processeur en aval. Notez que dans ce cas, il est possible qu’un appareil soit en ligne pendant la mise à jour de l’application Azure Sphere, mais qu’il soit alors hors connexion avant que la nouvelle application puisse télécharger le nouveau microprogramme en aval. S’il s’agit d’une possibilité pour votre cas d’usage, il est important de maintenir la compatibilité entre l’application Azure Sphere et les versions antérieures du microprogramme en aval.

Solution recommandée : si l’image du microprogramme correspond à la limite flash du package d’images Azure Sphere et s’il est acceptable de mettre à jour le logiciel MT3620 chaque fois qu’une mise à jour en aval est nécessaire, il est recommandé d’inclure l’image en aval dans le package d’images MT3620. Sinon, vous devez télécharger l’image du microprogramme à partir de votre emplacement hébergé.

Exemples :

  • La solution de référence ExternalMcuUpdate montre comment inclure une image de microprogramme en aval dans le cadre d’un imagepackage Azure Sphere.
  • L’exemple HTTPS Curl Easy montre comment effectuer un téléchargement en bloc à l’aide d’une mémoire tampon RAM de taille fixe.

Étape 3 : Déterminer un emplacement de téléchargement intermédiaire

Problème : ce problème est uniquement pertinent si vous n’utilisez pas d’image de microprogramme incorporée dans le package d’images Azure Sphere, et où le microprogramme téléchargé est plus grand que la RAM disponible sur MT3620.

Options :

  • Flash externe connecté à Azure Sphere.
  • Stockage MCU ou PC en aval.

Il n’existe aucune réponse appropriée ou incorrecte pour l’emplacement où stocker le microprogramme téléchargé. Ce choix dépend de la configuration et du coût de votre matériel. Quelle est la meilleure option pour vous ? Vous pouvez envisager d’attacher de la mémoire flash externe à votre appareil Azure Sphere ou de sélectionner un processeur en aval avec suffisamment de stockage pour recevoir la mise à jour du microprogramme.

Solution recommandée : sélectionnez la meilleure option pour votre configuration.

Exemples :

Étape 4 : Valider le microprogramme et mettre à jour le processeur en aval

Problème : Comment valider et appliquer la mise à jour du microprogramme à votre processeur en aval ?

Options : chaque processeur aura une solution différente. La plupart des fabricants de processeurs ont des exemples qui montrent comment effectuer des mises à jour de microprogramme sur leurs appareils et vous devez suivre les meilleures pratiques pour votre solution spécifique. Le téléchargement et la mise à jour de votre microprogramme doivent effectuer une vérification de l’intégrité pour valider le microprogramme avant de démarrer la mise à jour.

Solution recommandée : diffère pour chaque processeur. Consultez l’exemple de votre fabricant de processeurs.

Exemple : La solution de référence ExternalMcuUpdate montre comment mettre à jour un nRF52 nordique sur une interface UART à partir de MT3620.