Amazon-FreeRTOS Github 리포지토리 마이그레이션 가이드 - 무료 RTOS

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon-FreeRTOS Github 리포지토리 마이그레이션 가이드

현재 사용되지 않는 amazon-freertos 리포지토리를 기반으로 하는 기존 FreeRTOS 프로젝트가 있는 경우 다음 단계를 따릅니다.

  1. 공개적으로 사용 가능한 최신 보안 수정을 확인합니다. FreeRTOS LTS 라이브러리 페이지에서 업데이트를 확인하거나 FreeRTOS-LTS GitHub 리포지토리를 구독하여 중요 및 보안 버그 수정이 포함된 최신 LTS 패치를 받습니다. 필요한 최신 FreeRTOS LTS 패치를 개별 GitHub 리포지토리에서 직접 다운로드하거나 복제할 수 있습니다.

  2. 네트워크 전송 인터페이스 구현을 리팩터링하여 하드웨어 플랫폼을 최적화하는 것을 고려합니다. 최신 coreMQTT 라이브러리에는 보안 소켓Wifi API와 같은 추상 API가 필요하지 않습니다. 자세한 내용은 Transport Interface를 참조하세요.

부록

다음 표에서는 Amazon-FreeRTOS 리포지토리 내의 모든 데모 프로젝트, 레거시 라이브러리 및 추상 API에 대한 권장 사항을 제공합니다.

마이그레이션된 라이브러리 및 데모
이름 유형 권장 사항

coreHTTP

데모 및 라이브러리

FreeRTOS Github organizationcoreHTTP 리포지토리에서 직접 coreHTTP 라이브러리를 복제하거나 다운로드합니다(git을 사용하는 경우 하위 모듈 생성). coreHTTP 데모는 기본 FreeRTOS 배포판에 포함되어 있습니다. 자세한 내용은 coreHTTP 페이지를 참조하세요.

coreMQTT

데모 및 라이브러리

FreeRTOS Github organizationcoreMQTT 리포지토리에서 직접 coreMQTT 라이브러리를 복제하거나 다운로드합니다(git을 사용하는 경우 하위 모듈 생성). coreMQTT 데모는 기본 FreeRTOS 배포판에 포함되어 있습니다. 자세한 내용은 coreMQTT 페이지를 참조하세요.

coreMQTT 에이전트

데모 및 라이브러리

FreeRTOS Github organizationcoreMQTT-Agent 리포지토리에서 직접 coreMQTT 에이전트 라이브러리를 복제하거나 다운로드합니다(git을 사용하는 경우 하위 모듈 생성). coreMQTT 에이전트 데모는 coreMQTT-Agent-Demos 리포지토리에 있습니다. 자세한 내용은 coreMQTT-Agent 페이지를 참조하세요.

device_defender_for_aws

데모 및 라이브러리

AWS IoT Device Defender 라이브러리는 AWS GitHub organisation의 해당 리포지토리에 있습니다. AWS IoT Device Defender 리포지토리에서 직접 복제하거나 다운로드합니다(git을 사용하는 경우 하위 모듈 생성). AWS IoT Device Defender 데모는 기본 FreeRTOS 배포판에 포함되어 있습니다. 자세한 내용은 AWS IoT Device Defender 페이지를 참조하세요.

device_shadow_for_aws

데모 및 라이브러리

AWS IoT 디바이스 섀도우 라이브러리는 AWS GitHub organisation의 해당 리포지토리에 있습니다. AWS IoT 디바이스 섀도우 리포지토리에서 직접 복제하거나 다운로드합니다(git을 사용하는 경우 하위 모듈 생성). AWS IoT 디바이스 섀도우 데모는 기본 FreeRTOS 배포판에 포함되어 있습니다. 자세한 내용은 AWS IoT 디바이스 섀도우 페이지를 참조하세요.

jobs_for_aws

데모 및 라이브러리

AWS IoT Jobs 라이브러리는 AWS GitHub organisation의 해당 리포지토리에 있습니다. AWS IoT Jobs 리포지토리에서 직접 복제하거나 다운로드합니다(git을 사용하는 경우 하위 모듈 생성). AWS IoT Jobs 데모는 기본 FreeRTOS 배포판에 포함되어 있습니다. 자세한 내용은 AWS IoT Jobs 페이지를 참조하세요.

OTA

데모 및 라이브러리

AWS IoT 무선 업데이트(OTA) 라이브러리는 AWS GitHub organization의 해당 리포지토리에 있습니다. AWS IoT OTA 리포지토리에서 직접 복제하거나 다운로드합니다(git을 사용하는 경우 하위 모듈 생성). AWS IoT OTA 데모는 기본 FreeRTOS 배포판에 포함되어 있습니다. 자세한 내용은 AWS IoT OTA 페이지를 참조하세요.

CLI 및 FreeRTOS_Plus_CLI

데모 및 라이브러리

WinSim에서 실행되는 CLI 예제가 하나 있습니다. 자세한 내용은 FreeRTOS Plus Command Line Interface 페이지를 참조하세요. NXP i.MX RT1060 STM32U5 플랫폼용 추천 FreeRTOS IoT 참조 통합은 실제 하드웨어에 대한 CLI 예제도 제공합니다.

로깅

매크로

