找回密码
 立即注册

使用微信账号登录

只需一步,快速开始

查看: 15|回复: 0

[Nordic] 采用蓝牙OTA方式需要注意哪些位置

[复制链接]
连续签到天数:1天
签到总天数:5天
签到总奖励:23金币
发表于 8 小时前 | 显示全部楼层 |阅读模式

马上注册,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册  

×
1. Bootloader 与分区配置
  • 必须使用 MCUboot 作为可升级 bootloader:
    • 使用 sysbuild 时在 sysbuild.conf 中启用:SB_CONFIG_BOOTLOADER_MCUBOOT=y

      或在命令行:west build -b <board> -- -DSB_CONFIG_BOOTLOADER_MCUBOOT=y

      [nRF52 FOTA; nRF54L FOTA]


  • 对于 nRF54L 系列,注意官方给出的 MCUboot 额外配置(如 direct-xip、外部 Flash 等),以及必要时调整 CONFIG_BOOT_MAX_IMG_SECTORS(例如 nRF54LM20 DK 需要设为 256)。[nRF54L FOTA; Academy 54LM20 提示]



2. 应用侧启用 FOTA(MCUmgr + SMP over BLE)
  • 应用必须是 BLE Peripheral:
    • 需要启用 CONFIG_BT_PERIPHERAL。[nRF52 FOTA; nRF54L FOTA]


  • 推荐使用简化开关 CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU:
    • 在 prj.conf 中添加:CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y


    • 该选项会自动:
      • 启用 MCUmgr、SMP over BLE 传输;
      • 启用 Image/OS 管理 handler;
      • 启用 BT reassembly、加大缓冲区(通过 CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU_SPEEDUP)。[nRF52 FOTA; nRF54L FOTA; Academy Exercise 5]




  • 官方示例构建方式(以 Peripheral LBS 为例):
    west build -b <board_target> -- \  -DSB_CONFIG_BOOTLOADER_MCUBOOT=y \  -DCONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y

    [nRF54L FOTA 示例命令; nRF52 FOTA 示例命令]

  • CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU 适合学习/原型阶段,量产项目建议查看它隐含的选项,只挑自己需要的单独配置。[Academy Exercise 5 说明]



3. 安全性(强烈建议)
  • 防止未授权 OTA:
    • 强烈建议启用:CONFIG_MCUMGR_TRANSPORT_BT_PERM_RW_AUTHEN=y


    • 这样在访问 SMP 特征前必须完成配对,避免任意手机给设备刷固件。[nRF54L FOTA 安全提示; Academy 安全建议]


  • nRF54L15 如需加密镜像(防止固件被窃取/篡改),可以结合 MCUboot + ECIES-X25519 + KMU,官方有专门文档和示例流程。[加密 DFU 说明]



4. 蓝牙连接与吞吐量
  • 通过 CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU_SPEEDUP 或参考 overlay-bt.conf 中的配置,适当增大:
    • MTU / ACL buffer 大小;
    • MCUmgr reassembly buffer;
      以提高 OTA 速度,但会增加 RAM 占用。[nRF54L FOTA 速度优化; nRF52 FOTA 说明]


  • SMP Service UUID 为 8D53DC1D-1DB7-4CD3-868B-8A527460AA84,如需让手机 App 更容易发现 DFU 设备,可以把该 UUID 加入广播/扫描响应。[nRF52 FOTA]



5. 手机端 / 上位机工具选择与使用
  • 官方推荐的手机 App:
    • nRF Connect Device Manager:专门支持 MCUmgr/SMP OTA,Academy 教程中有完整操作步骤。[Academy Exercise 5 步骤]
    • 也可以用 nRF Connect for Mobile 或 PC 端 mcumgr 工具。[Academy Exercise 5 说明]


  • 注意镜像文件类型:
    • 常用:app_update.bin、zephyr.signed.bin 或 dfu_application.zip,不同工具支持的格式略有差异,按文档/工具说明选择。[Academy Exercise 5 文件说明]




6. 量产项目的额外注意点
  • 不要长期依赖 CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU,而是:
    • 打开它看它 select/imply 了哪些 Kconfig;
    • 只把真正需要的选项拷贝到自己工程中,避免引入多余功能。[Academy 关于 CONFIG_NCS_SAMPLE* 的建议]


  • 结合芯片安全特性(如 nRF54L 的 KMU、镜像签名/加密、调试口锁定等)做整体安全设计。



楼主热帖
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则

小黑屋|手机版|我爱蓝牙网 - 52Bluetooth

GMT+8, 2026-2-12 18:44 , Processed in 0.268842 second(s), 10 queries , Gzip On, MemCached On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表