반응형
부트로더 및 DFU 모듈은 SDK의 일부로 제공되는 Secure Bootloader, Open Bootloader with DFU에
사용되지만, 이를 사용하여 사용자 정의 부트로더를 빌드할 수도 있다.
기본적으로 부트로더는 메모리의 특정 위치에 있는 응용프로그램을 시작하므로
이러한 부트로더의 기능을 구현할 수 있다.
예를 들어 여러 응용 프로그램 간에 전환이나, 응용 프로그램을 시작하기 전 장치를 초기화할 수 있다.
부트로더 모듈이 제공하는 가장 중요한 기능은 DFU(Device Firmware Update)기능이다.
DFU의 주요 기능은 다음과 같다.
- 응용 프로그램, SoftDevice 및 부트로더 업데이트
- 인증된 소스의 업데이트(서명된 업데이트)
- 다운그레이드 방지
- 하드웨어 호환성 검증
- 다양한 전송 : BLE, UART,USBD
- SoftDevice 유무에 관계없이 어플리케이션 업데이트 지원
- SoftDevice 종속 펌웨어를 SoftDevice 독립 펌웨어로 교체하기 위한 지원
- SoftDevice 독립 펌웨어를 SoftDevice 종속 펌웨어로 교체하기 위한 지원
ANT를 사용하는 DFU 부트로더의 경우 실험 : ANT Secure DFU 부트로더 예제 참조
다음 그림은 부트로더 모듈의 계층 아키텍처를 보여준다.

사용 가능한 모듈에 대한 자세한 내용은 다음 페이지를 참조한다.
- Bootloader (nrf_bootloader)
- Device Firmware Update process (nrf_dfu)
- DFU protocol (nrf_dfu_transport)
또한 보안 기능을 구현하고 DFU 부트로더에 서명하는데 사용할 수 있는 암호화 라이브러리
에 대한 정보를 참조한다.
nRF52840 전용의 DFU 트리거 라이브러리(USB)도 참조한다.
Secure Bootloader와 Open Bootloader with DFU 예제는 보안 및 개방형 장치 펌웨어 업데이트 전송의 전체 구현이다.
반응형