

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.

# Guide de migration du référentiel Github d'Amazon-FreeRTOS
<a name="github-repo-migration"></a>

 Si vous avez un projet FreeRTOS existant basé sur le référentiel amazon-freertos désormais obsolète, procédez comme suit : 

1.  Restez à jour avec les derniers correctifs de sécurité accessibles au public. Consultez la page des bibliothèques [FreeRTOS LTS](https://www.freertos.org/lts-libraries.html) pour les mises à jour, ou abonnez-vous au dépôt GitHub FreeRTOS-LTS pour recevoir [les](https://github.com/FreeRTOS/FreeRTOS-LTS) derniers correctifs LTS contenant des corrections de bogues critiques et de sécurité. Vous pouvez télécharger ou cloner les derniers correctifs FreeRTOS LTS requis directement à partir des référentiels individuels. GitHub 

1.  Envisagez de refactoriser l'implémentation de l'interface de transport réseau afin d'optimiser votre plate-forme matérielle. Les éléments abstraits APIs tels que [les sockets sécurisés](https://docs.aws.amazon.com/freertos/latest/userguide/secure-sockets.html) et le [Wifi](https://docs.aws.amazon.com/freertos/latest/userguide/freertos-wifi.html) ne APIs sont pas requis par la dernière bibliothèque [CoreMQTT](https://www.freertos.org/mqtt/index.html). Voir [Interface de transport](https://www.freertos.org/network-interface.html) pour plus de détails. 

## Annexe
<a name="appendix"></a>

Le tableau suivant fournit des recommandations pour tous les projets de démonstration, les bibliothèques existantes et les résumés du APIs référentiel Amazon-FreeRTOS.


**Bibliothèques et démos migrées**  

| Nom | Type | Recommandations | 
| --- | --- | --- | 
| **Noyau HTTP** | démos et bibliothèque | [Clonez ou téléchargez la bibliothèque CoreHTTP directement depuis le dépôt [CoreHTTP](https://github.com/FreeRTOS/coreHTTP) (sous-module si vous utilisez git) dans l'organisation FreeRTOS Github.](https://github.com/FreeRTOS) Les démos CoreHTTP se trouvent dans la distribution [FreeRTOS principale](https://github.com/FreeRTOS/FreeRTOS/tree/main/FreeRTOS-Plus/Demo/coreHTTP_Windows_Simulator). Pour plus de détails, consultez la [page CoreHTTP](https://www.freertos.org/http/index.html).  | 
| Noyau MQTT | démos et bibliothèque | [Clonez ou téléchargez la bibliothèque CoreMQTT directement depuis le dépôt [CoreMQTT](https://github.com/FreeRTOS/coreMQTT) (sous-module si vous utilisez git) dans l'organisation FreeRTOS Github.](https://github.com/FreeRTOS) [Les démos de CoreMQTT se trouvent dans la distribution principale de FreeRTOS.](https://github.com/FreeRTOS/FreeRTOS/tree/main/FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator) Pour plus de détails, consultez la page [CoreMQTT](https://www.freertos.org/mqtt/index.html).  | 
| Agent MQTT principal | démos et bibliothèque  | [Clonez ou téléchargez la bibliothèque CoreMQTT-Agent directement depuis le dépôt [CoreMQTT-Agent (sous-module si vous utilisez git](https://github.com/FreeRTOS/coreMQTT-Agent)) dans l'organisation FreeRTOS Github.](https://github.com/FreeRTOS) [Les démos CoreMQTT-Agent se trouvent dans le référentiel CoreMQTT-Agent-Demos.](https://github.com/FreeRTOS/coreMQTT-Agent-Demos) Pour plus de détails, consultez la page [CoreMQTT-Agent](https://www.freertos.org/mqtt-agent/index.html).  | 
| device\$1defender\$1pour\$1aws | démos et bibliothèque  | La bibliothèque AWS IoT Device Defender se trouve dans son référentiel au [AWS GitHub sein de l'organisation](https://github.com/AWS). Clonez-le ou téléchargez-le (sous-module si vous utilisez git) directement depuis le dépôt [AWS IoT Device Defender](https://github.com/aws/Device-Defender-for-AWS-IoT-embedded-sdk). Les démos de AWS IoT Device Defender se trouvent dans la distribution [principale de FreeRTOS](https://github.com/FreeRTOS/FreeRTOS/tree/main/FreeRTOS-Plus/Demo/AWS/Device_Defender_Windows_Simulator/Device_Defender_Demo). Pour plus de détails, consultez la [page AWS IoT Device Defender](https://www.freertos.org/iot-device-defender/index.html).  | 
| device\$1shadow\$1for\$1aws | démos et bibliothèque  | La bibliothèque AWS IoT Device Shadow se trouve dans son référentiel au [AWS GitHub sein de l'organisation](https://github.com/AWS). Clonez-le ou téléchargez-le (sous-module si vous utilisez git) directement depuis le dépôt [AWS IoT Device (Shadow](https://github.com/aws/Device-Shadow-for-AWS-IoT-embedded-sdk)). Les démos de AWS IoT Device Shadow se trouvent dans la distribution [principale de FreeRTOS](https://github.com/FreeRTOS/FreeRTOS/tree/main/FreeRTOS-Plus/Demo/AWS/Device_Shadow_Windows_Simulator). Pour plus de détails, consultez la [page AWS IoT Device Shadow](https://www.freertos.org/iot-device-shadow/index.html).  | 
| jobs\$1for\$1aws | démos et bibliothèque  | La bibliothèque AWS IoT d'emplois se trouve dans son référentiel au sein de l'[AWS GitHub organisation](https://github.com/AWS). Clonez-le ou téléchargez-le (sous-module si vous utilisez git) directement depuis le dépôt [AWS IoT Jobs](https://github.com/aws/Jobs-for-AWS-IoT-embedded-sdk). Les démos de AWS IoT Jobs se trouvent dans la distribution [principale de FreeRTOS](https://github.com/FreeRTOS/FreeRTOS/tree/main/FreeRTOS-Plus/Demo/AWS/Jobs_Windows_Simulator/Jobs_Demo). Pour plus de détails, consultez la [page AWS IoT Offres d'emploi](https://www.freertos.org/iot-jobs/index.html).  | 
| OTA | démos et bibliothèque  | La bibliothèque de mises à jour AWS IoT Over-The-Air (OTA) se trouve dans son référentiel au [AWS GitHub sein de l'organisation](https://github.com/AWS). Clonez-le ou téléchargez-le (sous-module si vous utilisez git) directement depuis le dépôt [AWS IoT OTA](https://github.com/aws/ota-for-aws-iot-embedded-sdk). Les démos AWS IoT OTA se trouvent dans la distribution [principale de FreeRTOS](https://github.com/FreeRTOS/FreeRTOS/tree/main/FreeRTOS-Plus/Demo/AWS/Ota_Windows_Simulator). Pour plus de détails, consultez la [page AWS IoT OTA](https://www.freertos.org/ota/index.html).  | 
| CLI et FreeRTOS\$1Plus\$1CLI  | démos et bibliothèque  | Un exemple de CLI est en cours d'exécution sur WinSim. Reportez-vous à la page de l'interface de [ligne de commande FreeRTOS Plus](https://www.freertos.org/FreeRTOS-Plus/FreeRTOS_Plus_CLI/FreeRTOS_Plus_Command_Line_Interface.html) pour plus de détails. Les intégrations de référence FreeRTOS IoT présentées [sur les plateformes RT1 NXP i.MX STM32 060](https://github.com/FreeRTOS/iot-reference-nxp-rt1060/tree/main/examples/common/cli) [et](https://github.com/FreeRTOS/iot-reference-stm32u5/tree/main/Common/cli) U5 fournissent également des exemples de CLI sur du matériel réel.  | 
| journalisation  | macro | Il existe des implémentations de la macro de journalisation pour des plateformes matérielles spécifiques utilisées par certaines bibliothèques FreeRTOS. Reportez-vous à la [page de journalisation](https://www.freertos.org/logging.html) pour savoir comment implémenter la macro de journalisation. Reportez-vous à [l'une des références IoT proposées par FreeRTOS](https://github.com/FreeRTOS/iot-reference-nxp-rt1060/tree/main/examples/common/logging) pour un exemple d'exécution sur du matériel réel.  | 
| greengrass connectivity  | démo | [Migration en cours] Ce projet de démonstration partait du principe que la connectivité au cloud était disponible avant la connexion à un appareil AWS IoT Greengrass. Un nouveau projet qui démontre les capacités d'authentification et de découverte locales est en cours de développement. Attendez-vous à ce que le nouveau projet de démonstration soit publié prochainement dans l'organisation [FreeRTOS Github](https://github.com/FreeRTOS).  | 


**Bibliothèques et démos obsolètes**  

| Nom | Type | Recommandations | 
| --- | --- | --- | 
| BLE | démos et bibliothèques | La bibliothèque FreeRTOS BLE implémente le protocole propriétaire MQTT et prend en charge la publication et l'abonnement à des sujets MQTT via Bluetooth Low Energy (BLE) via un périphérique proxy tel qu'un téléphone mobile. Cela n'est plus obligatoire. Utilisez votre propre stack BLE ou une option tierce telle que [NimBLE](https://mynewt.apache.org/latest/network/) pour optimiser au mieux votre projet.  | 
| dev\$1mode\$1key\$1provisioning | démos | Les intégrations de référence FreeRTOS IoT présentées [sur les plateformes RT1 NXP](https://github.com/FreeRTOS/iot-reference-nxp-rt1060/blob/main/examples/common/cli/cli.c) i.MX [ STM32060](https://github.com/FreeRTOS/iot-reference-stm32u5/blob/main/Common/cli/cli_pki.c), U5 ou -C3 fournissent des exemples de provisionnement crucial à l'[ ESP32aide](https://github.com/FreeRTOS/iot-reference-esp32c3/blob/main/GettingStartedGuide.md) d'une CLI.  | 
| posix | abstraction et démo | L'utilisation n'est pas recommandée. | 
| provisionnement wifi | exemple | Cet exemple montre comment fournir des WiFi informations d'identification sur un appareil à l'aide de la bibliothèque Amazon FreeRTOS BLE. Reportez-vous à la référence FreeRTOS Featured IoT [ESP32sur la](https://github.com/FreeRTOS/iot-reference-esp32c3) plateforme C3 pour un WiFi exemple de provisionnement via BLE.  | 
| Résumé de l'héritage APIs | code | Ils APIs ont été créés pour fournir une interface abstraite pour diverses piles de logiciels tiers, modules de connectivité et plateformes de microcontrôleurs de divers fournisseurs. Par exemple, il existe des interfaces pour WiFi l'abstraction, des sockets sécurisés, etc. Ils sont pris en charge dans le référentiel Amazon-FreeRTOS et se trouvent dans le dossier. `/libraries/abstractions/` Ils ne APIs sont pas obligatoires lors de l'utilisation des bibliothèques [FreeRTOS LTS](https://www.freertos.org/lts-libraries.html). | 

Les bibliothèques et les démos du tableau ci-dessus ne recevront pas de correctifs de sécurité ni de corrections de bogues.

**Bibliothèques tierces**

Lorsque des démos dans Amazon-freeRTOS utilisent des bibliothèques tierces, nous vous recommandons de les sous-modules directement à partir de leurs référentiels tiers.
+ **CMock**: clonez-le (sous-module si vous utilisez git) directement depuis le dépôt [Cmock](https://github.com/ThrowTheSwitch/CMock). 
+ **jsmn** : non recommandé et n'est plus pris en charge.
+ **lwip** [: clonez-le (sous-module si vous utilisez git) directement depuis le dépôt lwip-tcpip.](https://github.com/lwip-tcpip/lwip)
+ **lwip\$1osal** [: reportez-vous aux intégrations de référence proposées par FreeRTOS sur [i.MX RT1 060 ou U5 pour savoir comment implémenter lwip\$1osal sur votre plate-forme/carte](https://github.com/FreeRTOS/iot-reference-nxp-rt1060) matérielle. STM32](https://github.com/FreeRTOS/iot-reference-stm32u5) 
+ **mbedtls** [: clonez-le (sous-module si vous utilisez git) directement depuis le dépôt mbed-TLS.](https://github.com/Mbed-TLS/mbedtls) La configuration et les utilitaires mbedtls peuvent être réutilisés ; faites une copie locale dans ce cas.
+ **pkcs11** : clonez-le (sous-module si vous utilisez git) directement depuis la PKCS11 bibliothèque [principale](https://github.com/FreeRTOS/corePKCS11) ou depuis le dépôt [OASIS PKCS](https://github.com/oasis-tcs/pkcs11) 11.
+ **tinycbor** [: clonez-le (sous-module si vous utilisez git) directement depuis le dépôt tinycbor.](https://github.com/intel/tinycbor)
+ **tinycrypt** : nous vous recommandons d'utiliser les accélérateurs cryptographiques de votre plateforme MCU, s'ils sont disponibles. [Si vous souhaitez continuer à utiliser tinycrypt, clonez-le (sous-module si vous utilisez git) directement depuis le dépôt tinycrypt.](https://github.com/intel/tinycrypt)
+ **tracealyzer\$1recorder** [: clonez-le (sous-module si vous utilisez git) directement depuis le référentiel d'enregistreurs de traces de Percepio.](https://github.com/percepio/TraceRecorderSource)
+ **unity** : clonez-le (sous-module si vous utilisez git) directement depuis le dépôt [ThrowTheSwitch/Unity.](https://github.com/ThrowTheSwitch/Unity)
+ **win\$1pcap : win\$1pcap** n'est plus maintenu. Nous vous recommandons d'utiliser libslirp, libpcap (posix) ou npcap à la place. 

**Tests de portage et tests d'intégration**

Tous les tests du `/tests` dossier requis pour valider l'intégration des bibliothèques FreeRTOS ont été migrés vers le référentiel. [ FreeRTOS-Libraries-Integration-Tests](https://github.com/FreeRTOS/FreeRTOS-Libraries-Integration-Tests) Ils peuvent être utilisés pour tester la mise en œuvre de PAL et l'intégration de bibliothèques. Les mêmes tests sont utilisés par AWS IoT Device Tester (IDT) pour le [programme de qualification des AWS appareils pour FreeRTOS](https://docs.aws.amazon.com/freertos/latest/qualificationguide/afr-qualification.html).