1.本发明涉及技术领域,尤其涉及一种在智能模组侧的应用功能固件动态加载的方法。
背景技术:2.当前物联网消费类产品如大小家电,照明,电工等以各种通信模组为主的产品业务需求千变万化,当最终产品到了消费者手中,因平台升级或前期隐含问题没有发现的故障原因,各大物联网云平台厂家需要针对性对用户手中的智能产品进行固件升级便于智能产品持续的稳定运行,这就要求智能通信模组在不影响产品使用体验的前提下,能迅速满足客户的产品业务更新升级的需求。
3.目前大多数的解决方案是通过在物联网iot云平台更新智能通信模组端的功能固件,通过手机app来对产品进行远程ota升级,升级成功后通信模组需要重启来运行iot云平台下发的新的固件,这将会带来诸如手机app操作复杂,升级时间长,产品使用体验感差等问题,部分用户还会频繁碰到因网络原因造成多次升级不成功,甚至升级失败把智能产品变为呆机的挑战。
4.目前智能产品侧为了迭代,升级产品增强型的业务功能,需要开发人员编译好相应的功能固件并手动放到iot云平台,终端消费者通过手机app来对产品进行远程ota升级,大大降低了产品使用体验感以及由于人为操作失误带来的升级失败后产品无法控制而报废的风险。因此非常有必要通过一种设备侧的工作参数动态加载的方式来替代整个功能固件远程ota升级来实现产品业务功能的快速更新,迭代。
5.因此,现有技术存在缺陷,需要改进。
技术实现要素:6.本发明要解决的技术问题是:提供一种在智能模组侧的应用功能固件动态加载的方法,解决由于固件过大或网络环境差而导致的远程升级过程中出现的升级卡顿,失败,产品报废等风险。
7.本发明的技术方案如下:提供一种在智能模组侧的应用功能固件动态加载的方法,包括以下步骤。
8.s1:在设备端上烧录全业务功能应用库固件,在设备端烧录设备端与iot云平台交互的动态加载指令协议;所述全业务功能应用库固件的功能代码存放在flash的指定区域。
9.s2:设备端第一次在iot云平台鉴权后自动上报产品全功能应用库的指令信息到iot云平台。
10.s3:设备端每次上电后通过mqtt上报当前设备已持的业务功能指令到iot云平台。
11.s4:iot云平台通过对特定地区和/或特定设备下发需要热更新的业务功能应用指令。
12.s5:设备端收到iot云平台下发的业务功能动态加载指令后,从flash的指定区域
引导对应的应用功能代码并运行新功能。
13.通过iot云平台给设备下发需要热更新的业务功能应用指令协议;,设备端收到iot云平台下发的业务功能动态加载指令后,从flash的指定区域引导对应的应用功能代码并运行新功能。,相比目前采用功能固件远程ota升级来实现产品业务功能的更新、迭代,大大降低了产品使用体验感以及由于人为操作失误带来的升级失败后产品无法控制而报废的风险,方便用户使用。
14.进一步地,在步骤s4中,云平台根据设备端所在区域、客户等级下发设备端需要支持的功能指令到设备端。
15.进一步地,所述设备端包括:电控端、与电控端电性连接的通信模组;所述通信模组与所述iot云平台通信连接。
16.进一步地,所述通信模组为蓝牙模组、wifi模组、nbiot模组中的任意一种。
17.本发明完全通过物联网iot云平台与产品之间通过动态加载指令协议来实现产品业务功能的热更新,本方法与目前常规的全功能ota升级以及差分升级的区别主要有以下几点:
18.1.不需要iot云平台下发整个应用程序固件或者是差分后的应用固件。
19.2.iot云平台根据产品配置信息如客户群体,地区,服务等级下发需要动态加载的功能指令协议(功能指令协议对应需要动态加载的业务功能)到指定的产品端。
20.3.无需人为操作手机app来升级应用固件,对终端消费用户是无感的升级,且动态热更新成功后,设备无需重启变可持续使用。
21.通过本发明将会大大提升产品的使用体验感以及解决由于操作复杂而带来的升级失败,或者由于固件过大或网络环境差而导致的远程升级过程中出现的升级卡顿,失败,产品报废等风险。
22.采用上述方案,本发明提供一种在智能模组侧的应用功能固件动态加载的方法,极大提升了产品业务功能迭代更新的使用体验、全过程无需人为操作;解决ota升级过程中因升级失败而带来的设备无法正常使用的风险;极大缩短了产品侧新的业务功能更新、迭代周期。
附图说明
23.图1为本发明的流程示意图。
具体实施方式
24.以下结合附图和具体实施例,对本发明进行详细说明。
25.请参阅图1,本发明提供一种在智能模组侧的应用功能固件动态加载的方法,包括以下步骤。
26.s1:在设备端上烧录全业务功能应用库固件,在设备端烧录设备端与iot云平台交互的动态加载指令协议;所述全业务功能应用库固件的功能代码存放在flash的指定区域。所述设备端包括:电控端、与电控端电性连接的通信模组;所述通信模组与所述iot云平台通信连接。所述通信模组为蓝牙模组、wifi模组、nbiot模组中的任意一种。
27.s2:设备端第一次在iot云平台鉴权后自动上报产品全功能应用库的指令信息到
iot云平台。
28.s3:设备端每次上电后通过mqtt上报当前设备已持的业务功能指令到iot云平台。
29.s4:iot云平台通过对特定地区和/或特定设备下发需要热更新的业务功能应用指令。云平台根据设备端所在区域、客户等级下发设备端需要支持的功能指令到设备端。
30.s5:设备端收到iot云平台下发的业务功能动态加载指令后,从flash的指定区域引导对应的应用功能代码并运行新功能。
31.本方案通过iot云平台给设备下发需要热更新的业务功能应用指令协议;设备端收到iot云平台下发的业务功能动态加载指令后,从flash的指定区域引导对应的应用功能代码并运行新功能。相比目前采用功能固件远程ota升级来实现产品业务功能的更新、迭代,大大降低了产品使用体验感以及由于人为操作失误带来的升级失败后产品无法控制而报废的风险,方便用户使用。
32.以阿里天猫平台的取暖器产品为例:
33.1.设备固件实现全功能应用库如电源开关(普通),加热档位(普通),温度调节(普通),节能模式(普通),净化功能(普通),定时关机(普通),定时开机(普通),故障上报(普通),童锁(普通),iot云平台定时(增值功能),语音控制(增值功能)并将功能库代码存放在flash指定区域。
34.2.设备上线后与云平台鉴权,云平台根据设备所在区域,客户等级(不同等级的客户,其产品支持的功能等级有差异)下发设备需要支持的功能指令协议到设备端。
35.3.如果某一地区的客户有需求将自己的产品服务等级提升,iot云平台只需下发高级功能的指令协议到设备侧,设备从指定的flash区域内动态加载对应的业务功能代码并运行,产品即可完成服务升级,无需复杂的人为操作来达到类似于ota升级动作。
36.综上所述,本发明提供一种在智能模组侧的应用功能固件动态加载的方法,极大提升了产品业务功能迭代更新的使用体验、全过程无需人为操作;解决ota升级过程中因升级失败而带来的设备无法正常使用的风险;极大缩短了产品侧新的业务功能更新、迭代周期。
37.以上仅为本发明的较佳实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
技术特征:1.一种在智能模组侧的应用功能固件动态加载的方法,其特征在于,包括以下步骤:s1:在设备端上烧录全业务功能应用库固件,在设备端烧录设备端与iot云平台交互的动态加载指令协议;所述全业务功能应用库固件的功能代码存放在flash的指定区域;s2:设备端第一次在iot云平台鉴权后自动上报产品全功能应用库的指令信息到iot云平台;s3:设备端每次上电后通过mqtt上报当前设备已持的业务功能指令到iot云平台;s4:iot云平台通过对特定地区和/或特定设备下发需要热更新的业务功能应用指令;s5:设备端收到iot云平台下发的业务功能动态加载指令后,从flash的指定区域引导对应的应用功能代码并运行新功能。2.根据权利要求1所述的一种在智能模组侧的应用功能固件动态加载的方法,其特征在于,在步骤s4中,云平台根据设备端所在区域、客户等级下发设备端需要支持的功能指令到设备端。3.根据权利要求1所述的一种在智能模组侧的应用功能固件动态加载的方法,其特征在于,所述设备端包括:电控端、与电控端电性连接的通信模组;所述通信模组与所述iot云平台通信连接。4.根据权利要求3所述的一种在智能模组侧的应用功能固件动态加载的方法,其特征在于,所述通信模组为蓝牙模组、wifi模组、nbiot模组中的任意一种。
技术总结本发明公开一种在智能模组侧的应用功能固件动态加载的方法。本发明完全通过物联网IOT云平台与产品之间通过动态加载指令协议来实现产品业务功能的热更新。不需要IOT云平台下发整个应用程序固件或者是差分后的应用固件;IOT云平台根据产品配置信息如客户群体,地区,服务等级下发需要动态加载的功能指令协议(功能指令协议对应需要动态加载的业务功能)到指定的产品端;无需人为操作手机APP来升级应用固件,对终端消费用户是无感的升级,且动态热更新成功后,设备无需重启变可持续使用。设备无需重启变可持续使用。设备无需重启变可持续使用。
技术研发人员:盛浩 唐林 吴凯华 孙斌 张少峰 徐盎
受保护的技术使用者:深圳市集贤科技有限公司
技术研发日:2022.07.25
技术公布日:2022/11/1