本系列的文章將會引導使用者如何在使用勁達的nRF52840系列模組編寫程式時,啟用 Secure DFU OTA(空中升級) 的功能。
主題:使用nRF52840架設DFU OTA功能 (以SDK版本17.1.0為例)
DFU:Device Firmware Update;裝置韌體升級
OTA:Over the air;空中升級
IC: nRF52840
DK: PCA10056(對應到nRF52840)
SDK: 17.1.0
SD: s140_nrf52_7.2.0_softdevice.hex
IDE: Keil C
PC: Win 10
Secure DFU OTA 的系列文章會有三篇,分別涉及:
Part A: Bootloader
Part B: Application (文章連結請按此)
Part C: 合併建構完成的檔案 (接續Part B 發出)
本篇文章主題為 Part A: Bootloader 。
nRF52840用SDK17.1.0做Secure DFU(OTA)的方法如下:
Part A: Bootloader
路徑: nRF5_SDK_17.1.0_ddde560\examples\dfu\secure_bootloader\pca10056_s140_ble\arm5_no_packs
步驟1:在構建Bootloader時,若缺少public key,會產生Error錯誤:(如下圖)
步驟2:在Bootloader裡面產生public key檔案的做法
A. 到DOS的下列路徑:..\Python27\Scripts
B. 執行以下指令:
nrfutil keys generate private.pem
nrfutil keys display --key pk --format code private.pem --out_file public_key.c
步驟3:將public_key.c的pk[64]內容(下圖上半部分紅框)覆蓋到dfu_public_key.c(下圖下半部分)內
※註:記得存取以下3個自動產生的檔案:
private.pem
public_key.c
dfu_public_key.c
步驟4:重新構建Bootloader的程式碼,並得到 nrf52840_xxaa_s140.hex 檔案。
※本系列第二篇 - Part B: Application 的說明文章預計於下周(2024年5月29日)刊登。
Technical guidelines provided by R&D Manager: Mr. MW Lee
Edited by Sales Manager: Mr. Tony Yin
Raytac Corporation 勁達國際電子股份有限公司
Bluetooth & WiFi module maker based on Nordic nRF54, nRF53, nRF52, nRF7002 solution
BT5.4 &BT5.3 & BT5.2 & BT5.1 Qualified, FCC/IC/CE/Telec/KC/RCM/SRRC/NCC Pre-Certified.
Bluetooth Solution: nRF54, nRF5340, nRF52840, nRF52833, nRF52832, nRF52820, nRF52811, nRF52810, nRF52805, nRF51822
WiFi Solution: nRF7002
http://www.raytac.com
email: service@raytac.com
Tel: +886-2-3234-0208
沒有留言:
張貼留言