BLOG

Amazon FreeRTOS 201906.00 Major
작성일: 2019년 7월 24일

지난 6월 17일부터 Amazon FreeRTOS 201906.00 Major를 공식적으로 모두 이용할 수 있게 되었습니다. Amazon FreeRTOS는 FreeRTOS 커널을 개별 소프트웨어 라이브러리로 확장하여 마이크로 컨트롤러 기반 IoT 장치를 클라우드로 더욱 빠르고 안전하게 연결합니다.

릴리스된 서비스는 전체 Amazon FreeRTOS 버전 관리에 대한 업데이트를 지원할 뿐만 아니라 몇 가지 기본 라이브러리를 현저히 개선해 줍니다.

 

  • Bluetooth Low Energy 지원에 대한 일반적인 서비스
  • MQTT 라이브러리 v2.0.0
  • 아마존 FreeRTOS 폴더 구조 변경
  • CMake
  • 그 밖의 기존 라이브러리에 대한 개선
  • 추가 기능
  • 릴리스 넘버링 업데이트

 

 

Bluetooth Low Energy 지원에 대한 일반적인 서비스

 

AWS는 Amazon FreeRTOS Bluetooth Low Energy 라이브러리와 Android/iOS SDK를 베타에서 제외했습니다. 이제 이들은 Amazon FreeRTOS GitHub 마스터 저장소에 포함됩니다.

Amazon FreeRTOS는 Bluetooth Low Energy 지원 서비스로 다음과 같은 업데이트를 포함합니다.

  • MQTT 라이브러리:  해당 업데이트는 Bluetooth Low Energy 및 TCP/IP를 통한 MQTT 사용을 포함하여 향상된 유연성과 기능을 제공합니다. 자세한 정보는 이 다음 단락인 MQTT 라이브러리 v2.0.0 부문을 참고하십시오.
  • OTA(Over-the-Air) 업데이트: AWS IoT Device Management의 기존 OTA 업데이트 기능을 사용하여 인증된 Android/iOS 프록시 장치를 통해 Bluetooth Low Energy 장치의 펌웨어를 모니터링, 관리 및 업데이트합니다.
  • AWS의 IoT 디바이스 테스터 통합: AWS IoT Device Tester를 실행하여 Bluetooth Low Energy를 지원하는 Amazon FreeRTOS 포트를 확인합니다. AWS는 또한 Bluetooth Low Energy를 통한 Wi-Fi 프로비저닝을 검증하기 위해 별도의 테스트를 추가했습니다.
  • 아마존 FreeRTOS 콘솔: 사용자는 Bluetooth Low Energy 라이브러리를 선택하고 아마존 FreeRTOS 콘솔에서 보드 고유의 소스 코드를 다운로드할 수 있습니다.

 

 

 

MQTT 라이브러리 v2.0.0

 

AWS는 추상화 계층을 사용하여 MQTT 라이브러리 전송을 독립적으로 만들었고, Amazon FreeRTOS의 모든 기능을 Bluetooth Low Energy 및 TCP/IP에서 모두 사용 가능하도록 했습니다. (예: OTA, AWS IoT Device Defender 및 Device Shadows) 업데이트된 내용은 다음과 같습니다.

  • 한 소켓을 열고 모든 Amazon FreeRTOS 라이브러리에서 다시 사용할 수 있는 기능.
  • Last Will과 Testament, 완전하게 구현된 재시도 로직이 있는 QoS1, 지속적인 세션과 같은 MQTT 기능
  • 작업당 사용자 제공 콜백을 사용하여 MQTT 라이브러리에서 비 차단형 프로그래밍 모델을 지원
  • 동적 또는 정적으로 할당된 메모리 풀에서 메모리를 할당하는 기능

 

 

 

아마존 FreeRTOS 폴더 구조 변경

 

AWS는 GitHub에서 Amazon FreeRTOS 소스 코드 저장소의 폴더 구조를 업데이트했습니다. 이제 AWS 파트너 제공 코드(드라이버, 포트 및 도구)와 코어 Amazon, FreeRTOS 구성 요소(예 : 커널, 라이브러리 및 테스트)를 별도의 디렉토리로 분리합니다. 이렇게 하면 AWS와 비 AWS 코드 간의 분리가 더욱 명확해져 배포 및 유지 관리가 간단해집니다.

이전 버전에서 마이그레이션할 경우, 이러한 변경 사항에 따라 빌드 스크립트를 갱신해야 합니다. ‘Amazon FreeRTOS를 내 디바이스로 이식하기’ 페이지에 방문하시면, 그 과정에 대한 추가 세부 정보를 확인하실 수 있습니다.

 

 

 

CMake

 

