找回密码
 立即注册

微信扫码登录

查看: 141|回复: 1

Zigbee825的OTA 问题

[复制链接]

5

主题

2

回帖

73

积分

不屈白银

积分
73
发表于 2025-4-7 09:59:42 | 显示全部楼层 |阅读模式
information
说明:   建议参照本版块置顶帖内容输入必要信息
芯片型号: TLSR8258F1KET32(1Mflash)
SDK及版本: telink_zigbee_sdk-V3.7.1.2
本帖最后由 287431331 于 2025-4-7 17:28 编辑

你好
image.png

待升级固件的⽂件版本:0x10013002
当前的⽂件版本L:0x10013001
ZigbeeOTA中完成版本比对之后就卡住了,也不会跳到OTA回调函数:sampleSwitch_otaProcessMsgHandler,



image.png



image.png


client端发起 imageBlockReq请求的具体函数名是那个,我想看看client端会不会发起imageBlockReq请求
image.png


27

主题

276

回帖

877

积分

版主

积分
877
发表于 2025-4-11 15:38:49 | 显示全部楼层
OTA的实现在zigbee/ota/ota.c
status_t zcl_otaCb(zclIncomingAddrInfo_t *pAddrInfo, u8 cmdId, void *cmdPayload)
{
    status_t status = ZCL_STA_SUCCESS;

    if (pAddrInfo->dstEp == g_otaCtx.simpleDesc->endpoint) {
        if (pAddrInfo->dirCluster == ZCL_FRAME_CLIENT_SERVER_DIR) {
            switch (cmdId) {
            case ZCL_CMD_OTA_QUERY_NEXT_IMAGE_REQ:
                status = ota_queryNextImageReqHandler(pAddrInfo, (ota_queryNextImageReq_t *)cmdPayload);
                break;
            case ZCL_CMD_OTA_IMAGE_BLOCK_REQ:
                status = ota_imageBlockReqHandler(pAddrInfo, (ota_imageBlockReq_t *)cmdPayload);
                break;
            case ZCL_CMD_OTA_IMAGE_PAGE_REQ:
                status = ota_imagePageReqHandler(pAddrInfo, (ota_imagePageReq_t *)cmdPayload);
                break;
            case ZCL_CMD_OTA_UPGRADE_END_REQ:
                status = ota_upgradeEndReqHandler(pAddrInfo, (ota_upgradeEndReq_t *)cmdPayload);
                break;
            case ZCL_CMD_OTA_QUERY_DEVICE_SPECIFIC_FILE_REQ:
                status = ota_queryDevSpecFileReqHandler(pAddrInfo, (ota_querySpecFileReq_t *)cmdPayload);
                break;
            default:
                status = ZCL_STA_UNSUP_CLUSTER_COMMAND;
                break;
            }
        } else {
            switch (cmdId) {
            case ZCL_CMD_OTA_IMAGE_NOTIFY:
                status = ota_imageNotifyHandler(pAddrInfo, (ota_imageNotify_t *)cmdPayload);
                break;
            case ZCL_CMD_OTA_QUERY_NEXT_IMAGE_RSP:
                status = ota_queryNextImageRspHandler(pAddrInfo, (ota_queryNextImageRsp_t *)cmdPayload);
                break;
            case ZCL_CMD_OTA_IMAGE_BLOCK_RSP:
                status = ota_imageBlockRspHandler(pAddrInfo, (ota_imageBlockRsp_t *)cmdPayload);
                break;
            case ZCL_CMD_OTA_UPGRADE_END_RSP:
                status = ota_upgradeEndRspHandler(pAddrInfo, (ota_upgradeEndRsp_t *)cmdPayload);
                break;
            case ZCL_CMD_OTA_QUERY_DEVICE_SPECIFIC_FILE_RSP:
                status = ota_queryDevSpecFileRspHandler(pAddrInfo, (ota_querySpecFileRsp_t *)cmdPayload);
                break;
            default:
                status = ZCL_STA_UNSUP_CLUSTER_COMMAND;
                break;
            }
        }
    }

    return status;
}

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Telink forum ( 沪ICP备17008231号-1 )

GMT+8, 2025-4-20 00:16 , Processed in 0.094832 second(s), 24 queries .

Powered by Telink 隐私政策

泰凌微电子版权所有 © 。保留所有权利。 2024

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