

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Téléchargez, compilez, flashez et exécutez la démo FreeRTOS OTA sur le Renesas RX65N
<a name="download-rx65n-ota"></a>

**Important**  <a name="deprecation-message"></a>
Cette intégration de référence est hébergée sur le Amazon-FreeRTOS référentiel qui est obsolète. Nous vous recommandons de [commencer ici](freertos-getting-started-modular.md) lorsque vous créez un nouveau projet. Si vous possédez déjà un projet FreeRTOS basé sur le référentiel désormais Amazon-FreeRTOS obsolète, consultez le. [Amazon-FreeRTOS Guide de migration du référentiel Github](github-repo-migration.md)

Ce chapitre explique comment télécharger, créer, flasher et exécuter les applications de démonstration FreeRTOS OTA sur le Renesas RX65N.

**Topics**
+ [Configurez votre environnement d'exploitation](#download-rx65n-ota-environment)
+ [Configurez votre AWS resources](#download-rx65n-ota-setup)
+ [Importez, configurez le fichier d'en-tête et compilez aws\_demos et boot\_loader](#download-rx65n-ota-import-configure)

## Configurez votre environnement d'exploitation
<a name="download-rx65n-ota-environment"></a>

Les procédures décrites dans cette section utilisent les environnements suivants :
+ **IDE** : e 2 studio 7.8.0, e 2 studio 2020-07
+ **Chaînes d'outils : compilateur** CCRX v3.0.1
+ **Appareils cibles** : RSKRX65N-2MB
+ **Débogueurs** : émulateur E 2, E 2 Lite
+ **Logiciel** : Renesas Flash Programmer, Renesas Secure Flash, Tera Term Programmer.exe

**Pour configurer votre matériel**

1. Connectez l'émulateur E 2 Lite et le port série USB à votre carte RX65N et à votre PC.

1. Connectez la source d'alimentation au RX65N.

## Configurez votre AWS resources
<a name="download-rx65n-ota-setup"></a>

1. Pour exécuter les démos de FreeRTOS, vous devez disposer d' AWS un compte auprès d'un utilisateur IAM autorisé à accéder aux services. AWS IoT Si ce n'est pas déjà fait, suivez les étapes décrites dans[Configuration de votre AWS compte et autorisations](freertos-prereqs.md#freertos-account-and-permissions).

1. Pour configurer les mises à jour OTA, suivez les étapes décrites dans[Conditions préalables aux mises à jour OTA](ota-prereqs.md). En particulier, suivez les étapes décrites dans[Conditions préalables aux mises à jour OTA via MQTT](ota-mqtt-freertos.md).

1. Ouvrez la [AWS IoT console](https://console.aws.amazon.com/iot/home).

1. Dans le volet de navigation de gauche, choisissez **Gérer**, puis choisissez **Objets** pour créer un objet.

   Un objet est une représentation d'un périphérique ou d'une entité logique dans AWS IoT. Il peut s'agir d'un appareil physique ou d'un capteur (par exemple, une ampoule ou un interrupteur sur un mur). Il peut également s'agir d'une entité logique, telle qu'une instance d'une application ou d'une entité physique qui ne se connecte pas AWS IoT, mais qui est associée à des appareils qui le font (par exemple, une voiture équipée de capteurs de moteur ou d'un panneau de commande). AWS IoT fournit un registre d'objets qui vous aide à gérer vos objets.

   1. Choisissez **Create**, puis **Create a single thing**.

   1. Entrez un **nom** pour votre objet, puis choisissez **Next**.

   1. Choisissez **Create certificate** (Créer un certificat).

   1. Téléchargez les trois fichiers créés, puis choisissez **Activer**. 

   1. Choisissez **Attacher une stratégie**.  
![écran de console affichant les fichiers à télécharger](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/download-these-files-rx65n.png)

   1. Sélectionnez la politique que vous avez créée dans[Politique en matière d'appareils](ota-mqtt-freertos.md#ota-mqtt-freertos-device-policy).

      Chaque appareil qui reçoit une mise à jour OTA à l'aide de MQTT doit être enregistré en tant qu'objet AWS IoT et doit être associé à une politique similaire à celle répertoriée. Vous trouverez plus d'informations sur les éléments dans les objets `"Action"` et `"Resource"` dans [Actions de stratégie AWS IoT](https://docs.aws.amazon.com/iot/latest/developerguide/iot-policy-actions.html) et [Ressources d'action AWS IoT Core](https://docs.aws.amazon.com/iot/latest/developerguide/iot-action-resources.html).

**Remarques**
      + Les `iot:Connect` autorisations permettent à votre appareil de se connecter AWS IoT via MQTT.
      + Les autorisations `iot:Publish` et `iot:Subscribe` sur les rubriques des tâches AWS IoT (`.../jobs/*`) permettent au périphérique connecté de recevoir des notifications de travail et des documents de travail, et de publier l'état d'achèvement d'une exécution de travail.
      + Les `iot:Publish` autorisations `iot:Subscribe` et sur le thème des flux AWS IoT OTA (`.../streams/*`) permettent à l'appareil connecté de récupérer les données de mise à jour OTA à partir de AWS IoT. Ces autorisations sont requises pour effectuer des mises à jour du firmware sur MQTT.
      + Les `iot:Receive` autorisations permettent AWS IoT Core de publier des messages sur ces sujets sur l'appareil connecté. Cette autorisation est vérifiée à chaque remise d'un message MQTT. Vous pouvez utiliser cette autorisation pour révoquer l'accès aux clients actuellement abonnés à une rubrique.

1. Pour créer un profil de signature de code et enregistrer un certificat de signature de code sur. AWS

   1. Pour créer les clés et la certification, consultez la section 7.3 « Génération de paires de ECDSA-SHA256 clés avec OpenSSL » [dans la politique de conception de mise à jour du microprogramme du microcontrôleur Renesas](https://www.renesas.com/us/en/document/apn/renesas-mcu-firmware-update-design-policy).

   1. Ouvrez la [AWS IoT console](https://console.aws.amazon.com/iot/home). Dans le volet de navigation de gauche, sélectionnez **Gérer**, puis **Tâches**. Sélectionnez **Créer une tâche**, puis **Créer une tâche de mise à jour OTA**. 

   1. Sous **Sélectionner les appareils à mettre à jour**, choisissez **Sélectionner**, puis choisissez l'élément que vous avez créé précédemment. Sélectionnez **Suivant**. 

   1. Sur la page **Créer une tâche de mise à jour FreeRTOS OTA**, procédez comme suit :

      1. Pour **sélectionner le protocole de transfert d'image du microprogramme**, choisissez **MQTT**. 

      1. Pour **Sélectionner et signer l'image de votre microprogramme**, choisissez **Signer une nouvelle image du microprogramme pour moi**. 

      1. Pour le **profil de signature de code**, choisissez **Create**.

      1. Dans la fenêtre **Créer un profil de signature de code**, entrez un **nom de profil**. Pour la **plate-forme matérielle de l'appareil**, sélectionnez **Windows Simulator**. Pour le **certificat de signature de code**, choisissez **Importer**.

      1. Naviguez pour sélectionner le certificat (`secp256r1.crt`), la clé privée du certificat (`secp256r1.key`) et la chaîne de certificats (`ca.crt`).

      1. Entrez le **nom de chemin du certificat de signature de code sur l'appareil**. Ensuite, choisissez **Créer**.

1. Pour autoriser l'accès à la signature de code pour AWS IoT, suivez les étapes décrites dans[Accorder l'accès à la signature de code pour AWS IoT](code-sign-policy.md). 

Si Tera Term n'est pas installé sur votre PC, vous pouvez le télécharger [https://ttssh2.osdn.jp/index.html.en](https://ttssh2.osdn.jp/index.html.en)et le configurer comme indiqué ici. Assurez-vous de brancher le port USB série entre votre appareil et votre PC.

![Fenêtre de configuration du port série Tera Term](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/tera-team-rx65n.png)


## Importez, configurez le fichier d'en-tête et compilez aws\_demos et boot\_loader
<a name="download-rx65n-ota-import-configure"></a>

Pour commencer, vous sélectionnez la dernière version du package FreeRTOS, qui sera téléchargée GitHub et importée automatiquement dans le projet. De cette façon, vous pouvez vous concentrer sur la configuration de FreeRTOS et sur l'écriture du code de l'application.

1. Lancez le studio e 2.

1. Choisissez **File (Fichier)**, puis **Import (Importer)**.

1. Sélectionnez le **projet GitHub FreeRTOS (avec bibliothèques IoT)** de Renesas.  
![fenêtre d'importation d'e-squared studio](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/import-renesas-project-rx65n.png)

1. Choisissez **Rechercher une autre version... pour** afficher la boîte de dialogue de téléchargement.  
![fenêtre de dialogue de téléchargement d'e-squared studio](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/check-more-version-rx65n.png)

1. Sélectionnez le dernier package.  
![fenêtre de dialogue de téléchargement du module e-squared studio](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/choose-latest-version-rx65n.png)

1. Choisissez **Accepter** pour accepter le contrat de licence de l'utilisateur final.  
![boîte de dialogue EULA e-squared studio](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/eula-rx65n.png)

1. Attendez que le téléchargement soit terminé.  
![barre de progression du téléchargement](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/downloading-rx65n.png)

1. **Sélectionnez les projets **aws\_demos** et **boot\_loader**, puis choisissez Terminer pour les importer.**  
![fenêtre d'importation de projets](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/import-projects-rx65n.png)

1. Pour les deux projets, ouvrez les propriétés du projet. Dans le volet de navigation, choisissez **Tool Chain Editor**.

   1. Choisissez la **chaîne d'outils actuelle**.

   1. Choisissez le **générateur actuel**.  
![fenêtre des propriétés du studio e-squared](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/project-properties-rx65n.png)

1. Dans le panneau de navigation, sélectionnez **Settings** (Paramètres). **Choisissez l'onglet **Chaîne d'outils**, puis choisissez la version de la chaîne d'outils.**  
![Paramètres d'intégration de la chaîne d'outils pour Renesas CCRX version v3.01.00, avec option de modification de la chaîne d'outils.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/project-properties-toolchain-rx65n.png)

   Choisissez l'onglet **Paramètres de l'outil**, développez le **convertisseur**, puis choisissez **Sortie**. Dans la fenêtre principale, assurez-vous que le **fichier hexadécimal de sortie** est sélectionné, puis choisissez le **type de fichier de sortie**.  
![C/C++ Créez une fenêtre de paramètres de configuration affichant les options du compilateur et de l'éditeur de liens telles que le fichier hexadécimal de sortie, le type de fichier de sortie, le répertoire de sortie et les options de division de fichiers.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/project-properties-settings-rx65n.png)  
![Arborescence des paramètres de l'interface avec options pour l'analyse de la pile, l'éditeur de chaîne d'outils, C/C ++ General, le MCU, les références de projet, etc.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/project-properties-settings-2-rx65n.png)

1. Dans le projet Bootloader, ouvrez `projects\renesas\rx65n-rsk\e2studio\boot_loader\src\key\code_signer_public_key.h` et saisissez la clé publique. [Pour plus d'informations sur la création d'une clé publique, consultez [Comment implémenter FreeRTOS OTA à l'aide d'Amazon Web Services sur](https://www.renesas.com/us/en/document/apn/rx-family-how-implement-freertos-ota-using-amazon-web-services-rx65n) le RX65N et la section 7.3 « Génération de paires de ECDSA-SHA256 clés avec OpenSSL » dans la politique de conception de mise à jour du microprogramme des microcontrôleurs de Renesas.](https://www.renesas.com/us/en/document/apn/renesas-mcu-firmware-update-design-policy)  
![Éditeur de code affichant un fichier d'en-tête C avec la définition de CODE_SIGNER_PUBLIC_KEY et une variable de clé publique du signataire de code. PEM-encoded](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/open-bootloader-project-rx65n.png)

   Construisez ensuite le projet à créer`boot_loader.mot`.

1. Ouvrez le `aws_demos` projet.

   1. Ouvrez la [AWS IoT console](https://console.aws.amazon.com/iot/home).

   1. Dans le panneau de navigation de gauche, choisissez **Paramètres**. Notez votre point de terminaison personnalisé dans la zone de texte Terminal de **données de l'appareil**.

   1. Choisissez **Gérer**, puis choisissez **Objets**. Notez le nom de l' AWS IoT objet de votre tableau.

   1. Dans le `aws_demos` projet, ouvrez `demos/include/aws_clientcredential.h` et spécifiez les valeurs suivantes.

      ```
      #define clientcredentialMQTT_BROKER_ENDPOINT[] = "{{Your AWS IoT endpoint}}";
      #define clientcredentialIOT_THING_NAME "{{The AWS IoT thing name of your board}}"
      ```  
![Extrait de code indiquant le nom de l' AWS IoT objet et les paramètres de configuration du point de terminaison du broker.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/client-credential-rx65n.png)

   1. Ouvrez le fichier `tools/certificate_configuration/CertificateConfigurator.html`.

   1. Importez le fichier PEM de certificat et le fichier PEM de clé privée que vous avez téléchargés précédemment.

   1. Choisissez **Generate, enregistrez aws\_clientcredential\_keys.h** et remplacez ce fichier dans le répertoire. `demos/include/`  
![Outil de configuration de certificats avec des champs pour fournir des fichiers PEM de certificat client et de clé privée à partir de la AWS IoT console, et un bouton pour générer et enregistrer le fichier aws_clientcredential_keys.h.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/certificate-config-tool-rx65n.png)

   1. Ouvrez le `vendors/renesas/boards/rx65n-rsk/aws_demos/config_files/ota_demo_config.h` fichier et spécifiez ces valeurs.

      ```
      #define otapalconfigCODE_SIGNING_CERTIFICATE [] = "{{your-certificate-key}}";
      ```

      Où {{your-certificate-key}} se trouve la valeur du fichier`secp256r1.crt`. N'oubliez pas d'ajouter « \\ » après chaque ligne de la certification. [Pour plus d'informations sur la création du `secp256r1.crt` fichier, consultez [Comment implémenter FreeRTOS OTA à l'aide d'Amazon Web Services sur](https://www.renesas.com/us/en/document/apn/rx-family-how-implement-freertos-ota-using-amazon-web-services-rx65n) le RX65N et la section 7.3 « Génération de paires de ECDSA-SHA256 clés avec OpenSSL » dans la politique de conception des mises à jour du microprogramme des microcontrôleurs de Renesas.](https://www.renesas.com/us/en/document/apn/renesas-mcu-firmware-update-design-policy)  
![Fichier de code source montrant le code C définissant une chaîne constante de certificat de signature de PEM-encoded code avec des données de certificat expurgées.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/codesigner-cert-rx65n.png)

1. **Tâche A : Installation de la version initiale du microprogramme**

   1. Ouvrez le `vendors/renesas/boards/board/aws_demos/config_files/aws_demo_config.h` fichier, commentez `#define CONFIG_CORE_MQTT_MUTUAL_AUTH_DEMO_ENABLED` et définissez l'un `CONFIG_OTA_MQTT_UPDATE_DEMO_ENABLED` ou l'autre`CONFIG_OTA_HTTP_UPDATE_DEMO_ENABLED`.

   1. Ouvrez le `demos/include/ aws_application_version.h` fichier et définissez la version initiale du microprogramme sur`0.9.2`.  
![Extrait de code présentant les définitions de version d'une application, y compris les macros pour les numéros de version majeure, mineure et de version de version.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/firmware-version-rx65n.png)

   1. Modifiez les paramètres suivants dans l'**afficheur de sections**.  
![Fenêtre de visualisation des sections affichant les adresses mémoire, les noms de sections tels que SU, SI, les registres et les composants d'interface tels que les tampons réseau, les exceptions et les boutons d'action.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/section-viewer-rx65n.png)

   1. Choisissez **Build** pour créer le `aws_demos.mot` fichier.

1. Créez le fichier `userprog.mot` avec le Renesas Secure Flash Programmer. `userprog.mot`est une combinaison de `aws_demos.mot` et`boot_loader.mot`. Vous pouvez flasher ce fichier sur le RX65N-RSK pour installer le microprogramme initial.

   1. Téléchargez [https://github.com/renesas/Amazon-FreeRTOS-Tools](https://github.com/renesas/Amazon-FreeRTOS-Tools)et ouvrez`Renesas Secure Flash Programmer.exe`.

   1. Choisissez l'onglet **Firme initiale**, puis définissez les paramètres suivants :
      + **Chemin de clé privée** : emplacement de`secp256r1.privatekey`.
      + **Chemin du fichier Boot Loader** : emplacement de `boot_loader.mot` (`projects\renesas\rx65n-rsk\e2studio\boot_loader\HardwareDebug`).
      + **Chemin du fichier** : emplacement du `aws_demos.mot` (`projects\renesas\rx65n-rsk\e2studio\aws_demos\HardwareDebug`).  
![Fenêtre Renesas Secure Flash Programmer avec microcontrôleur, vérification du microprogramme, numéro de séquence, chemin de clé AES et champs de chemin de fichier.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/secure-flash-rx65n.png)

   1. Créez un répertoire nommé `init_firmware` `userprog.mot` Generate et enregistrez-le `init_firmware` dans le répertoire. Vérifiez que la génération a réussi.

1. Flashez le microprogramme initial sur le RX65N-RSK.

   1. Téléchargez la dernière version du programmateur Flash Renesas (interface graphique de programmation) à partir de. [https://www.renesas.com/tw/en/products/software-tools/tools/programmer/renesas-flash-programmer-programming-gui.html](https://www.renesas.com/tw/en/products/software-tools/tools/programmer/renesas-flash-programmer-programming-gui.html) 

   1. Ouvrez le `vendors\renesas\rx_mcu_boards\boards\rx65n-rsk\aws_demos\flash_project\erase_from_bank\ erase.rpj` fichier pour effacer les données de la banque.

   1. Choisissez **Démarrer** pour effacer la banque.  
![Fenêtre de Renesas Flash Programmer affichant les détails du projet du microcontrôleur RX Group, le chemin du fichier et les options de fonctionnement du flash telles que Erase, Program et Verify à l'aide des boutons Démarrer et OK.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/flash-programmer-erasing-rx65n.png)

   1. Pour flasher`userprog.mot`, choisissez **Parcourir...** et naviguez jusqu'au `init_firmware` répertoire, sélectionnez le `userprog.mot` fichier et choisissez **Démarrer**.  
![Fenêtre Renesas Flash Programmer affichant les paramètres d'opération d'effacement, y compris le microcontrôleur RX Group, l'option permettant de parcourir le fichier du programme, les boutons Effacer et Démarrer, et les détails de l'état des blocs sélectionnés à effacer.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/flash-programmer-complete-rx65n.png)

1. La version 0.9.2 (version initiale) du microprogramme a été installée sur votre RX65N-RSK. Le RX65N-RSK conseil d'administration écoute actuellement les mises à jour de l'OTA. Si vous avez ouvert Tera Term sur votre PC, vous verrez quelque chose comme ceci lorsque le microprogramme initial s'exécute.

   ```
   -------------------------------------------------
   RX65N secure boot program
   -------------------------------------------------
   Checking flash ROM status.
   bank 0 status = 0xff [LIFECYCLE_STATE_BLANK]
   bank 1 status = 0xfc [LIFECYCLE_STATE_INSTALLING]
   bank info = 1. (start bank = 0)
   start installing user program.
   copy secure boot (part1) from bank0 to bank1...OK
   copy secure boot (part2) from bank0 to bank1...OK
   update LIFECYCLE_STATE from [LIFECYCLE_STATE_INSTALLING] to [LIFECYCLE_STATE_VALID]
   bank1(temporary area) block0 erase (to update LIFECYCLE_STATE)...OK
   bank1(temporary area) block0 write (to update LIFECYCLE_STATE)...OK
   swap bank...
   -------------------------------------------------
   RX65N secure boot program
   -------------------------------------------------
   Checking flash ROM status.
   bank 0 status = 0xf8 [LIFECYCLE_STATE_VALID]
   bank 1 status = 0xff [LIFECYCLE_STATE_BLANK]
   bank info = 0. (start bank = 1)
   integrity check scheme = sig-sha256-ecdsa
   bank0(execute area) on code flash integrity check...OK
   jump to user program
   0 1 [ETHER_RECEI] Deferred Interrupt Handler Task started
   1 1 [ETHER_RECEI] Network buffers: 3 lowest 3
   2 1 [ETHER_RECEI] Heap: current 234192 lowest 234192
   3 1 [ETHER_RECEI] Queue space: lowest 8
   4 1 [IP-task] InitializeNetwork returns OK
   5 1 [IP-task] xNetworkInterfaceInitialise returns 0
   6 101 [ETHER_RECEI] Heap: current 234592 lowest 233392
   7 2102 [ETHER_RECEI] prvEMACHandlerTask: PHY LS now 1
   8 3001 [IP-task] xNetworkInterfaceInitialise returns 1
   9 3092 [ETHER_RECEI] Network buffers: 2 lowest 2
   10 3092 [ETHER_RECEI] Queue space: lowest 7
   11 3092 [ETHER_RECEI] Heap: current 233320 lowest 233320
   12 3193 [ETHER_RECEI] Heap: current 233816 lowest 233120
   13 3593 [IP-task] vDHCPProcess: offer c0a80a09ip
   14 3597 [ETHER_RECEI] Heap: current 233200 lowest 233000
   15 3597 [IP-task] vDHCPProcess: offer c0a80a09ip
   16 3597 [IP-task] IP Address: 192.168.10.9
   17 3597 [IP-task] Subnet Mask: 255.255.255.0
   18 3597 [IP-task] Gateway Address: 192.168.10.1
   19 3597 [IP-task] DNS Server Address: 192.168.10.1
   20 3600 [Tmr Svc] The network is up and running
   21 3622 [Tmr Svc] Write certificate...
   22 3697 [ETHER_RECEI] Heap: current 232320 lowest 230904
   23 4497 [ETHER_RECEI] Heap: current 226344 lowest 225944
   24 5317 [iot_thread] [INFO ][DEMO][5317] ---------STARTING DEMO---------
   
   25 5317 [iot_thread] [INFO ][INIT][5317] SDK successfully initialized.
   26 5317 [iot_thread] [INFO ][DEMO][5317] Successfully initialized the demo. Network type for the demo: 4
   27 5317 [iot_thread] [INFO ][MQTT][5317] MQTT library successfully initialized.
   28 5317 [iot_thread] [INFO ][DEMO][5317] OTA demo version 0.9.2
   
   29 5317 [iot_thread] [INFO ][DEMO][5317] Connecting to broker...
   
   30 5317 [iot_thread] [INFO ][DEMO][5317] MQTT demo client identifier is rx65n-gr-rose (length 13).
   31 5325 [ETHER_RECEI] Heap: current 206944 lowest 206504
   32 5325 [ETHER_RECEI] Heap: current 206440 lowest 206440
   33 5325 [ETHER_RECEI] Heap: current 206240 lowest 206240
   38 5334 [ETHER_RECEI] Heap: current 190288 lowest 190288
   39 5334 [ETHER_RECEI] Heap: current 190088 lowest 190088
   40 5361 [ETHER_RECEI] Heap: current 158512 lowest 158168
   41 5363 [ETHER_RECEI] Heap: current 158032 lowest 158032
   42 5364 [ETHER_RECEI] Network buffers: 1 lowest 1
   43 5364 [ETHER_RECEI] Heap: current 156856 lowest 156856
   44 5364 [ETHER_RECEI] Heap: current 156656 lowest 156656
   46 5374 [ETHER_RECEI] Heap: current 153016 lowest 152040
   47 5492 [ETHER_RECEI] Heap: current 141464 lowest 139016
   48 5751 [ETHER_RECEI] Heap: current 140160 lowest 138680
   49 5917 [ETHER_RECEI] Heap: current 138280 lowest 138168
   59 7361 [iot_thread] [INFO ][MQTT][7361] Establishing new MQTT connection.
   62 7428 [iot_thread] [INFO ][MQTT][7428] (MQTT connection 81cfc8, CONNECT operation 81d0e8) Wait complete with result SUCCESS.
   63 7428 [iot_thread] [INFO ][MQTT][7428] New MQTT connection 4e8c established.
   64 7430 [iot_thread] [OTA_AgentInit_internal] OTA Task is Ready.
   65 7430 [OTA Agent T] [prvOTAAgentTask] Called handler. Current State [Ready] Event [Start] New state [RequestingJob]
   66 7431 [OTA Agent T] [INFO ][MQTT][7431] (MQTT connection 81cfc8) SUBSCRIBE operation scheduled.
   67 7431 [OTA Agent T] [INFO ][MQTT][7431] (MQTT connection 81cfc8, SUBSCRIBE operation 818c48) Waiting for operation completion.
   68 7436 [ETHER_RECEI] Heap: current 128248 lowest 127992
   69 7480 [OTA Agent T] [INFO ][MQTT][7480] (MQTT connection 81cfc8, SUBSCRIBE operation 818c48) Wait complete with result SUCCESS.
   70 7480 [OTA Agent T] [prvSubscribeToJobNotificationTopics] OK: $aws/things/rx65n-gr-rose/jobs/$next/get/accepted
   71 7481 [OTA Agent T] [INFO ][MQTT][7481] (MQTT connection 81cfc8) SUBSCRIBE operation scheduled.
   72 7481 [OTA Agent T] [INFO ][MQTT][7481] (MQTT connection 81cfc8, SUBSCRIBE operation 818c48) Waiting for operation completion.
   73 7530 [OTA Agent T] [INFO ][MQTT][7530] (MQTT connection 81cfc8, SUBSCRIBE operation 818c48) Wait complete with result SUCCESS.
   74 7530 [OTA Agent T] [prvSubscribeToJobNotificationTopics] OK: $aws/things/rx65n-gr-rose/jobs/notify-next
   75 7530 [OTA Agent T] [prvRequestJob_Mqtt] Request #0
   76 7532 [OTA Agent T] [INFO ][MQTT][7532] (MQTT connection 81cfc8) MQTT PUBLISH operation queued.
   77 7532 [OTA Agent T] [INFO ][MQTT][7532] (MQTT connection 81cfc8, PUBLISH operation 818b80) Waiting for operation completion.
   78 7552 [OTA Agent T] [INFO ][MQTT][7552] (MQTT connection 81cfc8, PUBLISH operation 818b80) Wait complete with result SUCCESS.
   79 7552 [OTA Agent T] [prvOTAAgentTask] Called handler. Current State [RequestingJob] Event [RequestJobDocument] New state [WaitingForJob]
   80 7552 [OTA Agent T] [prvParseJSONbyModel] Extracted parameter [ clientToken: 0:rx65n-gr-rose ]
   81 7552 [OTA Agent T] [prvParseJSONbyModel] parameter not present: execution
   82 7552 [OTA Agent T] [prvParseJSONbyModel] parameter not present: jobId
   83 7552 [OTA Agent T] [prvParseJSONbyModel] parameter not present: jobDocument
   84 7552 [OTA Agent T] [prvParseJSONbyModel] parameter not present: afr_ota
   85 7552 [OTA Agent T] [prvParseJSONbyModel] parameter not present: protocols
   86 7552 [OTA Agent T] [prvParseJSONbyModel] parameter not present: files
   87 7552 [OTA Agent T] [prvParseJSONbyModel] parameter not present: filepath
   99 7651 [ETHER_RECEI] Heap: current 129720 lowest 127304
   100 8430 [iot_thread] [INFO ][DEMO][8430] State: Ready  Received: 1   Queued: 0   Processed: 0   Dropped: 0
   101 9430 [iot_thread] [INFO ][DEMO][9430] State: WaitingForJob  Received: 1   Queued: 0   Processed: 0   Dropped: 0
   102 10430 [iot_thread] [INFO ][DEMO][10430] State: WaitingForJob  Received: 1   Queued: 0   Processed: 0   Dropped: 0
   103 11430 [iot_thread] [INFO ][DEMO][11430] State: WaitingForJob  Received: 1   Queued: 0   Processed: 0   Dropped: 0
   104 12430 [iot_thread] [INFO ][DEMO][12430] State: WaitingForJob  Received: 1   Queued: 0   Processed: 0   Dropped: 0
   105 13430 [iot_thread] [INFO ][DEMO][13430] State: WaitingForJob  Received: 1   Queued: 0   Processed: 0   Dropped: 0
   106 14430 [iot_thread] [INFO ][DEMO][14430] State: WaitingForJob  Received: 1   Queued: 0   Processed: 0   Dropped: 0
   107 15430 [iot_thread] [INFO ][DEMO][15430] State: WaitingForJob  Received: 1   Queued: 0   Processed: 0   Dropped: 0
   ```

1. **Tâche B : mettre à jour la version de votre microprogramme**

   1. Ouvrez le `demos/include/aws_application_version.h` fichier et augmentez la valeur du `APP_VERSION_BUILD` jeton à`0.9.3`.

   1. Regénérez le projet.

1. Créez le `userprog.rsu` fichier avec le Renesas Secure Flash Programmer pour mettre à jour la version de votre firmware.

   1. Ouvrez le fichier `Amazon-FreeRTOS-Tools\Renesas Secure Flash Programmer.exe`.

   1. Choisissez l'onglet **Update Firm** et définissez les paramètres suivants :
      + **Chemin du fichier** : emplacement du `aws_demos.mot` fichier (`projects\renesas\rx65n-rsk\e2studio\aws_demos\HardwareDebug`).

   1. Créez un répertoire nommé `update _firmware`. Générez-le `userprog.rsu` et enregistrez-le `update_firmware` dans le répertoire. Vérifiez que la génération a réussi.  
![Fenêtre Renesas Secure Flash Programmer avec sélection du microcontrôleur, type de vérification du microprogramme, numéro de séquence, champ de clé AES MAC et entrée du chemin du fichier pour générer un microprogramme sécurisé.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/update-firmware-rx65n.png)

1. Téléchargez la mise à jour du microprogramme dans un compartiment Amazon S3`userproj.rsu`, comme décrit dans[Créez un compartiment Amazon S3 pour stocker votre mise à jour](dg-ota-bucket.md).   
![Interface de gestion des compartiments Amazon S3 avec options de dossiers, de téléchargements, de versions et d'autorisations](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/upload-firmware-rx65n.png)

1. Créez une tâche pour mettre à jour le microprogramme sur le RX65N-RSK.

   AWS IoT Jobs est un service qui avertit un ou plusieurs appareils connectés d'un [Job](https://docs.aws.amazon.com/iot/latest/developerguide/iot-jobs.html) en attente. Une tâche peut être utilisée pour gérer un parc d'appareils, mettre à jour le microprogramme et les certificats de sécurité des appareils, ou effectuer des tâches administratives telles que le redémarrage des appareils et l'exécution de diagnostics.

   1. Connectez-vous à la [console AWS IoT](https://console.aws.amazon.com/iotv2/). Dans le volet de navigation, choisissez **Manage**, puis **Jobs**.

   1. Choisissez **Create a job**, puis **Create OTA Update job**. Sélectionnez un élément, puis cliquez sur **Suivant**.

   1. Créez une tâche de mise à jour FreeRTOS OTA comme suit :
      + Choisissez **MQTT**.
      + Sélectionnez le profil de signature de code que vous avez créé dans la section précédente.
      + Sélectionnez l'image du microprogramme que vous avez chargée dans un compartiment Amazon S3.
      + Pour le **chemin d'accès de l'image du microprogramme sur l'appareil**, entrez**test**.
      + Choisissez le rôle IAM que vous avez créé dans la section précédente.

   1. Choisissez **Suivant**.  
![Signalisation de l'image du microprogramme et paramètres de mise à jour OTA avec options permettant de signer le nouveau microprogramme, de sélectionner le microprogramme précédemment signé, d'utiliser un microprogramme signé personnalisé, de spécifier le profil de signature de code, le fichier image du microprogramme, le chemin sur l'appareil et le rôle IAM pour la tâche de mise à jour OTA.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/create-job-next-rx65n.png)

   1. Entrez un identifiant, puis choisissez **Créer**.

1. Rouvrez Tera Term pour vérifier que le microprogramme a été correctement mis à jour vers la version de démonstration OTA 0.9.3.  
![Sortie de ligne de commande indiquant l'initialisation et la connexion d'un thread à un broker.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/update-successful-rx65n.png)

1. Sur la AWS IoT console, vérifiez que le statut de la tâche est **Réussi**.  
![Vue d'ensemble de la tâche de OTA-demo test AFR indiquant qu'une ressource a réussi.](http://docs.aws.amazon.com/fr_fr/freertos/latest/userguide/images/completed-succeeded-rx65n.png)