Amazon FreeRTOS는 이제 CMake 기반 빌드 시스템을 지원합니다. AWS는 핵심 Amazon FreeRTOS 구성 요소(예 : 커널 및 라이브러리)에 CMake 파일을 제공하며, 이는 지원되는 보드에 대한 표준 빌드 환경을 지원합니다. 또한 기존과 동일하게 IDE 프로젝트도 지원합니다.

 

 

 

그 밖의 기존 라이브러리에 대한 개선

 

AWS는 업데이트된 MQTT 프로그래밍 모델을 사용하기 위해 Device Shadows v2.0.0 및 AWS IoT Device Defender v2.0.0 라이브러리 또한 조정했습니다.

 

 

 

추가 기능

 

이번에 릴리스된 서비스는 작업 풀을 지원합니다. 작업 풀을 사용하면 애플리케이션의 작업을 구성하고, 성능과 메모리 사용량 간의 균형을 최적화 할 수 있습니다.

 

 

 

릴리스 넘버링 업데이

 

이번 릴리스와 함께 AWS는 의미 체계 버전 관리(Semantic Versioning)을 날짜 기반 버전 관리 체계 (Date-based versioning)으로 대체하여, Amazon FreeRTOS 1.4.8이 Amazon FreeRTOS 201906.00으로 업데이트되었습니다.

해당 날짜 기반 버전은 YYYYMM.NN 형식을 따릅니다.

  • Y는 연도를(2019) 나타냅니다.
  • M은 달을(6월) 나타냅니다.
  • N은 지정된 월의 릴리스 순서를 나타냅니다. (00은 2019년 6월의 첫 번째 릴리스)

예를 들자면, 2019년 6월의 두 번째 릴리스는 201906.01이 됩니다.

각 Amazon FreeRTOS 라이브러리는 여전히 의미 체계 버전 관리를 그대로 유지하고 있습니다. 의미 체계 버전 관리에서는 버전 번호(X.Y.Z) 자체가 릴리스가 주 릴리스인지, 부 릴리스인지, 아니면 포인트 릴리스인지를 나타냅니다. 따라서 의미 체계 버전 관리가 현재 사용 중인 애플리케이션에 영향을 주지 않을 수 있는 변경 사항에 대한 주 릴리스를 나타내는 상황이 발생할 수 있습니다. 의미 체계 버전 관리를 개별 라이브러리까지 이동하여 적용하면 애플리케이션에 대한 신규 릴리스의 범위 및 영향을 직접 평가할 수 있습니다. 해당 릴리스에는 MQTT 및 Device Shadows를 포함한 여러 라이브러리에 대한 주요 버전 변경 사항이 포함되어 있습니다.

 

 

 

해당 릴리스가 사용자에게 미치는 영향

 

이 업데이트는 기존 애플리케이션 및 디바이스 자격요건에 영향을 줄 수 있습니다.

빌드 스크립트가 업데이트된 라이브러리를 사용할 수 있게 하려면 이전 버전의 Amazon FreeRTOS를 기반으로 기존 애플리케이션을 업데이트 해야합니다. 앞에서 설명한 업데이트된 라이브러리에 대해 새 API를 사용하도록 선택할 수 있습니다. 또는 조정된 API를 사용하기 위한 업데이트 할 수 없는 애플리케이션의 경우 포함된 호환성 레이어를 사용할 수 있습니다. 애플리케이션을 새 릴리스로 마이그레이션하는 자세한 방법은 ‘여기’를 참고하십시오.

이전에 자격을 갖춘 모든 레퍼런스 보드는 해당 릴리스에서도 자격을 유지합니다. 새로운 자격은 새로운 기준선에서 자격을 얻습니다. 자세한 내용은 AWS Device Qualification Program을 참고해 주십시오.

 

 

 

글을 마치며

 

이번 게시물에서는 Amazon FreeRTOS 201906.00의 업데이트 된 기능 및 릴리스 번호를 매기는 표준 방법에 대해 살펴보았습니다.  Amazon FreeRTOS Bluetooth Low Energy 사용법에 대해 알고 싶으시다면 해당 페이지를 확인해 주시고, Bluetooth Low Energy를 사용하여 OTA를 업데이트하는 법에 대해 알고 싶으시다면

여기를 방문해 주십시오.

 

 

 

원문 URL: https://aws.amazon.com/ko/blogs/iot/announcing-amazon-freertos-20190600/

 

** 메가존 클라우드 TechBlog는 AWS BLOG 영문 게재글중에서 한국 사용자들에게 유용한 정보 및 콘텐츠를 우선적으로 번역하여 내부 엔지니어 검수를 받아서, 정기적으로 게재하고 있습니다. 추가로 번역및 게재를 희망하는 글에 대해서 관리자에게 메일 또는 SNS 페이지에 댓글을 남겨주시면, 우선적으로 번역해서 전달해드리도록 하겠습니다.