OTA(Over-The-Air) 업데이트는 장치에 물리적으로 액세스할 필요 없이 무선 네트워크를 통해 소프트웨어 업데이트를 배포하는 메커니즘이다. 예를 들어 IoT 장치는 무선으로 소프트웨어를 업데이트할 수 있도록 OTA를 지원해야 한다.
다음과 같은 몇 가지 유용한 오픈소스 프로젝트들이 있다.
SWUpdate
- GPLv2 license
- 장치의 모든 구성 요소(rootfs, 커널, 부트로더, 마이크로컨트롤러 FW) 업데이트 가능
- Yocto 빌드 시스템에 레이어를 추가하여 통합 가능.
- 소프트웨어 가져오기를 위한 다중 인터페이스(로컬 및 OTA)
- hawkBit에 대한 REST 클라이언트 가능.
- 로컬 저장소(USB 등)
- 원격 서버 다운로드
- 저장소
OSTree
- LGPLv2 license
- HTTP를 통해 콘텐츠를 점진적으로 복제
- flatpak과 같은 프로젝트를 지원하는 여러 분기 및 리포지토리에 대한 유연한 지원.
- 로컬 및 원격 저장소 지원
- Yocto 빌드 시스템 레이어
- 저장소
RAUC - Robust Auto-Update Controller
- LGPL-2.1 license
- Update source
- USB Stick
- Software provisioning server (e.g. hawkBit)
- Yocto 빌드 시스템 레이어
- 시스템 서비스로 실행(D-Bus 인터페이스 제어)
- 저장소