OTA固件升级
如有远程升级需求,请参考具体ota升级流程文档及本小节内容进行实现,目前OTA固件升级功能仅“云端”版本支持。
设置OTA属性
iot_s32 iot_ota_option_set ( iot_u32 chunk_size )
参数 | 说明 |
---|---|
chunk_size | APP端会将固件按chunk_size分块,分块后一次下发一块。2的n次幂,范围256-2048,默认512 |
返回值 | 0:设置成功-1:设置失败,参数错误 |
接收固件数据块
iot_s32 iot_ota_chunk_cb ( iot_u8 chunk_is_last,
iot_u32 chunk_offset,
iot_u32 chunk_size,
const iot_s8* chunk )
参数 | 说明 |
---|---|
chunk_is_last | 0:不是最后一个分块1:是最后一个分块,固件传输结束 |
chunk_offset | 本数据块相对于完整固件的偏移量即,第一个数据块,此参数值是0 |
chunk_size | 本数据块的长度 |
chunk | 固件数据块 |
返回值 | 0:写入固件块成功-1:写入固件块失败 |
接收升级指令
收到此命令,重启,运行新版本固件。回调函数中不可执行太多耗时代码。
void iot_ota_upgrade_cb ( OTA_FINISH_STATUS_T finish_status )
参数 | 说明 |
---|---|
finish_status | OTA_FINISH_OK : OTA传输正常结束OTA_FINISH_ERR : OTA传输异常结束 |
返回值 | 无 |