일부 FreeRTOS 라이브러리에서 사용하는 특정 하드웨어 플랫폼에 대한 로깅 매크로 구현이 있습니다. 로깅 매크로를 구현하는 방법은 로깅 페이지를 참조하세요. 실제 하드웨어에서 실행되는 예제는 FreeRTOS 추천 IoT 참조 중 하나를 참조하세요.

greengrass_connectivity

데모

[마이그레이션 진행 중] 이 데모 프로젝트에서는 AWS IoT Greengrass 디바이스에 연결하기 전에 클라우드 연결을 사용할 수 있다고 가정했습니다. 로컬 인증 및 검색 기능을 시연하는 새 프로젝트가 개발 중입니다. 새 데모 프로젝트가 FreeRTOS Github organization에 곧 게시될 예정입니다.

더 이상 사용되지 않는 라이브러리 및 데모
이름 유형 권장 사항

BLE

도구 및 라이브러리

FreeRTOS BLE 라이브러리는 전용 MQTT 프로토콜을 구현하며 프록시 디바이스(예: 휴대폰)를 통해 Bluetooth Low Energy(BLE)를 이용한 MQTT 주제 게시 및 구독을 지원합니다. 더 이상 필수 사항이 아닙니다. 자체 BLE 스택이나 NimBLE과 같은 타사 옵션을 사용하여 프로젝트를 최적화하세요.

dev_mode_key_provisioning

데모

NXP i.MX RT1060, STM32U5 또는 ESP32-C3 플랫폼용 추천 FreeRTOS IoT 참조 통합은 CLI를 사용한 중요한 프로비저닝의 예를 제공합니다.

posix

추상화 및 데모

사용을 권장하지 않습니다.

wifi_provisioning

예제

이 예제에서는 Amazon-FreeRTOS BLE 라이브러리를 사용하여 디바이스에서 WiFi 보안 인증 정보를 프로비저닝하는 방법을 보여줍니다. BLE를 통한 WiFi 프로비저닝의 예는 ESP32C3 플랫폼용 FreeRTOS 추천 IoT 참조를 참조하세요.

레거시 추상화 API

code

이러한 API는 다양한 공급업체의 다양한 타사 소프트웨어 스택, 연결 모듈 및 MCU 플랫폼을 위한 추상 인터페이스를 제공하기 위해 작성된 인터페이스입니다. 예를 들어 WiFi 추상화, 보안 소켓 등을 위한 인터페이스가 있습니다. 이러한 인터페이스는 Amazon-FreeRTOS 리포지토리에서 지원되며 /libraries/abstractions/ 폴더에 있습니다. FreeRTOS LTS 라이브러리를 사용할 때는 이러한 API가 필요하지 않습니다.

위 표의 라이브러리 및 데모에는 보안 패치 또는 버그 수정이 제공되지 않습니다.

타사 라이브러리

Amazon FreeRTOS의 데모가 타사 라이브러리를 사용하는 경우 타사 리포지토리에서 직접 하위 모듈을 만드는 것이 좋습니다.

  • CMock: Cmock 리포지토리에서 직접 복제합니다(git을 사용하는 경우 하위 모듈 생성).

  • jsmn: 권장되지 않으며 더 이상 지원되지 않습니다.

  • lwip: lwip-tcpip 리포지토리에서 직접 복제합니다(git을 사용하는 경우 하위 모듈 생성).

  • lwip_osal: 하드웨어 플랫폼/보드에 lwip_osal을 구현하는 방법은 i.MX RT1060 또는 STM32U5용 FreeRTOS 추천 참조 통합을 참조하세요.

  • mbedtls: Mbed-TLS 리포지토리에서 직접 복제합니다(git을 사용하는 경우 하위 모듈 생성). mbedtls 구성 및 유틸리티는 재사용할 수 있습니다. 이 경우에는 로컬 복사본을 만드세요.

  • pkcs11: corePKCS11 라이브러리 또는 OASIS PKCS 11 리포지토리에서 직접 복제합니다(git을 사용하는 경우 하위 모듈 생성).

  • tinycbor: tinycbor 리포지토리에서 직접 복제합니다(git을 사용하는 경우 하위 모듈 생성).

  • tinycrypt: 가능한 경우 MCU 플랫폼의 암호화 가속기를 사용하는 것이 좋습니다. tinycrypt를 계속 사용하려면 tinycrypt 리포지토에서 직접 복제합니다(git을 사용하는 경우 하위 모듈 생성).

  • tracealyzer_recorder: Percepio의 trace recorder 리포지토리에서 직접 복제합니다(git을 사용하는 경우 하위 모듈 생성).

  • unity: ThrowTheSwitch/Unity 리포지토리에서 직접 복제합니다(git을 사용하는 경우 하위 모듈 생성).

  • win_pcap: win_pcap은 더 이상 유지 관리되지 않습니다. 대신 libslirp, libpcap(posix) 또는 npcap을 사용할 것을 권장합니다.

이식 테스트 및 통합 테스트

FreeRTOS 라이브러리 통합을 검증하는 데 필요한 /tests 폴더 아래의 모든 테스트가 FreeRTOS-Libraries-Integration-Tests 리포지토리로 마이그레이션되었습니다. 이러한 테스트를 사용하여 PAL 구현 및 라이브러리 통합을 테스트할 수 있습니다. AWS IoT 디바이스 테스터(IDT)는 FreeRTOS용 AWS 디바이스 검증 프로그램에 동일한 테스트를 사용합니다.