7.2. OTA使用说明
测试盒OTA升级介绍
AC632N默认支持通过杰理蓝牙测试盒进行BLE或者EDR链路的OTA升级,方便用户在开发阶段对不方便有线升级的样机进行固件更新,或者在量产阶段进行批量升级。有关杰理蓝牙测试盒的使用及相关升级操作说明,详见 测试盒使用说明 。
APP OTA升级介绍
AC632N 可选支持APP OTA升级,SDK提供通过JL_RCSP协议与APP交互完成OTA的demo流程。用户可以直接参考JL_RCSP协议相关文档和手机APP OTA外接库说明,将APP OTA功能集成到用户自家APP中。APP OTA功能方便对已市场的产品进行远程固件推送升级,以此修复已知问题或支持新功能。
Note
目前APP升级支持 BLE模式,EDR暂不支持。
7.2.1. OTA-APP升级(BLE)
SDK工程相关配置
板级头文件必须使能BLE模块功能,才能使用升级功能。
#define TCFG_USER_BLE_ENABLE 1 //BLE功能使能在对应板级配置文件 xxx_global_build_cfg.h 中打开 CONFIG_APP_OTA_ENABLE配置
#define CONFIG_DOUBLE_BANK_ENABLE 1 //单双备份选择(若打开了改宏,FLASH结构变为双备份结构,适用于接入第三方协议的OTA, PS: JL-OTA同样支持双备份升级, 需要根据实际FLASH大小同时配置CONFIG_FLASH_SIZE) #define CONFIG_APP_OTA_ENABLE 1 //是否支持RCSP升级(JL-OTA) #define CONFIG_UPDATE_JUMP_TO_MASK 0 //配置升级到loader的方式0为直接reset,1为跳转(适用于芯片电源由IO口KEEP住的方案,需要注意检查跳转前是否将使用DMA的硬件模块全部关闭)生成的升级文件为 update.ufw,将其放在手机 APP 对应的文件目录中,连接蓝牙,选择文件后点击开始升级即可。
打开APP升级,需要修改ini的话需要在
cpu/bd19/tools/bluetooth/app_ota
下修改,如果未打开APP升级,则修改cpu/bd19/tools/bluetooth/standard
下的ini配置。对应生成的升级文件ufw也在对应的目录下。手机端工具
安卓端开发说明:详见tools目录下Android_杰理OTA外接库开发说明。
IOS端开发说明: 详见tools目录下IOS_杰理OTA外接库开发说明。
7.2.2. 自定义单/双线串口升级介绍
在 app_config.h 中打开 USER_UART_UPDATE_ENABLE 配置
#define USER_UART_UPDATE_ENABLE 0 //是否支持自定义串口升级
在 app_config.h 中,对收/发 IO 进行配置,如果收/发都配置为同一 IO 口,则当前就是单线串口升级。
#define UART_UPDATE_RX_PORT IO_PORTA_02 //设置 PA2 为接收口 #define UART_UPDATE_TX_PORT IO_PORTA_03 //设置 PA3 为接收口
如果样机之间需要进行串口升级的话,则需要配置当前的角色,即配置主机/从机,假如配置为主机则需要发送符合 《杰理串口升级规范》协议的数据让从机进行升级流程。AC63N 默认是配置为从机
#define UART_UPDATE_ROLE UART_UPDATE_SLAVE //主机对应的宏是 UART_UPDATE_MASTER
SDK 目前支持的上位机是 1 拖 8 烧录工具(V3.1.8 以上版本)。