CN113821238B - 智能穿戴设备外设固件更新方法、装置、移动终端及介质 - Google Patents
智能穿戴设备外设固件更新方法、装置、移动终端及介质 Download PDFInfo
- Publication number
- CN113821238B CN113821238B CN202110881831.4A CN202110881831A CN113821238B CN 113821238 B CN113821238 B CN 113821238B CN 202110881831 A CN202110881831 A CN 202110881831A CN 113821238 B CN113821238 B CN 113821238B
- Authority
- CN
- China
- Prior art keywords
- wearable device
- intelligent wearable
- peripheral firmware
- peripheral
- firmware
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000002093 peripheral effect Effects 0.000 claims abstract description 317
- 230000008569 process Effects 0.000 claims abstract description 16
- 230000006855 networking Effects 0.000 claims abstract description 11
- 230000005540 biological transmission Effects 0.000 claims description 20
- 238000004891 communication Methods 0.000 claims description 17
- 238000001514 detection method Methods 0.000 claims description 4
- 230000001276 controlling effect Effects 0.000 description 29
- 239000004984 smart glass Substances 0.000 description 13
- 230000006870 function Effects 0.000 description 9
- 239000011521 glass Substances 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 230000005856 abnormality Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000008447 perception Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012858 packaging process Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
- H04W8/24—Transfer of terminal data
- H04W8/245—Transfer of terminal data from a network towards a terminal
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了智能穿戴设备外设固件更新方法、装置、移动终端及介质,所述方法包括:智能穿戴设备获取其外设固件版本号;智能穿戴设备联网从远程服务器获取对应最新的外设固件版本号,判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号;当高于时,则从远程服务器下载对应最新的外设固件文件到智能穿戴设备;检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为boot l oader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式。旨在解决设备更新固件繁琐、成功率低、失败后果严重的问题,大大提高设备自动更新固件过程中的稳定性以及更新成功率,为用户使用提供的方便。
Description
技术领域
本发明涉及智能穿戴设备技术领域,尤其涉及智能穿戴设备外设固件更新方法、装置、移动终端及介质。
背景技术
随着科技的发展和人们生活水平的不断提高,各种移动终端的使用越来越普及,而随着物联网的兴起与发展,智能穿戴设备的使用范围越来越广泛,功能需求也越来越多样,因此挂载在这些智能穿戴产品上的各种外设固件升级和维护问题也日益突出。
外设的固件大都在出厂前烧录于硬件设备的电可擦除只读存储器或FLASH芯片中,通常固件内所保存的程序是无法被用户直接读出或修改的。早期的硬件设备出厂后,如果外设的固件在使用过程中出现问题或者需要变更功能,则必须将整台设备返厂或由专业人员至设备现场进行固件更新,这样,固件更新维修效率低,费时费力。
因此,现有技术还有待改进和提高。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种智能穿戴设备外设固件更新方法、装置、移动终端及存储介质,本发明提供一种智能穿戴设备的外设固件更新方法,用以克服现有技术中用户进行外设固件更新时需要将整台设备返厂或由专业人员至设备现场进行固件更新或者更新整个硬件设备固件,固件更新效率低并且固件更新失败会造成设备失效等缺陷,本发明可以达到高效更新外设固件并大幅降低固件更新失败造成硬件设备失效的概率,同时还可快速满足用户个性化业务定制需求等效果,为用户的使用提供了方便。
为了解决上述技术问题,本发明所采用的技术方案如下:
一种智能穿戴设备外设固件更新方法,其中,所述方法包括:
智能穿戴设备开机检测其内的外设固件版本号;
智能穿戴设备联网从远程服务器获取对应最新的外设固件版本号,判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号;
当获取的远程服务器对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,则从远程服务器下载对应最新的外设固件文件到智能穿戴设备;
检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式。
所述的智能穿戴设备外设固件更新方法,其中,所述智能穿戴设备开机检测其内的外设固件版本号的步骤之前包括:
预先将需要升级的外设固件上传至远程服务器的指定位置存储,存储为最新的外设固件文件,所述外设固件文件包括:待更新固件、固件版本号、固件md5校验码。
所述的智能穿戴设备外设固件更新方法,其中,所述智能穿戴设备联网从远程服务器获取对应最新的外设固件版本号,判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号的步骤包括:
智能穿戴设备每隔预定时间联网从远程服务器获取对应最新的外设固件版本号;
将从远程服务器获取对应最新的外设固件版本号与智能穿戴设备当前外设固件版本号进行比对;
判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号。
所述的智能穿戴设备外设固件更新方法,其中,所述当获取的远程服务器对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,则从远程服务器下载对应最新的外设固件文件到智能穿戴设备的步骤包括:
当远程服务器获取对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,智能穿戴设备从远程服务器下载对应最新的外设固件文件,并存储到指定文件夹;
智能穿戴设备通过md5码校验下载的最新的外设固件文件是否完整;
当校验下载的最新的外设固件文件不完整,则控制重新下载最新的外设固件文件。
所述的智能穿戴设备外设固件更新方法,其中,所述检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式的步骤包括:
检测到外设固件文件下载完成并且校验下载的最新的外设固件文件是完整的,控制将智能穿戴设备切换到bootloader模式;
控制通过所述智能穿戴设备内置的bootloader通讯协议实现对智能穿戴设备的flash进行擦除,读取以及写入等操作,将下载的外设固件文件通过通讯协议烧写到智能穿戴设备的flash;
更新完成切换到正常使用模式。
所述的智能穿戴设备外设固件更新方法,其中,所述检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式的步骤包括:
检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式;
对所述外设固件文件进行分包传输,依次分包传输外设固件数据,并依次检测数据传输外设通讯是否返回正常ACK,当返回正常ACK则判定为所述外设固件文件全部传输完成;
控制将传输完成的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式。
所述的智能穿戴设备外设固件更新方法,其中,所述检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式的步骤还包括:
当检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备过程中检测到更新失败,则重新将下载的外设固件文件更新到智能穿戴设备。
一种智能穿戴设备外设固件更新装置,其中,所述装置包括:
检测模块,用于控制智能穿戴设备开机检测其内的外设固件版本号;
获取与判断模块,用于控制智能穿戴设备联网从远程服务器获取对应最新的外设固件版本号,判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号;
下载控制模块,用于当获取的远程服务器对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,则从远程服务器下载对应最新的外设固件文件到智能穿戴设备;
固件更新模块,用于检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式。
一种移动终端,其中,所述移动终端包括存储器、处理器及存储在所述存储器中并可在所述处理器上运行的智能穿戴设备外设固件更新程序,所述处理器执行所述智能穿戴设备外设固件更新程序时,实现任一项所述的智能穿戴设备外设固件更新方法的步骤。
一种计算机可读存储介质,其中,所述计算机可读存储介质上存储有智能穿戴设备外设固件更新程序,所述智能穿戴设备外设固件更新程序被处理器执行时,实现任一项所述的智能穿戴设备外设固件更新方法的步骤。
有益效果:与现有技术相比,本发明提供了一种智能穿戴设备外设固件更新方法,通过本发明的方法外设固件更新的大部分工作都是由设备自身来进行,减少了很多人为的操作、避免了设备拆机的麻烦,可以极大的提高升级的便利性。而且也不需要对整个智能穿戴硬件的估计进行更新升级,极大的提高了升级的安全性及稳定性。对于用户而言,在无感知的情况下就完成了设备功能的升级,能极大的提高用户体验,为用户的使用提供了方便。
附图说明
图1为本发明实施例提供的智能穿戴设备外设固件更新方法的具体实施方式的流程图。
图2为本发明第二实施例的具体实施流程图。
图3为本发明实施例提供的智能穿戴设备外设固件更新装置的原理框图。
图4为本发明实施例提供的终端设备的内部结构原理图。
具体实施方式
为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
需要说明,若本发明实施例中有涉及方向性指示(诸如上、下、左、右、前、后……),则该方向性指示仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
另外,若本发明实施例中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
随着科技的发展和人们生活水平的不断提高,各种移动终端的使用越来越普及,而随着物联网的兴起与发展,智能穿戴设备的使用范围越来越广泛,功能需求也越来越多样,因此挂载在这些智能穿戴产品上的各种外设固件升级和维护问题也日益突出。
经研究发现,外设的固件大都在出厂前烧录于硬件设备的电可擦除只读存储器或FLASH芯片中,通常固件内所保存的程序是无法被用户直接读出或修改的。早期的硬件设备出厂后,如果外设的固件在使用过程中出现问题或者需要变更功能,则必须将整台设备返厂或由专业人员至设备现场进行固件更新。
现有技术中,一些运算能力强的智能穿戴硬件设备,例如智能手表可以实现远程外设固件更新,具体过程是从服务器下载获取完整新版本穿戴设备固件,然后重新启动系统,烧录新版本穿戴设备固件以替换整个旧版本固件,然后再用新版本固件为外设进行升级更新。但是,此类外设固件更新方法不具有普适性,并且即便只是对外设芯片的业务功能作一些微小的改进或调整,也必需在每次固件更新时烧录更新整个穿戴设备固件,不仅更新效率低,而且一旦烧录更新失败,将会导致整个穿戴设备功能失效而无法启动,更勿论实现业务功能的变更调整,对用户体验造成不良影响。因此,如何提供一种能够高效更新穿戴设备外设固件并能够大幅降低固件更新失败造成穿戴设备功能失效的概率,同时还可以快速满足用户个性化业务定制需求的智能穿戴设备的外设固件更新方案成为亟待解决的问题。
为了解决上述问题,本发明实施例提供一种智能穿戴设备外设固件更新方法,根据本实施例的智能穿戴设备外设固件更新方法可以自动检测设备固件是否更新到最新版本;若并未更新到最新版本则从服务器端下载最新版本固件到智能穿戴设备中,并对下载完成的固件进行校验;若校验无问题则将穿戴设备设置为bootlader模式;控制将下载的外设固件文件更新到智能穿戴设备中;更新完毕后切换回到正常使用模式,避免了拆装机器的繁琐操作极大的提高了升级的便利性以及稳定性,且对于用户而言,在无感知的情况下就可以完成设备功能的升级,能够极大的提高用户体验。
示例性方法
第一实施例
如图1中所示,本发明实施例提供一种智能穿戴设备外设固件更新方法,所述智能穿戴设备外设固件更新方法可用于智能手表、智能眼镜等智能穿戴设备中。在本发明实施例中所述方法包括如下步骤:
步骤S100、智能穿戴设备开机检测其内的外设固件版本号;
在本实施例中,每当智能穿戴设备开机时自动检测其外设的固件版本号并记录其固件版本号。
举例说明,当智能眼镜A在开机时自动检测固件版本,例如所述固件版本的命名由日期组成,则所述智能眼镜A检测得到的当前固件版本为20210715A。因为固件不同于软件,很少进行更新,以及其在开机后的运行过程中极少会对固件进行升级,所以仅需在开机步骤中对固件版本进行检测即可。
进一步地,步骤S200、智能穿戴设备联网从远程服务器获取对应最新的外设固件版本号,判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号;
在本实施例中,智能穿戴设备联网后固定时间从特定的远程服务器获取对应最新的固件版本号,并将已获取并存储的当前设备的固件版本号与所述远程服务器对应最新的外设固件版本号进行对比,判断所述远程服务器对应的最新的外设固件版本号是否高与智能穿戴设备当前的外设固件版本号。
其中,在所述智能穿戴设备开机检测其内的外设固件版本号的步骤之前包括:
预先将需要升级的外设固件上传至远程服务器的指定位置存储,存储为最新的外设固件文件,所述外设固件文件包括:待更新固件、固件版本号、固件md5校验码。
举例说明,当智能眼镜A进行联网后,固定频率的访问特定的远程服务器,所述特定远程服务器为存放有智能眼镜A对应的外设固件信息的服务器,其访问频率根据历史外设固件更新的频率进行设定,或简单的设定为每日一次、每周一次或每月一次,并设定从远程服务器获取外设固件版本号的时间为凌晨12点、中午12点等。
当智能眼镜A的设备厂商对其外设固件进行升级后,将升级后的外设固件文件存储在远程服务器的指定位置,例如智能眼镜A的官网的“下载”分区中。所述外设固件文件包括:固件版本号、待更新固件以及固件md5校验码。所述md5校验码可简单的理解为文件的“数字指纹”,每个文件不论体积多大,都有且仅有一个独一无二的md5信息值,当某个文件进行了改动后其再产生的md5信息值必定与原文件的md5信息值不同,所以通过md5校验码可以对下载的最新固件进行校验,校验其文件内容是否由于传输过程中遭到缺失或损坏。
因为所述固件版本号通常情况下由日期决定,所以所述智能眼镜A在获取远程服务器的最新的固件版本号进行对比时仅需将固件版本号中表示日期的部分进行提取和对比即可判断所述智能眼镜A当前的外设固件是否为最新版本的固件。例如智能眼镜A的厂商在2021年7月20日更新了固件并将其命名为20210720B并上传到远程服务器的特定位置中,所述智能眼镜A按照访问所述远程服务器的频率,在2021年7月22日访问所述远程服务器并获取到最新的固件版本为20210720B,则将已获取的当前智能眼镜A的外设固件版本号20210715A与20210720B进行对比,判断其日期相比当前固件版本号的日期更靠后,认为所述远程服务器对应最新的外设固件版本号高于所述智能眼镜A的外设固件的版本号。因为所述固件版本号不都是以简单的日期为命名方式起名的,所以厂商也可以将判断其命名方式或判断版本号先后顺序的方式一同存储在所述远程服务器中,便于所述智能眼镜在多个远程服务器或厂商更变命名方式的场合下判断所述外设固件是否需要更新,进一步提高了智能设备在自动进行固件更新过程中的容错率。
进一步地,步骤S300、当获取的远程服务器对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,则从远程服务器下载对应最新的外设固件文件到智能穿戴设备;
在本实施例中,当判断远程服务器中存储的最新的外设固件版本号高于智能穿戴设备当前的外设固件版本号时,控制从远程服务器下载对应最新的外设固件文件至智能穿戴设备中,包括固件版本号、待更新固件以及固件md5校验码。
举例说明,当判断所述20210720B的外设固件版本号高于智能眼镜A的当前外设固件版本号20210715A,则控制将所述固件版本号为20210720B对应的外设固件文件包括20210720B固件版本号、20210720B固件文件、20210720B的md5校验码文件下载至所述智能眼镜A用于存放更新固件的文件夹中。所述文件夹可以是专门用于存放外设固件文件的文件夹,每当最新的外设固件安装成功后可将旧的外设固件进行删除,或保留包括最新外设固件内的两代外设固件文件,用于当最新版本固件不稳定时通过自动或手动的形式重新将上一代外设固件烧录至对应的智能设备中,通过该方法可在节省设备内存的情况下进一步保证智能穿戴设备系统的稳定性。
进一步地,步骤S400、检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式。
在本实施例中,当检测到最新的外设固件文件下载完成后,通过升级指令将穿戴设备的工作模式设置为烧录固件的bootloader模式,控制将下载的最新的外设固件文件更新、烧录到智能穿戴设备中,并检测外设固件文件是否更新完成,当更新完成则将穿戴设备的工作模式由bootloader模式切换为正常的使用模式。智能穿戴设备可通过所述bootloader模式下的bootloader通讯协议实现对外设flash存储器进行擦除、读写以及写入等操作,实现对外设硬件的固件烧录。
举例说明,当所述智能眼镜A下载固件20210720B固件文件完成后,控制运行20210720B的md5校验码文件对所述20210720B固件文件进行校验,若所述20210720B固件文件在下载过程中出错则所述下载的20210720B固件文件的md5信息之与20210720B的md5校验码文件中记录的信息值不同,则控制删除下载的20210720B固件文件,并控制从所述远程服务器中重新下载外设固件文件,直到下载的所述外设固件文件经过md5校验成功,则进入下一个步骤。
当20210720B固件文件经过20210720B的md5校验码文件校验成功后,智能眼镜A通过操控外设的rst引脚以及boot0引脚将外设硬件切换为用于烧录固件的bootloader模式,通过所述智能穿戴设备内置的bootloader通讯协议实现将20210720B固件更新到智能眼镜A中。当固件更新完成后控制更改外设的rst引脚以及boot0引脚,将外设硬件切换回到正常使用模式。所述rst引脚为复位引脚、所述boot0引脚为控制硬件工作模式的引脚,对所述rst引脚以及boot0引脚进行设置可开启硬件的烧录模式对flash存储器进行固件的烧录。
其中,当固件更新过程中检测到更新失败时,控制重新将下载的外设固件文件即20210720B固件文件重新烧录到智能眼镜A的外设硬件中,以确保固件更新成功。
另一种方法是将固件进行分包校验处理,例如将每包的数据量控制在128Bytes以内,每一次更新或烧录过程中都检测外设返回的ack信息,确保每次数据包都正确接收,若失败则进入重传机制,则重复传输传输失败的数据包,直到传输成功为止。所述ack信息为确认消息,是计算机网上通讯协议的一部分,在此实施例中,当外设硬件正确的接收到数据包则返回该确认消息,即ack信息。若多次失败则判定更新异常、固件文件异常或兼容异常等原因,控制智能眼镜A重复下载外设固件文件的步骤、更新硬件固件的步骤或者放弃更新并上报异常至服务器。通过该方法可极大的提高固件更新的成功率以及稳定性,且当固件更新持续失败的情况下通过放弃更新的步骤最低限度的保证设备的功能的正常使用。
第二实施例
以下通过一具体应用实施例对本发明方法做进一步详细说明:
本具体应用实施例,智能手环为例,如图2所示,本具体应用实施例的一种智能穿戴设备外设固件更新方法,包括如下步骤:
步骤S10、智能手环开机联网,进入步骤S11;
步骤S11、判断远程服务器中是否存在版本更高的外设固件,若是则进入步骤S12、若否则进入步骤S30;
步骤S12、下载最新的外设固件到智能手环存储空间中,进入步骤S13;
步骤S13、当下载最新的外设固件结束,校验所述固件版本文件是否完整,若是则进入步骤S14,若否则进入步骤S12;
步骤S14、控制切换智能手环外设硬件工作模式为bootloader模式,进入步骤S15;
步骤S15、设置一数值i=1,进入步骤S16;
步骤S16、将下载的最新外设固件的固件版本文件分包为多个数据包,并按照数值i传输第i包数据包,进入步骤S17;
步骤S17、判断第i包数据传输外设通讯是否返回正常ack,若是则进入步骤S18,若否则进入步骤S16;
步骤S18、判断是否将全部数据包传输完成,即i的值等于分包时的数据包的总数,若是则进入步骤S20,若否则进入步骤S19;
步骤S19,数值i=i+1,进入步骤S16;
步骤S20,当判断全部数据包传输完成后,切换外设工作模式为正常模式,进入步骤S21;
步骤S21,在此读取版本号判断智能手环当前外设固件版本号是否为最新固件的版本号,若是则进入步骤S30,若否则进入步骤S12;
步骤S30,结束。
由上可见,在本发明具体应用实施例中,智能手环在判断远程服务器中的固件版本的设备号高于本地外设固件版本的设备号时,控制自动下载并烧录所述最新的外设固件,并且通过多个校验程序保证了智能手环更新固件的成功率,对用户而言,再无感知的情况下就完成了设备功能的升级,极大地提高了用户体验。
当智能手环开机联网后,检测远程服务器中是否存在比当前固件版本更高的外设固件,若存在则控制下载所述远程服务器中最新的外设固件到设备本地;当检测到下载完成后通过md5校验码文件对下载的最新外设固件文件进行校验,当校验结果为固件文件不完整时,重新进行下载。当校验结果为固件文件完整时,控制对应智能手环外设硬件的工作模式为bootloader的烧录模式。将获取的最新版本的外设固件打包分成多个数据包,每个数据包的大小不超过128Bytes,以确保固件更新过程中的稳定性,例如共分为x个数据包,则每此传输一个序号为i的外设固件的数据包,并判断所述序号为i的外设固件的数据包是否正常被接收并返回ack确认信息,当所述硬件未返回正常ack信息时,重新发送该数据包,当所述硬件返回正常ack信息时进一步判断全部数据包传输完成,即判断i是否等于x,若不等则设置i=i+1,再次传输序号为i的数据包,直到i=x时,判断全部数据包传输完成。当判断全部数据包传输完成即固件更新完成后,控制将所述智能手环的外设硬件切换回正常使用的工作模式,并最后判断当前版本号是否为最新的固件版本号,若是则结束更新,若否则重复下载最新的外设固件,并重复执行上述步骤。
示例性设备
如图3中所示,本发明实施例提供一种智能穿戴设备外设固件更新装置,该装置包括:检测模块310、获取与判断模块320、下载控制模块330、固件更新模块340。具体地,所述检测模块310,用于控制智能穿戴设备开机检测其内的外设固件版本号;所述获取与判断模块320,用于控制智能穿戴设备联网从远程服务器获取对应最新的外设固件版本号,判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号;所述下载控制模块330,用于当获取的远程服务器对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,则从远程服务器下载对应最新的外设固件文件到智能穿戴设备;所述固件更新模块340,用于检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式。
基于上述实施例,本发明还提供了一种终端设备,其原理框图可以如图4所示。该终端设备包括通过系统总线连接的处理器、存储器、网络接口。其中,该终端设备的处理器用于提供计算和控制能力。该终端设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该终端设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种智能穿戴设备外设固件更新。
本领域技术人员可以理解,图4中的原理框图仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用与其上的终端设备的限定,具体的终端设备可以包括比图中更多或更少的部件,或者组合某些部件或者具有不同的部件布置。
在一个实施例中,提供了一种终端设备,终端设备包括存储器、处理器及存储在处理器上并可在处理器上运行的智能穿戴设备外设固件更新程序,处理执行如下步骤:
智能穿戴设备开机检测其内的外设固件版本号;
智能穿戴设备联网从远程服务器获取对应最新的外设固件版本号,判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号;
当获取的远程服务器对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,则从远程服务器下载对应最新的外设固件文件到智能穿戴设备;
检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式。
其中,所述智能穿戴设备开机检测其内的外设固件版本号的步骤之前包括:
预先将需要升级的外设固件上传至远程服务器的指定位置存储,存储为最新的外设固件文件,所述外设固件文件包括:待更新固件、固件版本号、固件md5校验码。
其中,所述智能穿戴设备联网从远程服务器获取对应最新的外设固件版本号,判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号的步骤包括:
智能穿戴设备每隔预定时间联网从远程服务器获取对应最新的外设固件版本号;
将从远程服务器获取对应最新的外设固件版本号与智能穿戴设备当前外设固件版本号进行比对;
判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号。
其中,所述当获取的远程服务器对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,则从远程服务器下载对应最新的外设固件文件到智能穿戴设备的步骤包括:
当远程服务器获取对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,智能穿戴设备从远程服务器下载对应最新的外设固件文件,并存储到指定文件夹;
智能穿戴设备通过md5码校验下载的最新的外设固件文件是否完整;
当校验下载的最新的外设固件文件不完整,则控制重新下载最新的外设固件文件。
其中,所述检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式的步骤包括:
检测到外设固件文件下载完成并且校验下载的最新的外设固件文件是完整的,控制将智能穿戴设备切换到bootloader模式;
控制通过所述智能穿戴设备内置的bootloader通讯协议实现对智能穿戴设备的flash进行擦除,读取以及写入等操作,将下载的外设固件文件通过通讯协议烧写到智能穿戴设备的flash;
更新完成切换到正常使用模式。
其中,所述检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式的步骤包括:
检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式;
对所述外设固件文件进行分包传输,依次分包传输外设固件数据,并依次检测数据传输外设通讯是否返回正常ACK,当返回正常ACK则判定为所述外设固件文件全部传输完成;
控制将传输完成的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式。
其中,所述检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式的步骤还包括:
当检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备过程中检测到更新失败,则重新将下载的外设固件文件更新到智能穿戴设备。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
综上,本发明公开了智能穿戴设备外设固件更新方法、装置、移动终端及介质,所述方法包括:智能穿戴设备获取其外设固件版本号;智能穿戴设备联网从远程服务器获取对应最新的外设固件版本号,判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号;当高于时,则从远程服务器下载对应最新的外设固件文件到智能穿戴设备;检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式。旨在解决设备更新固件繁琐、成功率低、失败后果严重的问题,大大提高设备自动更新固件过程中的稳定性以及更新成功率,为用户使用提供的方便。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (6)
1.一种智能穿戴设备外设固件更新方法,其特征在于,所述方法包括:
智能穿戴设备开机检测其内的外设固件版本号;
智能穿戴设备联网从远程服务器获取对应最新的外设固件版本号,判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号;
当获取的远程服务器对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,则从远程服务器下载对应最新的外设固件文件到智能穿戴设备;
检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式;
所述检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式的步骤包括:
检测到外设固件文件下载完成并且校验下载的最新的外设固件文件是完整的,控制将智能穿戴设备切换到bootloader模式;
控制通过所述智能穿戴设备内置的bootloader通讯协议实现对智能穿戴设备的flash进行擦除,读取以及写入操作,将下载的外设固件文件通过通讯协议烧写到智能穿戴设备的flash;
更新完成切换到正常使用模式;
所述检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式的步骤包括:
检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式;
对所述外设固件文件进行分包传输,依次分包传输外设固件数据,并依次检测数据传输外设通讯是否返回正常ACK,当返回正常ACK则判定为所述外设固件文件全部传输完成;
控制将传输完成的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式;
智能穿戴设备通过操控外设的rst引脚以及boot0引脚将外设硬件切换为用于烧录固件的bootloader模式;
所述智能穿戴设备开机检测其内的外设固件版本号的步骤之前包括:
预先将需要升级的外设固件上传至远程服务器的指定位置存储,存储为最新的外设固件文件,所述外设固件文件包括:待更新固件、固件版本号、固件md5校验码;
所述当获取的远程服务器对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,则从远程服务器下载对应最新的外设固件文件到智能穿戴设备的步骤包括:
当远程服务器获取对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,智能穿戴设备从远程服务器下载对应最新的外设固件文件,并存储到指定文件夹;
智能穿戴设备通过md5码校验下载的最新的外设固件文件是否完整;
当校验下载的最新的外设固件文件不完整,则控制重新下载最新的外设固件文件;
智能穿戴设备通过所述bootloader模式下的bootloader通讯协议实现对外设flash存储器进行擦除、读写以及写入操作。
2.根据权利要求1所述的智能穿戴设备外设固件更新方法,其特征在于,所述智能穿戴设备联网从远程服务器获取对应最新的外设固件版本号,判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号的步骤包括:
智能穿戴设备每隔预定时间联网从远程服务器获取对应最新的外设固件版本号;
将从远程服务器获取对应最新的外设固件版本号与智能穿戴设备当前外设固件版本号进行比对;
判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号。
3.根据权利要求1所述的智能穿戴设备外设固件更新方法,其特征在于,所述检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式的步骤还包括:
当检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备过程中检测到更新失败,则重新将下载的外设固件文件更新到智能穿戴设备。
4.一种智能穿戴设备外设固件更新装置,其特征在于,所述装置包括:
检测模块,用于控制智能穿戴设备开机检测其内的外设固件版本号;
获取与判断模块,用于控制智能穿戴设备联网从远程服务器获取对应最新的外设固件版本号,判断所述远程服务器对应最新的外设固件版本号是否高于智能穿戴设备当前外设固件版本号;预先将需要升级的外设固件上传至远程服务器的指定位置存储,存储为最新的外设固件文件,所述外设固件文件包括:待更新固件、固件版本号、固件md5校验码;
下载控制模块,用于当获取的远程服务器对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,则从远程服务器下载对应最新的外设固件文件到智能穿戴设备;当远程服务器获取对应最新的外设固件版本号高于智能穿戴设备当前外设固件版本号,智能穿戴设备从远程服务器下载对应最新的外设固件文件,并存储到指定文件夹;智能穿戴设备通过md5码校验下载的最新的外设固件文件是否完整;当校验下载的最新的外设固件文件不完整,则控制重新下载最新的外设固件文件;
固件更新模块,用于检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式,控制将下载的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式;检测到外设固件文件下载完成并且校验下载的最新的外设固件文件是完整的,控制将智能穿戴设备切换到bootloader模式;控制通过所述智能穿戴设备内置的bootloader通讯协议实现对智能穿戴设备的flash进行擦除,读取以及写入操作,将下载的外设固件文件通过通讯协议烧写到智能穿戴设备的flash;更新完成切换到正常使用模式;检测到外设固件文件下载完成,根据升级指令将所述穿戴设备设置为bootloader模式;
对所述外设固件文件进行分包传输,依次分包传输外设固件数据,并依次检测数据传输外设通讯是否返回正常ACK,当返回正常ACK则判定为所述外设固件文件全部传输完成;控制将传输完成的外设固件文件更新到智能穿戴设备,更新完成切换到正常使用模式;
智能穿戴设备通过操控外设的rst引脚以及boot0引脚将外设硬件切换为用于烧录固件的bootloader模式;
智能穿戴设备通过所述bootloader模式下的bootloader通讯协议实现对外设flash存储器进行擦除、读写以及写入操作。
5.一种移动终端,其特征在于,所述移动终端包括存储器、处理器及存储在所述存储器中并可在所述处理器上运行的智能穿戴设备外设固件更新程序,所述处理器执行所述智能穿戴设备外设固件更新程序时,实现如权利要求1-3任一项所述的智能穿戴设备外设固件更新方法的步骤。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有智能穿戴设备外设固件更新程序,所述智能穿戴设备外设固件更新程序被处理器执行时,实现如权利要求1-3任一项所述的智能穿戴设备外设固件更新方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110881831.4A CN113821238B (zh) | 2021-08-02 | 2021-08-02 | 智能穿戴设备外设固件更新方法、装置、移动终端及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110881831.4A CN113821238B (zh) | 2021-08-02 | 2021-08-02 | 智能穿戴设备外设固件更新方法、装置、移动终端及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113821238A CN113821238A (zh) | 2021-12-21 |
CN113821238B true CN113821238B (zh) | 2024-02-09 |
Family
ID=78924216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110881831.4A Active CN113821238B (zh) | 2021-08-02 | 2021-08-02 | 智能穿戴设备外设固件更新方法、装置、移动终端及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113821238B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI814634B (zh) * | 2022-11-04 | 2023-09-01 | 慧榮科技股份有限公司 | 資料儲存裝置與韌體更新方法 |
TWI812534B (zh) * | 2022-11-04 | 2023-08-11 | 慧榮科技股份有限公司 | 資料儲存裝置與韌體更新方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013143334A1 (zh) * | 2012-03-27 | 2013-10-03 | 惠州Tcl移动通信有限公司 | 一种更新移动终端nfc固件的方法及其移动终端 |
CN104572217A (zh) * | 2015-01-27 | 2015-04-29 | 广东欧珀移动通信有限公司 | 穿戴式智能设备的升级方法及系统 |
CN106020861A (zh) * | 2016-05-05 | 2016-10-12 | 惠州Tcl移动通信有限公司 | 一种智能手表的fota升级方法及系统 |
CN106843942A (zh) * | 2016-12-31 | 2017-06-13 | 歌尔科技有限公司 | 穿戴式设备的固件升级方法及穿戴式设备 |
CN107301065A (zh) * | 2017-05-22 | 2017-10-27 | 北京羽扇智信息科技有限公司 | 固件升级方法、智能外设及固件升级系统 |
CN109271192A (zh) * | 2018-07-27 | 2019-01-25 | 海伦钢琴股份有限公司 | 一种智能钢琴的远程固件升级方法 |
CN110764812A (zh) * | 2019-10-18 | 2020-02-07 | 东莞市小精灵教育软件有限公司 | 一种智能设备、智能穿戴设备及其软件升级的系统和方法 |
CN111966372A (zh) * | 2020-08-10 | 2020-11-20 | 上海中通吉网络技术有限公司 | 便携式打印机的固件升级方法、装置和设备 |
-
2021
- 2021-08-02 CN CN202110881831.4A patent/CN113821238B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013143334A1 (zh) * | 2012-03-27 | 2013-10-03 | 惠州Tcl移动通信有限公司 | 一种更新移动终端nfc固件的方法及其移动终端 |
CN104572217A (zh) * | 2015-01-27 | 2015-04-29 | 广东欧珀移动通信有限公司 | 穿戴式智能设备的升级方法及系统 |
CN106020861A (zh) * | 2016-05-05 | 2016-10-12 | 惠州Tcl移动通信有限公司 | 一种智能手表的fota升级方法及系统 |
CN106843942A (zh) * | 2016-12-31 | 2017-06-13 | 歌尔科技有限公司 | 穿戴式设备的固件升级方法及穿戴式设备 |
CN107301065A (zh) * | 2017-05-22 | 2017-10-27 | 北京羽扇智信息科技有限公司 | 固件升级方法、智能外设及固件升级系统 |
CN109271192A (zh) * | 2018-07-27 | 2019-01-25 | 海伦钢琴股份有限公司 | 一种智能钢琴的远程固件升级方法 |
CN110764812A (zh) * | 2019-10-18 | 2020-02-07 | 东莞市小精灵教育软件有限公司 | 一种智能设备、智能穿戴设备及其软件升级的系统和方法 |
CN111966372A (zh) * | 2020-08-10 | 2020-11-20 | 上海中通吉网络技术有限公司 | 便携式打印机的固件升级方法、装置和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113821238A (zh) | 2021-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113821238B (zh) | 智能穿戴设备外设固件更新方法、装置、移动终端及介质 | |
CN110096294B (zh) | 一种可任意断点无线升级mcu应用程序的方法 | |
US7275153B2 (en) | Booting and boot code update system using boot strapper code to select between a loader and a duplicate backup loader | |
US10602348B2 (en) | System and method for updating dataset versions resident on a wireless device | |
EP2456257B1 (en) | Method and system for upgrading wireless data card | |
US7793283B2 (en) | Communication terminal software updating method, communication terminal, and software updating method | |
US7836444B2 (en) | Mobile communication terminal having embedded system for software download and method for software download | |
EP1770512A2 (en) | Method and system for updating software | |
US20100325622A1 (en) | Updating Firmware of an Electronic Device | |
CN112416406B (zh) | 终端设备升级方法、装置、终端设备和介质 | |
TWI533216B (zh) | 作業系統更新方法 | |
JP2005502971A (ja) | ソフトウェアをアップデートする方法、装置、および、システム | |
KR20050028173A (ko) | 소프트웨어 업데이트 방법 및 시스템 | |
CN112152846B (zh) | 一种基于物联网的计量仪表远程升级方法 | |
WO2011088701A1 (zh) | 一种跨平台版本在线升级的方法及装置 | |
CN114840242A (zh) | 一种电子设备的系统升级方法、装置及可读存储介质 | |
CN112433739B (zh) | 一种固件升级方法 | |
CN112667265A (zh) | 一种引导程序更新方法及装置 | |
CN111427604A (zh) | 基于功能手机的远程软件升级系统及升级方法 | |
CN112181455B (zh) | 微控制器的在线升级方法、微控制器及存储介质 | |
CN111913730A (zh) | 用户无感的应用程序内更新方法及用户端、程序服务器 | |
CN109428936B (zh) | App的升级方法、装置、系统、电子设备及存储介质 | |
KR20040036771A (ko) | Ota를 이용한 바이너리 데이타 업그레이드 방법 | |
KR100429903B1 (ko) | 홈 게이트웨이 시스템의 이미지 업데이트 방법 | |
KR101437837B1 (ko) | 이동통신 시스템에서 동적 플랫폼과 연동된 콘텐츠의다운로드 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |