CN104915237B - 蓝牙设备固件程序的升级、升级控制方法及设备 - Google Patents

蓝牙设备固件程序的升级、升级控制方法及设备 Download PDF

Info

Publication number
CN104915237B
CN104915237B CN201510356963.XA CN201510356963A CN104915237B CN 104915237 B CN104915237 B CN 104915237B CN 201510356963 A CN201510356963 A CN 201510356963A CN 104915237 B CN104915237 B CN 104915237B
Authority
CN
China
Prior art keywords
bluetooth equipment
firmware program
upgrade
updating firmware
updating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201510356963.XA
Other languages
English (en)
Other versions
CN104915237A (zh
Inventor
袁涛
梁玉锋
龙元维
程维新
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Hai Yun New Energy Co Ltd
Original Assignee
Shenzhen Hai Yun New Energy Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Hai Yun New Energy Co Ltd filed Critical Shenzhen Hai Yun New Energy Co Ltd
Priority to CN201510356963.XA priority Critical patent/CN104915237B/zh
Publication of CN104915237A publication Critical patent/CN104915237A/zh
Application granted granted Critical
Publication of CN104915237B publication Critical patent/CN104915237B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明提供蓝牙设备固件程序的升级、升级控制方法及设备,涉及通信技术领域。该升级方法包括:蓝牙设备上电后,自动判断是否启动固件程序升级;若启动,则使蓝牙设备进入等待固件升级状态,并通过APP端向与蓝牙设备建立有物理链路连接的无线微控制器发送升级指令;蓝牙设备接收无线微控制器发送检测指令,并根据检测指令将等待固件升级状态反馈至无线微控制器,使无线微控制器根据升级指令从云端获取相应的固件程序升级包,并将固件程序升级包返回至蓝牙设备;蓝牙设备利用固件程序升级包进行固件程序升级。本发明可以使蓝牙设备自动完成固件程序升级,无需用户干预,操作步骤简单。

Description

蓝牙设备固件程序的升级、升级控制方法及设备
技术领域
本发明属于通信技术领域,尤其涉及蓝牙设备固件程序的升级、升级控制方法及设备。
背景技术
随着物联网、车联网的快速发展,智能硬件、智能家居的相关产品呈现多元化,使用范围越来越广。自推出蓝牙规范4.0以来,鉴于蓝牙在低功耗方面的优越表现,使得蓝牙设备在物联网、车联网领域中使用十分广泛。蓝牙设备能够实现固件程序升级也成为了用户和厂家的急切需求。现有蓝牙设备固件程序升级的方式有如下两种:
一种是,蓝牙设备通过USB线与电脑连接,通过电脑下载安装升级所需的固件程序,这种升级方式需要从用户从网络手动下载固件程序文件到本地计算机,然后再手动将固件文件下载到蓝牙设备,其操作步骤较为繁琐;
另一种是,蓝牙设备通过内置蓝牙与智能手机、平板电脑等建立连接,然后对蓝牙设备中的固件程序进行空中升级,这种空中升级的方式也需要用户手动操作,操作步骤较为繁琐,而且限定了固件程序升级的距离,稳定性差,容易出现由于通讯距离较远而导致升级中断的问题。
发明内容
本发明实施例的目的在于提供蓝牙设备固件程序的升级、升级控制方法及设备,旨在解决上述蓝牙设备固件程序升级的操作步骤较为繁琐,且限定了固件程序升级的距离,稳定性差以及容易出现由于通讯距离较远而导致升级中断的问题。
本发明实施例是这样实现的,一种蓝牙设备固件程序的升级方法,包括:
蓝牙设备上电后,自动判断是否启动固件程序升级;
若启动固件程序升级,则使所述蓝牙设备进入等待固件升级状态,并通过APP端向与所述蓝牙设备建立有物理链路连接的无线微控制器发送升级指令;
所述蓝牙设备接收所述无线微控制器发送的检测指令,并根据所述检测指令将所述等待固件升级状态反馈至所述无线微控制器,使所述无线微控制器根据所述升级指令从所述云端获取相应的固件程序升级包,并将所述固件程序升级包返回至所述蓝牙设备;
所述蓝牙设备接收所述固件程序升级包,并利用所述固件程序升级包进行固件程序升级。
在本发明实施例所述的蓝牙设备固件程序的升级方法中,所述蓝牙设备上电后,自动判断是否启动固件程序升级具体包括:
所述蓝牙设备上电后,自动检测自身flash中的固件程序是否完整;
若所述固件程序不完整,则所述蓝牙设备启动固件程序升级,并自动进入等待固件升级状态;
若所述固件程序完整,则通过所述无线控制器将所述固件程序的第一版本号发送至所述云端,使所述云端将所述第一版本号和自身存储的固件程序的第二版本号相比较,若所述第二版本号大于所述第一版本号,则所述云端启动固件程序升级,并通过所述无线控制器拉低所述蓝牙设备中蓝牙芯片的状态检测引脚,使所述蓝牙设备进入等待固件升级状态。
在本发明实施例所述的蓝牙设备固件程序的升级方法中,所述蓝牙设备接收所述固件程序升级包,并利用所述固件程序升级包进行固件程序升级具体包括:
所述蓝牙设备接收到所述固件程序升级包后,对所述固件程序升级包进行整体校验,若整体校验通过,则向所述无线微控制器发送相应的应答包,使所述无线微控制器根据所述应答包返回重启指令;
所述蓝牙设备根据所述重启指令进行重启,以完成所述固件程序升级。
本发明实施例的另一目的在于提供一种蓝牙设备固件程序的升级控制方法,包括:
无线微控制器通过所述蓝牙设备的通信接口与所述蓝牙设备建立物理链路连接;
所述无线控制器通过无线网络接收来自APP端的升级指令,并实时向所述蓝牙设备发送检测指令,检测所述蓝牙设备是否处于等待升级状态;
若所述蓝牙设备处于等待升级状态,则根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包通过所述物理链路连接返回至所述蓝牙设备,使所述蓝牙设备利用所述固件程序升级包进行固件程序升级。
在本发明实施例所述的蓝牙设备固件程序的升级控制方法中,根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包通过所述物理链路连接返回至所述蓝牙设备,使所述蓝牙设备利用所述固件程序升级包进行固件程序升级具体包括:
从所述升级指令中解析出相应的网络地址,根据所述网络地址向云端发送固件程序升级包下载请求;
接收所述云端根据所述下载请求返回的固件程序升级包,并对所述固件程序升级包进行MD5校验,若校验成功,则将所述固件程序升级包写入自身的flash中;
向所述蓝牙设备发送握手指令,并在接收到所述蓝牙设备根据所述握手指令返回的应答指令后,将所述固件程序升级包发送至所述蓝牙设备。
本发明实施例的另一目的在于提供一种蓝牙设备,包括:
判断模块,用于在所述蓝牙设备上电后,自动判断是否启动固件程序升级;
第一控制模块,用于若启动固件程序升级,则使所述蓝牙设备进入等待固件升级状态,并通过APP端向与所述蓝牙设备建立有物理链路连接的无线微控制器发送升级指令;
固件程序升级包获取模块,用于接收所述无线微控制器发送的检测指令,并根据所述检测指令将所述等待固件升级状态反馈至所述无线微控制器,使所述无线微控制器根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包返回至所述蓝牙设备;
升级模块,用于接收所述固件程序升级包,并利用所述固件程序升级包进行固件程序升级。
在本发明实施例所述的蓝牙设备中,所述判断模块包括:
检测单元,用于所述蓝牙设备上电后,自动检测自身flash中的固件程序是否完整;
启动单元,用于若所述固件程序不完整,则启动固件程序升级,并使所述蓝牙设备进入等待固件升级状态;若所述固件程序完整,则通过所述无线控制器将所述固件程序的第一版本号发送至所述云端,使所述云端将所述第一版本号和自身存储的固件程序的第二版本号相比较,若所述第二版本号大于所述第一版本号,则启动固件程序升级,并通过所述无线控制器拉低所述蓝牙设备中蓝牙芯片的状态检测引脚,使所述蓝牙设备进入等待固件升级状态。
在本发明实施例所述的蓝牙设备中,所述升级模块包括:
整体校验单元,用于在所述蓝牙设备接收到所述固件程序升级包后,对所述固件程序升级包进行整体校验,若整体校验通过,则向所述无线微控制器发送相应的应答包,使所述无线微控制器根据所述应答包返回重启指令至所述蓝牙设备;
重启单元,用于接收所述重启指令,并根据所述重启指令进行重启,以完成所述固件程序升级。
本发明实施例的另一目的在于提供一种无线微控制器,所述无线微控制器通过内置的WIFI模块与云端通信连接,所述无线微控制器还包括:
连接模块,用于通过所述蓝牙设备的通信接口与所述蓝牙设备建立物理链路连接;
升级指令获取模块,用于通过无线网络接收来自APP端的升级指令;
升级状态获取模块,用于实时向所述蓝牙设备发送检测指令,检测所述蓝牙设备是否处于等待升级状态;
第二控制模块,用于若所述蓝牙设备处于等待升级状态,则根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包通过所述物理链路连接返回至所述蓝牙设备,使所述蓝牙设备利用所述固件程序升级包进行固件程序升级。
在本发明实施例所述的无线微控制器中,所述第二控制模块包括:
网络地址解析单元,用于从所述升级指令中解析出相应的网络地址,根据所述网络地址向云端发送固件程序升级包下载请求;
MD5校验单元,用于接收所述云端根据所述下载请求返回的固件程序升级包,并对所述固件程序升级包进行MD5校验,若校验成功,则将所述固件程序升级包写入自身的flash中;
发送单元,用于向所述蓝牙设备发送握手指令,并在接收到所述蓝牙设备根据所述握手指令返回的应答指令后,将所述固件程序升级包发送至所述蓝牙设备。
实施本发明实施例提供的蓝牙设备固件程序的升级、升级控制方法及设备具有以下有益效果:
本发明实施例由于在蓝牙设备上电后,自动判断是否启动固件程序升级;若启动固件程序升级,则使所述蓝牙设备进入等待固件升级状态,并通过APP端向与所述蓝牙设备建立有物理链路连接的无线微控制器发送升级指令;所述蓝牙设备接收所述无线微控制器发送检测指令,并根据所述检测指令将所述等待固件升级状态反馈至所述无线微控制器,使所述无线微控制器根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包返回至所述蓝牙设备;所述蓝牙设备接收所述固件程序升级包,并利用所述固件程序升级包进行固件程序升级,从而可以使蓝牙设备自动完成固件程序升级,不需要用户手动操作,操作步骤简单;此外,由于无线微控制器的联网特性,本发明实施例使蓝牙设备能够在任何可以连接因特网的地方进行固件程序升级,而且其稳定性较好,不受通讯距离的影响,可以避免由于通讯距离较远而导致升级中断的问题。
附图说明
图1是本发明实施例提供的蓝牙设备固件程序的升级方法的具体实现流程图;
图2是本发明实施例提供的蓝牙设备固件程序的升级方法中S101的具体实现流程图;
图3是本发明实施例提供的蓝牙设备固件程序的升级方法中S104的具体实现流程图;
图4是本发明实施例提供的蓝牙设备固件程序的升级控制方法的具体实现流程图;
图5是本发明实施例提供的蓝牙设备固件程序的升级控制方法中S403的具体实现流程图;
图6是本发明实施例提供的蓝牙设备的结构示意图;
图7是本发明实施例提供的无线微控制器的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1示出了本发明实施例提供的蓝牙设备固件程序的升级方法的具体实现流程图。参见图1所示,本发明实施例提供的蓝牙设备固件程序的升级方法的包括:
在S101中,所述蓝牙设备上电后,自动判断是否启动固件程序升级。
在S102中,若启动固件程序升级,则使所述蓝牙设备进入等待固件升级状态,并通过APP端向与所述蓝牙设备建立有物理链路连接的无线微控制器发送升级指令。在本发明实施例中,蓝牙设备安装于移动终端内部,移动终端包括但不限于手机、平板电脑等终端设备,其中,APP端为安装于移动终端上的用于管理蓝牙设备的软件应用程序;当需要启动固件程序升级时,所述APP端可以通过云端向无线微控制器发送升级指令。
作为一具体实现示列,S101的具体实现过程参见图2所示:
在S201中,所述蓝牙设备上电后,自动检测自身flash中的固件程序是否完整。
在S202中,若所述固件程序不完整,则所述蓝牙设备启动固件程序升级,自动进入等待固件升级状态。
在本发明实施例中,当蓝牙设备检测到自身flash中的固件程序不完整时,蓝牙设备会自动启动固件程序升级进入等待固件升级状态,配置自身的串口参数为:波特率115200,数据位8,停止位,无校验。这里的固件程序不完整可能是由于蓝牙设备中固件程序的误操作等原因造成的。
在S203中,若所述固件程序完整,则通过所述无线控制器将所述固件程序的第一版本号发送至所述云端,使所述云端将所述第一版本号和自身存储的固件程序的第二版本号相比较,若所述第二版本号大于所述第一版本号,则由云端启动固件升级,并通过所述无线控制器拉低所述蓝牙设备中蓝牙芯片的状态检测引脚,使所述蓝牙设备进入等待固件升级状态。
在本发明实施例中,若所述固件程序完整,所述蓝牙设备则会将自身固件程序的第一版本号通过无线微控制器发送至云端,由云端接收所述第一版本号,并将所述第一版本号与其存储的最新版本的固件程序的第二版本号相比较,若第二版本号大于第一版本号,则向所述APP端推送固件升级消息,提示用户选择是否进行固件升级,然后在所述APP端接收用户根据上述提示输入的固件升级指令,并将该固件升级指令通过云端或者直接发送至无线微控制器,使无线微控制器根据所述固件升级指令拉低所述蓝牙设备中蓝牙芯片的状态检测引脚,并重启所述蓝牙设备,使所述蓝牙设备进入等待固件升级状态。
在S103中,所述蓝牙设备接收所述无线微控制器发送的检测指令,并根据所述检测指令将所述等待固件升级状态反馈至所述无线微控制器,使所述无线微控制器根据升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包返回至所述蓝牙设备。
在本发明实施例中,当固件程序不完整时,无线控制器在检测到蓝牙设备处于等待固件升级状态后,会向云端发送一个伪版本号,使云端根据该伪版本号向APP端推送固件升级消息,提示用户选择是否进行固件升级,然后在所述APP端接收用户根据上述提示输入的固件升级指令,并将该固件升级指令通过云端或者直接发送至无线微控制器,使无线控制器根据所述固件升级指令从所述云端获取相应的固件程序升级包。当固件程序完整时,无线控制器在检测到蓝牙设备处于等待固件升级状态后,会直接根据升级指令从云端获取相应的固件程序升级包。
在S104中,所述蓝牙设备接收所述固件程序升级包,并利用所述固件程序升级包进行固件程序升级。S104的具体实现流程参见图3所示:
在S301中,所述蓝牙设备接收到所述固件程序升级包后,对所述固件程序升级包进行整体校验,若整体校验通过,则向所述无线微控制器发送相应的应答包,使所述无线微控制器根据所述应答包返回重启指令。
在S302中,所述蓝牙设备根据所述重启指令进行重启,以完成所述固件程序升级。
在本发明实施例中,蓝牙设备在接收到一个完整的分包后,需要先对该分包进行校验,若校验通过,才能将分包写入自身的flash中,并向无线微控制器回复接收成功的应答包;若校验未通过,则丢弃该分包,并向无线微控制器回复接收失败的应答包,使无线微控制器重传该分包。当所有的分包均发送完成后,蓝牙设备会对接收到的所有分包进行整体校验,若校验通过,则向无线微控制器发送相应的应答包,并接收无线微控制器根据该应答包返回的重启指令进行重启,以完成升级;反之,若校验未通过,则重新启动固件程序升级,并重新向无线微控制器发送升级请求。
本发明实施例提供的蓝牙设备固件程序的升级方法由于在蓝牙设备上电后,自动判断是否启动固件程序升级;若启动固件程序升级,则使所述蓝牙设备进入等待固件升级状态,并通过APP端向与所述蓝牙设备建立有物理链路连接的无线微控制器发送升级指令;所述蓝牙设备接收所述无线微控制器发送的检测指令,并根据所述检测指令将所述等待固件升级状态反馈至所述无线微控制器,使所述无线微控制器根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包返回至所述蓝牙设备,从而可以使蓝牙设备在无需用户干预的情况下,自动完成固件程序升级,不需要用户手动操作,操作步骤较为简便。
图4示出了本发明实施例提供的蓝牙设备固件程序的升级控制方法的具体实现流程图,该方法的执行主体为上述方法中所提到的无线微控制器,参见图4所示,所述升级控制方法包括:
在S401中,无线微控制器通过所述蓝牙设备的通信接口与所述蓝牙设备建立物理链路连接;
在S402中,所述无线控制器通过无线网络接收来自APP端的升级指令,并实时向所述蓝牙设备发送检测指令,检测所述蓝牙设备是否处于等待升级状态;
在S403中,若所述蓝牙设备处于等待升级状态,则根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包通过所述物理链路连接返回至所述蓝牙设备,使所述蓝牙设备利用所述固件程序升级包进行固件程序升级。
S403的具体实现过程参见图5所示:
在S501中,若所述蓝牙设备处于等待升级状态,则从所述升级指令中解析出相应的网络地址,根据所述网络地址向云端发送固件程序升级包下载请求。
在本发明实施例中,蓝牙设备将升级指令以命令报文的形式发送至无线微控制器,无线微控制器在接收到命令报文后首先会对其进行校验,若校验未通过则舍弃该命令报文,若校验通过,则对该命令报文进行解析;进一步的,若解析出该命令报文是其他类型的命令,无线微控制器则在执行完相应的动作后,向蓝牙设备回复对应的应答报文;若解析出该命令报文为升级命令报文,无线微控制器则从该报文中解析出相应的网络地址,并根据所述网络地址向云端发送固件程序升级包下载请求。
在S502中,接收所述云端根据所述下载请求返回的固件程序升级包,并对所述固件程序升级包进行MD5校验,若校验成功,则将所述固件程序升级包写入自身的flash中。
在本发明实施例中,在S502中,所述无线微控制器接收所述云端根据所述下载请求返回的固件程序升级包,并对所述固件程序升级包进行MD5校验,若校验成功,则将所述固件程序升级包写入自身的flash中;反之,若校验不成功,无线控制器则重新向云端发送固件程序升级包下载请求,如此反复,直到达到限定的失败次数或者下载的固件程序升级包MD5校验通过,则停止向云端发送固件程序升级包下载请求。
在本发明实施例中,无线微控制器内置有WIFI模块,并通过WIFI模块与云端建立有通信连接;此外,由于无线微控制器内存受限,因此,固件程序升级包只能分块下载,分块校验,并分块写入flash中。
在S503中,向所述蓝牙设备发送握手指令,并在接收到所述蓝牙设备根据所述握手指令返回的应答指令后,将所述固件程序升级包发送至所述蓝牙设备。
在本发明实施例中,无线微控制器在向蓝牙设备发送握手指令后,在规定的时间内未收到应答,则继续向蓝牙设备发送握手指令,直到收到蓝牙设备的应答指令后将固件程序升级包分包发送至蓝牙设备,每个分包均包含1024字节,并按顺序发送至蓝牙设备,当无线微控制器发送完单个分包后,需要接收到蓝牙设备回复的应答包后才能发送下一个分包。每个分包中都携带有自己的校验值,以便蓝牙设备在接收到分包后根据校验值判断是否正确接收;无线微控制器每发送完一个分包,都必须在规定的时间内收到蓝牙设备根据校验接收是否正确后返回的应答包,并根据应答包判断是否发送成功,若应答超时或者发送失败,无线微控制器则必须重新向蓝牙设备发送该分包。此外,无线微控制器每成功发送完一个分包时,均会根据蓝牙设备返回的应答指令判断固件程序升级包是否全部发送完成,若未完成,则继续发送分包;若全部发送完成,则重启蓝牙设备,使蓝牙设备完成固件程序升级。
以上可以看出,本发明实施例提供的蓝牙设备固件程序的升级控制方法,可以在无需用户干预的情况下,使蓝牙设备自动完成固件程序升级;另外,使蓝牙设备能够在任何可以连接因特网的地方进行固件程序升级,而且其稳定性较好,不受通讯距离的影响,可以避免由于通讯距离较远而导致升级中断的问题;此外,还能实现对批量蓝牙设备中的同时升级。
图6示出了本发明实施例提供的蓝牙设备的结构示意图,该蓝牙设备用于运行图1~图3实施例所示的方法,为了便于说明仅仅示出了与本发明实施例中相关的部分。
参见图6所示,本发明实施例提供的蓝牙设备1包括:
判断模块11,用于在所述蓝牙设备1上电后,自动判断是否启动固件程序升级;
第一控制模块12,用于若启动固件程序升级,则使所述蓝牙设备1进入等待固件升级状态,并通过APP端向与所述蓝牙设备1建立有物理链路连接的无线微控制器2发送升级指令;
固件程序升级包获取模块13,用于接收所述无线微控制器2发送的检测指令,并根据所述检测指令将所述等待固件升级状态反馈至所述无线微控制器2,使所述无线微控制器2根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包返回至所述蓝牙设备1;
升级模块14,用于所述蓝牙设备1接收所述固件程序升级包,并利用所述固件程序升级包进行固件程序升级。
优选的,所述判断模块11包括:
检测单元111,用于所述蓝牙设备1上电后,自动检测自身flash中的固件程序是否完整;
启动单元112,用于若所述固件程序不完整,则启动固件程序升级,并使所述蓝牙设备进入等待固件升级状态;若所述固件程序完整,则通过所述无线控制器2将所述固件程序的第一版本号发送至所述云端,使所述云端将所述第一版本号和自身存储的固件程序的第二版本号相比较,若所述第二版本号大于所述第一版本号,则启动固件程序升级,并通过所述无线控制器2拉低所述蓝牙设备1中蓝牙芯片的状态检测引脚,使所述蓝牙设备1进入等待固件升级状态。
优选的,所述升级模块14包括:
整体校验单元141,用于在所述蓝牙设备1接收到所述固件程序升级包后,对所述固件程序升级包进行整体校验,若整体校验通过,则向所述无线微控制器2发送相应的应答包,使所述无线微控制器2根据所述应答包返回重启指令至所述蓝牙设备1;
重启单元142,用于接收所述重启指令,并根据所述重启指令进行重启,以完成所述固件程序升级。
本发明实施例提供的蓝牙设备1,同样可以在无需用户干预的情况下,自动完成固件程序升级,不需要用户手动操作,操作步骤较为简便。
图7示出了本发明实施例提供的无线微控制器2的结构示意图,该无线微控制器2用于运行图4~图5实施例所示的方法,为了便于说明仅仅示出了与本发明实施例相关的部分。
参见图7所示,本发明实施例提供的一种无线微控制器2,所述无线微控制器2通过内置的WIFI模块21与云端通信连接,所述无线微控制器2还包括:
连接模块22,用于通过蓝牙设备1的通信接口与所述蓝牙设备1建立物理链路连接;
升级指令获取模块23,用于通过无线网络接收来自的APP端的升级指令;
升级状态获取模块24,用于实时向所述蓝牙设备1发送检测指令,检测所述蓝牙设备1是否处于等待升级状态;
第二控制模块25,用于若所述蓝牙设备1处于等待升级状态,则根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包通过所述物理链路连接返回至所述蓝牙设备1,使所述蓝牙设备1利用所述固件程序升级包进行固件程序升级。
优选的,所述第二控制模块25包括:
网络地址解析单元251,用于从所述升级指令中解析出相应的网络地址,根据所述网络地址向云端发送固件程序升级包下载请求;
MD5校验单元252,用于接收所述云端根据所述下载请求返回的固件程序升级包,并对所述固件程序升级包进行MD5校验,若校验成功,则将所述固件程序升级包写入自身的flash中;
发送单元253,用于向所述蓝牙设备1发送握手指令,并在接收到所述蓝牙设备1根据所述握手指令返回的应答指令后,将所述固件程序升级包发送至所述蓝牙设备1。
本发明实施例提供的无线微控制器2,可以在无需用户干预的情况下,使蓝牙设备1自动完成固件程序升级;另外,使蓝牙设备1能够在任何可以连接因特网的地方进行固件程序升级,而且其稳定性较好,不受通讯距离的影响,可以避免由于通讯距离较远而导致升级中断的问题;此外,还能实现对批量蓝牙设备1中的同时升级。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种蓝牙设备固件程序的升级方法,其特征在于,包括:
所述蓝牙设备上电后,自动判断是否启动固件程序升级;
若启动固件程序升级,则使所述蓝牙设备进入等待固件升级状态,并通过APP端向与所述蓝牙设备建立有物理链路连接的无线微控制器发送升级指令;
所述蓝牙设备接收所述无线微控制器发送的检测指令,并根据所述检测指令将所述等待固件升级状态反馈至所述无线微控制器,使所述无线微控制器根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包返回至所述蓝牙设备;
所述蓝牙设备接收所述固件程序升级包,并利用所述固件程序升级包进行固件程序升级;
自动判断是否启动固件程序升级具体包括:
所述蓝牙设备上电后,自动检测自身flash中的固件程序是否完整;
若所述固件程序不完整,则所述蓝牙设备启动固件程序升级,并自动进入等待固件升级状态。
2.如权利要求1所述的蓝牙设备固件程序的升级方法,其特征在于,所述蓝牙设备上电后,所述自动判断是否启动固件程序升级还包括:
若所述固件程序完整,则通过所述无线微控制器将所述固件程序的第一版本号发送至所述云端,使所述云端将所述第一版本号和自身存储的固件程序的第二版本号相比较,若所述第二版本号大于所述第一版本号,则所述云端启动固件程序升级,并通过所述无线微控制器拉低所述蓝牙设备中蓝牙芯片的状态检测引脚,使所述蓝牙设备进入等待固件升级状态。
3.如权利要求1所述的蓝牙设备固件程序的升级方法,其特征在于,所述蓝牙设备接收所述固件程序升级包,并利用所述固件程序升级包进行固件程序升级具体包括:
所述蓝牙设备接收到所述固件程序升级包后,对所述固件程序升级包进行整体校验,若整体校验通过,则向所述无线微控制器发送相应的应答包,使所述无线微控制器根据所述应答包返回重启指令;
所述蓝牙设备根据所述重启指令进行重启,以完成所述固件程序升级。
4.一种蓝牙设备固件程序的升级控制方法,其特征在于,包括:
无线微控制器通过所述蓝牙设备的通信接口与所述蓝牙设备建立物理链路连接;
所述无线微控制器通过无线网络接收来自APP端的升级指令,并实时向所述蓝牙设备发送检测指令,检测所述蓝牙设备是否处于等待升级状态;
若所述蓝牙设备处于等待升级状态,则根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包通过所述物理链路连接返回至所述蓝牙设备,使所述蓝牙设备利用所述固件程序升级包进行固件程序升级;
其中,若所述蓝牙设备处于等待升级状态,则根据所述升级指令从云端获取相应的固件程序升级包包括:
若所述蓝牙设备处于等待升级状态,则向云端发送一个为版本号,使云端根据所述为版本号向蓝牙设备的APP端推送固件升级消息,提示用户是否进行固件升级,若接收到用户根据提示通过所述APP端输入的固件升级指令,则根据所述固件升级指令从云端获取相应的固件程序升级包。
5.如权利要求4所述的蓝牙设备固件程序的升级控制方法,其特征在于,根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包通过所述物理链路连接返回至所述蓝牙设备,使所述蓝牙设备利用所述固件程序升级包进行固件程序升级具体包括:
从所述升级指令中解析出相应的网络地址,根据所述网络地址向云端发送固件程序升级包下载请求;
接收所述云端根据所述下载请求返回的固件程序升级包,并对所述固件程序升级包进行MD5校验,若校验成功,则将所述固件程序升级包写入自身的flash中;
向所述蓝牙设备发送握手指令,并在接收到所述蓝牙设备根据所述握手指令返回的应答指令后,将所述固件程序升级包发送至所述蓝牙设备。
6.一种蓝牙设备,其特征在于,包括:
判断模块,用于在所述蓝牙设备上电后,自动判断是否启动固件程序升级;
第一控制模块,用于若启动固件程序升级,则使所述蓝牙设备进入等待固件升级状态,并通过APP端向与所述蓝牙设备建立有物理链路连接的无线微控制器发送升级指令;
固件程序升级包获取模块,用于接收所述无线微控制器发送的检测指令,并根据所述检测指令将所述等待固件升级状态反馈至所述无线微控制器,使所述无线微控制器根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包返回至所述蓝牙设备;
升级模块,用于接收所述固件程序升级包,并利用所述固件程序升级包进行固件程序升级;
所述判断模块包括:
检测单元,用于所述蓝牙设备上电后,自动检测自身flash中的固件程序是否完整;
启动单元,用于若所述固件程序不完整,则启动固件程序升级,并使所述蓝牙设备进入等待固件升级状态。
7.如权利要求6所述的蓝牙设备,其特征在于,所述启动单元还用于:
若所述固件程序完整,则通过所述无线微控制器将所述固件程序的第一版本号发送至所述云端,使所述云端将所述第一版本号和自身存储的固件程序的第二版本号相比较,若所述第二版本号大于所述第一版本号,则启动固件程序升级,并通过所述无线微控制器拉低所述蓝牙设备中蓝牙芯片的状态检测引脚,使所述蓝牙设备进入等待固件升级状态。
8.如权利要求6所述的蓝牙设备,其特征在于,所述升级模块包括:
整体校验单元,用于在所述蓝牙设备接收到所述固件程序升级包后,对所述固件程序升级包进行整体校验,若整体校验通过,则向所述无线微控制器发送相应的应答包,使所述无线微控制器根据所述应答包返回重启指令至所述蓝牙设备;
重启单元,用于接收所述重启指令,并根据所述重启指令进行重启,以完成所述固件程序升级。
9.一种无线微控制器,其特征在于,所述无线微控制器通过内置的WIFI模块与云端通信连接,所述无线微控制器还包括:
连接模块,用于通过蓝牙设备的通信接口与所述蓝牙设备建立物理链路连接;
升级指令获取模块,用于通过无线网络接收来自APP端的升级指令;
升级状态获取模块,用于实时向所述蓝牙设备发送检测指令,检测所述蓝牙设备是否处于等待升级状态;
第二控制模块,用于若所述蓝牙设备处于等待升级状态,则根据所述升级指令从云端获取相应的固件程序升级包,并将所述固件程序升级包通过所述物理链路连接返回至所述蓝牙设备,使所述蓝牙设备利用所述固件程序升级包进行固件程序升级;
其中,若所述蓝牙设备处于等待升级状态,则根据所述升级指令从云端获取相应的固件程序升级包包括:
若所述蓝牙设备处于等待升级状态,则向云端发送一个为版本号,使云端根据所述为版本号向蓝牙设备的APP端推送固件升级消息,提示用户是否进行固件升级,若接收到用户根据提示通过所述APP端输入的固件升级指令,则根据所述固件升级指令从云端获取相应的固件程序升级包。
10.如权利要求9所述的无线微控制器,其特征在于,所述第二控制模块包括:
网络地址解析单元,用于从所述升级指令中解析出相应的网络地址,根据所述网络地址向云端发送固件程序升级包下载请求;
MD5校验单元,用于接收所述云端根据所述下载请求返回的固件程序升级包,并对所述固件程序升级包进行MD5校验,若校验成功,则将所述固件程序升级包写入自身的flash中;
发送单元,用于向所述蓝牙设备发送握手指令,并在接收到所述蓝牙设备根据所述握手指令返回的应答指令后,将所述固件程序升级包发送至所述蓝牙设备。
CN201510356963.XA 2015-06-24 2015-06-24 蓝牙设备固件程序的升级、升级控制方法及设备 Expired - Fee Related CN104915237B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510356963.XA CN104915237B (zh) 2015-06-24 2015-06-24 蓝牙设备固件程序的升级、升级控制方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510356963.XA CN104915237B (zh) 2015-06-24 2015-06-24 蓝牙设备固件程序的升级、升级控制方法及设备

Publications (2)

Publication Number Publication Date
CN104915237A CN104915237A (zh) 2015-09-16
CN104915237B true CN104915237B (zh) 2019-02-15

Family

ID=54084319

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510356963.XA Expired - Fee Related CN104915237B (zh) 2015-06-24 2015-06-24 蓝牙设备固件程序的升级、升级控制方法及设备

Country Status (1)

Country Link
CN (1) CN104915237B (zh)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105302599A (zh) * 2015-10-15 2016-02-03 珠海格力电器股份有限公司 显示板程序的更新方法和装置
CN106648721A (zh) * 2015-11-04 2017-05-10 西安中兴新软件有限责任公司 一种软件升级方法及装置
CN105511903A (zh) * 2015-11-23 2016-04-20 广东欧珀移动通信有限公司 一种音频设备的升级方法和装置
CN105549995B (zh) * 2015-12-10 2019-05-24 Oppo广东移动通信有限公司 一种音频设备升级方法及装置
CN105740025A (zh) * 2016-02-04 2016-07-06 深圳创达云睿智能科技有限公司 基于蓝牙的固件程序升级方法和装置
CN105843645B (zh) * 2016-03-24 2020-01-14 浙江风向标科技有限公司 zigbee设备的固件升级方法和装置
US20170293478A1 (en) * 2016-04-11 2017-10-12 Tyco Fire & Security Gmbh Fire detection system with automatic firmware updating
CN105978937A (zh) * 2016-04-26 2016-09-28 江苏惠通集团有限责任公司 一种蓝牙从设备及其升级方法
CN106020861B (zh) * 2016-05-05 2019-09-24 惠州Tcl移动通信有限公司 一种智能手表的fota升级方法及系统
CN105897480A (zh) * 2016-05-11 2016-08-24 北京奇虎科技有限公司 车载终端及其固件功能完善方法
WO2018027442A1 (zh) * 2016-08-07 2018-02-15 李仁涛 一种蓝牙设备的无线升级方法、升级装置及蓝牙设备
CN106383692A (zh) * 2016-08-25 2017-02-08 中山市天启智能科技有限公司 一种单片机嵌入式设备ota升级方法
CN109791485B (zh) * 2016-09-14 2023-03-28 霍尼韦尔国际公司 基于网状网络的空中调制解调器固件升级
CN106681774B (zh) * 2016-12-30 2021-01-12 Tcl通力电子(惠州)有限公司 蓝牙扬声器的软件升级方法及智能终端
CN107085525A (zh) * 2017-03-17 2017-08-22 深圳市战音科技有限公司 基于蓝牙电子设备的软件升级方法及装置
CN106972961A (zh) * 2017-03-21 2017-07-21 上海动联信息技术股份有限公司 一种基于蓝牙的安全设备固件升级方法
CN107395389B (zh) * 2017-03-28 2022-04-05 厦门亚锝电子科技有限公司 一种基于蓝牙Mesh网络的调光器固件升级方法
CN107147519B (zh) * 2017-04-10 2021-03-26 北京德威特电气科技股份有限公司 设备升级的方法、装置和系统
CN107301064B (zh) * 2017-05-19 2021-08-06 深圳Tcl新技术有限公司 蓝牙固件的升级方法、电视终端及计算机可读存储介质
CN107222532A (zh) * 2017-05-23 2017-09-29 努比亚技术有限公司 一种无线固件升级方法、装置及计算机可读存储介质
CN107071714A (zh) * 2017-06-05 2017-08-18 Tcl移动通信科技(宁波)有限公司 一种移动终端及其蓝牙加载控制方法、及存储装置
CN107222643A (zh) * 2017-07-25 2017-09-29 深圳市芯中芯科技有限公司 一种基于软件app技术的蓝牙设备固件升级方法及系统
CN107463399A (zh) * 2017-07-31 2017-12-12 北京雷石天地电子技术有限公司 一种安卓系统下的内核固件升级方法及系统
CN109388421B (zh) * 2017-08-02 2022-01-04 宇瞻科技股份有限公司 快速更新固件的存储装置
CN107332589B (zh) * 2017-08-07 2023-02-03 深圳市升熙科技有限公司 一种基于蓝牙的固件升级装置
CN108023778A (zh) * 2017-12-14 2018-05-11 深圳市斑点猫信息技术有限公司 固件升级方法及其系统
CN110110037A (zh) * 2018-01-19 2019-08-09 北京盛世光明软件股份有限公司 一种硬件设备信息的处理方法和查询方法
CN108664261A (zh) * 2018-04-20 2018-10-16 北京硬壳科技有限公司 一种固件升级的方法及装置
CN108932772A (zh) * 2018-06-08 2018-12-04 烽火通信科技股份有限公司 无源电子锁和有源电子锁的智能管理终端及管理方法
CN108523581A (zh) * 2018-06-25 2018-09-14 四川长虹电器股份有限公司 一种人工智能茶杯系统及其控制方法
CN108989428B (zh) * 2018-07-17 2021-09-21 深圳市联新移动医疗科技有限公司 蓝牙终端升级方法、服务器、计算机可读存储介质及系统
CN110855462A (zh) * 2018-08-21 2020-02-28 深圳瑞利声学技术股份有限公司 一种蓝牙ota固件升级装置
CN109582330B (zh) * 2018-09-29 2021-08-03 创新先进技术有限公司 数据模型升级方法、装置、设备及可读存储介质
CN109495644A (zh) * 2018-11-02 2019-03-19 青岛云世纪信息科技有限公司 一种基于大文件传输的设备终端wifi升级方法
CN109640302A (zh) * 2018-12-06 2019-04-16 上海荣泰健康科技股份有限公司 基于ble蓝牙的程序更新方法、电子设备及移动终端
CN109857437A (zh) * 2019-01-22 2019-06-07 安克创新科技股份有限公司 一种蓝牙设备的升级方法及系统
CN109951842B (zh) * 2019-03-19 2022-03-15 厦门市思芯微科技有限公司 一种蓝牙固件升级中保留ble名称及mac地址的方法
CN111769962A (zh) * 2019-04-01 2020-10-13 成都启英泰伦科技有限公司 一种mcu固件ota升级方法
CN110399149A (zh) * 2019-06-26 2019-11-01 杭州智缤科技有限公司 一种低功耗场景下的远程升级方法
CN110427207B (zh) * 2019-08-07 2023-05-16 成都易明半导体有限公司 一种基于集控器的led路灯控制器固件程序升级方法
CN110659044A (zh) * 2019-08-29 2020-01-07 广东思派康电子科技有限公司 一种蓝牙设备升级方法
CN110704080B (zh) * 2019-09-17 2022-05-10 厦门市思芯微科技有限公司 一种通过Wi-Fi模块给蓝牙模块升级的方法
CN111752579A (zh) * 2019-10-17 2020-10-09 北京沃东天骏信息技术有限公司 蓝牙终端升级方法、装置、存储介质与电子设备
CN111866825A (zh) * 2019-12-30 2020-10-30 北京骑胜科技有限公司 蓝牙固件升级方法、装置、机载终端及存储介质
CN111459536A (zh) * 2020-03-31 2020-07-28 Tcl移动通信科技(宁波)有限公司 移动终端蓝牙固件更新方法、装置、终端设备和存储介质
CN112181460B (zh) * 2020-09-27 2024-01-16 深圳市豪恩声学股份有限公司 程序固件升级方法、装置、电子设备及存储介质
CN112135286A (zh) * 2020-10-12 2020-12-25 四川长虹电器股份有限公司 一种基于蓝牙固件升级传输效率提升的方法及装置
CN112286556A (zh) * 2020-10-30 2021-01-29 芯讯通无线科技(上海)有限公司 通信设备及其mcu的远程升级方法
CN112505607B (zh) * 2020-12-22 2023-07-04 昆明自动化成套集团股份有限公司 一种带定位功能支持远程升级的电压监测装置
CN113031985B (zh) * 2021-02-07 2022-10-14 厦门亿联网络技术股份有限公司 一种无线升级方法
CN113590151A (zh) * 2021-07-01 2021-11-02 福建野小兽健康科技有限公司 一种蓝牙设备ota升级的方法及系统
CN113613045A (zh) * 2021-07-05 2021-11-05 Oppo广东移动通信有限公司 蓝牙外设升级方法、装置、终端设备及存储介质
CN114679439A (zh) * 2021-12-31 2022-06-28 诺领科技(南京)有限公司 一种用于物联网基于蓝牙ble的辅助下载升级包方法
CN114785688B (zh) * 2022-06-21 2022-09-06 深圳市华曦达科技股份有限公司 一种终端设备升级方法及系统
CN115834382A (zh) * 2022-12-02 2023-03-21 安徽送变电工程有限公司 一种无人机中继基站的固件升级方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5257377A (en) * 1991-04-01 1993-10-26 Xerox Corporation Process for automatically migrating a subset of updated files from the boot disk to the replicated disks
CN1622038A (zh) * 2005-01-07 2005-06-01 北京北大方正电子有限公司 一种通过因特网对打印设备进行自动升级的方法
CN101814034A (zh) * 2009-02-19 2010-08-25 雷凌科技股份有限公司 具有固件更新功能的无线接入装置及其方法
CN104168327A (zh) * 2014-08-26 2014-11-26 许磊 一种外接设备自动升级的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5257377A (en) * 1991-04-01 1993-10-26 Xerox Corporation Process for automatically migrating a subset of updated files from the boot disk to the replicated disks
CN1622038A (zh) * 2005-01-07 2005-06-01 北京北大方正电子有限公司 一种通过因特网对打印设备进行自动升级的方法
CN101814034A (zh) * 2009-02-19 2010-08-25 雷凌科技股份有限公司 具有固件更新功能的无线接入装置及其方法
CN104168327A (zh) * 2014-08-26 2014-11-26 许磊 一种外接设备自动升级的方法

Also Published As

Publication number Publication date
CN104915237A (zh) 2015-09-16

Similar Documents

Publication Publication Date Title
CN104915237B (zh) 蓝牙设备固件程序的升级、升级控制方法及设备
CN104572564B (zh) 一种实现android移动设备与USB OTG主机通讯的方法
US10412207B2 (en) Mobile terminal, power adapter, and upgrade method thereof
CN101350990B (zh) 智能手机的cp升级方法
CN102646043B (zh) 移动终端软件升级方法、升级装置及移动终端
CN108833542B (zh) Tws耳机的升级方法及tws耳机
CN103399792A (zh) 基于Android的应用插件化实现方案
RU2009132388A (ru) Согласование загрузки между несколькими способными к загрузке устройствами
CN104283878A (zh) 基于云服务的安全型移动终端及其访问云服务器的方法
CN103365688A (zh) 一种安卓智能设备间软件自动安装与同步方法
CN104023257A (zh) 移动终端控制电视终端的方法及系统
CN103379446A (zh) 一种基于wifi的多终端控制方法及设备
CN109525420A (zh) 基于车载通讯模块的故障数据调取方法和装置
US9971591B2 (en) Mobile terminal, power adapter, and upgrade method thereof
CN109408090A (zh) 设备软件的升级方法、数据转化器及可读存储介质
CN104077163A (zh) 一种安装包的安装方法、装置和终端
CN103744707B (zh) 一种vci设备程序升级方法、装置和系统
CN104506942B (zh) 机顶盒及其电缆调制解调器系统的升级方法
CN113867758A (zh) 无人机自动升级方法、装置、无人机、遥控端及存储介质
CN109542477A (zh) 应用于耳机的升级方法、装置、电子设备及存储介质
CN109976243A (zh) 机器人同步控制方法、装置及设备
CN105429847A (zh) 客户端显示头像设置方法与装置
CN109189629B (zh) 基于usb设备实现终端远程控制的方法、存储介质
CN102196411A (zh) 一种移动通信终端及升级通信软件的方法
CN112203170B (zh) 一种光网络单元的升级方法、装置、介质及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 518000 Nanshan medical equipment Industrial Park, No. 1019, Nanshan Road, Nanshan District, Shenzhen, Guangdong Province, A211-A213

Applicant after: Shenzhen Hai Yun new energy Co.,Ltd.

Address before: 518000 Nanshan medical equipment Industrial Park, No. 1019 Nanhai Road, Shenzhen, Guangdong, Nanshan District B401-403

Applicant before: SHENZHEN LANDING TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190215