System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于物联网,涉及zigbee固件和matter固件,具体涉及基于ota升级进行zigbee固件和matter固件切换的方法。
技术介绍
1、zigbee是一种低功耗、互操作性强的无线通信技术,适用于智能家居和物联网应用,具有寿命长、安全性高的优点。matter是一个旨在统一智能家居设备互联标准的倡议,强调互操作性、简化开发部署、安全性和隐私保护,旨在为用户提供更一体化、安全可靠的智能家居体验,两者共同推动着智能家居技术的发展和普及。
2、zigbee和matter都是智能家居方面出色的协议,目前市面上的智能家居产品只能支持两者其中的一个,zigbee设备连接zigbee网关,matter设备连接matter网关。如果用户更换了网关,就会导致原有的设备与更换后的网关固件协议不匹配,使得原有的家居设备无法继续使用,造成不便和浪费。
技术实现思路
1、基于上述技术现状和问题,本专利技术的设计目的在于提供一种通过ota升级方式进行zigbee固件和matter固件相互灵活切换的方法,以使设备适应不同的环境,确保固件能够在不同环境下正常工作。
2、为了实现上述目的,本专利技术采用的技术方案具体如下。
3、本专利技术提出的基于ota升级进行zigbee固件和matter固件切换的方法,包括以下步骤:
4、步骤1:获取设备信息,通过zigbee协议或matter协议获取待升级设备的设备信息,至少包括设备的固件类型、固件版本和相关属性信息;
5、步骤2:准备ota升级包,在固件合适位置添加固件标识;然后将固件信息表分别添加进mcuboot 固件的头部和尾部,生成zigbee或matter的基础固件,用于bootloader启动时的固件安全性和完整性校验;最后添加ota header,即ota时请求固件的信息描述部分,将matter固件转换成zigbee环境下可使用的ota固件,或将zigbee固件转换成matter环境下可使用的ota固件;
6、步骤3:推送ota升级包;
7、步骤4:设备升级,bootloader启动,判断分区表内是否存在固件,对存在的固件进行bootloader信息校验,然后读取固件类型,并根据固件类型进行相应的初始化,为matter固件和zigbee固件分别提供不同的启动环境,进行设备升级;
8、步骤5:重启设备,启动设备新固件。
9、进一步说明,所述步骤2中的固件标识添加在固件头部位置,所述固件标识能够标识zigbee固件和matter固件,还包含固件版本及固件魔数信息。
10、进一步说明,所述步骤2中生成的zigbee和matter的基础固件,采用相同的固件分区表,确保固件能够正常运行。
11、进一步说明,所述步骤2中zigbee固件的ota header,通过添加ota header脚本,根据输入的固件类型及固件版本参数信息,生成对应的格式,然后添加到生成的基础固件的头部。
12、更进一步说明,所述步骤2中zigbee固件ota header脚本输入的参数,需要与正在运行的zigbee固件的固件参数一致,否则生成的ota固件无法被zigbee ota正常识别,其中所述固件参数包括固件类型和固件魔数。
13、更进一步说明,所述步骤2中matter固件的ota固件通过调用matter的ota工具来生成,所述ota工具中传入的固件参数需要与正在运行的matter固件的参数一致,否则生成的ota固件无法被matter ota正常识别,其中所述固件参数包括pid参数和vid参数。
14、进一步说明,所述步骤4中matter固件启动环境的初始化,具体包括中断配置和外设的初始化。
15、进一步说明,所述步骤4中zigbee固件启动环境的初始化,包括两种启动方式,一种是bootloader初始化中断优先级,zigbee固件不需要再次初始化中断优先级;另一种是bootloader不对中断优先级进行初始化,而是在固件启动后执行正常的功能前主动初始化中断优先级。
16、本专利技术的有益效果为:本专利技术基于mcuboot修改了bootloader,使其具备同时适配zigbee固件和matter固件启动的能力,通过识别不同的固件类型,动态选择相应的启动环境和流程,确保固件启动的稳定性和适配性;生成了对应的zigbee固件和matter固件的ota固件,通过ota更新升级方式实现不同固件间的灵活切换,使固件切换更加便捷和高效。本专利技术不仅实现了zigbee固件和matter固件之间的灵活切换,还提高了系统的复用能力,使物联网设备可以在不同环境下正常工作。
本文档来自技高网...【技术保护点】
1.基于OTA升级进行zigbee固件和matter固件切换的方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于OTA升级进行zigbee固件和matter固件切换的方法,其特征在于,所述步骤2中的固件标识添加在固件头部位置,所述固件标识能够标识zigbee固件和matter固件,其中还包含固件版本和固件魔数信息。
3.根据权利要求1所述的基于OTA升级进行zigbee固件和matter固件切换的方法,其特征在于,所述步骤2中生成的zigbee和matter的基础固件,采用相同的固件分区表,确保固件能够正常运行。
4.根据权利要求1所述的基于OTA升级进行zigbee固件和matter固件切换的方法,其特征在于,所述步骤2中zigbee固件的OTA header,通过添加OTA header脚本,根据输入的固件类型及固件版本参数信息,生成对应的格式,然后添加到生成的基础固件的头部,所述OTA header脚本输入的参数,需要与正在运行的zigbee固件的固件参数一致,否则生成的OTA固件无法被zigbee OTA正常识别。
< ...【技术特征摘要】
1.基于ota升级进行zigbee固件和matter固件切换的方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于ota升级进行zigbee固件和matter固件切换的方法,其特征在于,所述步骤2中的固件标识添加在固件头部位置,所述固件标识能够标识zigbee固件和matter固件,其中还包含固件版本和固件魔数信息。
3.根据权利要求1所述的基于ota升级进行zigbee固件和matter固件切换的方法,其特征在于,所述步骤2中生成的zigbee和matter的基础固件,采用相同的固件分区表,确保固件能够正常运行。
4.根据权利要求1所述的基于ota升级进行zigbee固件和matter固件切换的方法,其特征在于,所述步骤2中zigbee固件的ota header,通过添加ota header脚本,根据输入的固件类型及固件版本参数信息,生成对应的格式,然后添加到生成的基础固件的头部,所述ota header脚本输入的参数,需要与正在运行的zigbee固件的固件参数一致,否则生成的ota固件无法被zig...
【专利技术属性】
技术研发人员:王琦凡,朱渊,
申请(专利权)人:深圳市中易腾达科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。