

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.

# Amazon-FreeRTOS Guide de migration du référentiel Github
<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 pour recevoir [FreeRTOS-LTS](https://github.com/FreeRTOS/FreeRTOS-LTS) GitHub les 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 API abstraites telles que les [sockets sécurisés](https://docs.aws.amazon.com/freertos/latest/userguide/secure-sockets.html) et les [API Wifi](https://docs.aws.amazon.com/freertos/latest/userguide/freertos-wifi.html) ne sont pas requises 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 API abstraites du Amazon-FreeRTOS référentiel.


**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). | 
| noyau MQTT-Agent | démos et bibliothèque  | Clonez ou téléchargez la MQTT-Agent bibliothèque principale directement depuis le MQTT-Agent référentiel [principal](https://github.com/FreeRTOS/coreMQTT-Agent) (sous-module si vous utilisez git) dans l'organisation [FreeRTOS Github](https://github.com/FreeRTOS). Les principales MQTT-Agent démos se trouvent dans le MQTT-Agent-Demos référentiel [principal](https://github.com/FreeRTOS/coreMQTT-Agent-Demos). Pour plus de détails, reportez-vous à la [MQTT-Agent page principale](https://www.freertos.org/mqtt-agent/index.html). | 
| device\_defender\_pour\_aws | 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\_shadow\_for\_aws | 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\_for\_aws | 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\_ Plus\_CLI  | 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 NXP](https://github.com/FreeRTOS/iot-reference-nxp-rt1060/tree/main/examples/common/cli) i.MX [RT1060](https://github.com/FreeRTOS/iot-reference-stm32u5/tree/main/Common/cli) et STM32U5 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 démontrant les capacités locales d'authentification et de découverte 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\_mode\_key\_provisioning | démos | Les intégrations de référence FreeRTOS IoT présentées sur les plateformes [NXP i.MX [RT1060](https://github.com/FreeRTOS/iot-reference-stm32u5/blob/main/Common/cli/cli_pki.c), STM32U5 [ ESP32-C3](https://github.com/FreeRTOS/iot-reference-esp32c3/blob/main/GettingStartedGuide.md)ou sur](https://github.com/FreeRTOS/iot-reference-nxp-rt1060/blob/main/examples/common/cli/cli.c) les plateformes fournissent des exemples de provisionnement crucial à l'aide 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 [sur la](https://github.com/FreeRTOS/iot-reference-esp32c3) plateforme ESP32C3 pour un exemple de provisionnement via BLE. WiFi  | 
| API abstraites héritées | code | Il s'agit d'API qui ont été créées 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 Amazon-FreeRTOS référentiel et se trouvent dans le dossier`/libraries/abstractions/`. Ces API ne sont pas requises 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.

**Third-party bibliothèques**

Lorsque des démos 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\_osal** [: reportez-vous aux intégrations de référence proposées par FreeRTOS sur [i.MX RT1060](https://github.com/FreeRTOS/iot-reference-nxp-rt1060) ou STM32U5 pour savoir comment implémenter lwip\_osal sur votre matériel.](https://github.com/FreeRTOS/iot-reference-stm32u5) platform/board 
+ **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 bibliothèque [CorePKCS11 ou depuis le dépôt OASIS PKCS 11](https://github.com/FreeRTOS/corePKCS11).](https://github.com/oasis-tcs/pkcs11)
+ **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\_recorder** [: 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 [ThrowTheSwitch/Unity](https://github.com/ThrowTheSwitch/Unity)dépôt.
+ **win\_pcap : win\_pcap** 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).