我是靠谱客的博主 醉熏羽毛,最近开发中收集的这篇文章主要介绍物联网IOT 固件升级,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前言

智能设备的制造,在产品销售出去后,用户在使用产品过程中,会出现各类问题,有些问题则需要通过固件升级的方式来解决。而在我们的物理网云平台中,原先就有固件升级的功能,但存在着各种问题。在这种背景下,需要我作为产品对固件升级的功能,进行整体优化改造。

固件是什么

一种软件,或者介于软件与硬件之间的东西,是连接软件与硬件之间的桥梁,机器可以通过固件直接控制硬件(固件负责软件对硬件的识别)。而大部分电子产品都需要拥有固件才能够正常运行。

固件升级需谨慎

有时为了增加产品的功能或者修复Bug,需要对固件进行升级,。比如:升级BIOS板,让主板支持同款插槽的CPU。

但是固件升级的时候需要谨慎,因为在设备在升级过程中停电,导致固件升级失败,那么设备可能永远变“砖”,并且无法再次通过升级固件解决。因为固件升级的前提就是要有正常的固件,告诉系统怎么升级,如果升级失败了,人们可能需要通过工具重新进行烧录,正常用户是没有这个能力的。

当然还有些固件是不能进行升级,比如存在ROM中,也就是只读芯片。

应用层怎么支持固件升级

概述

这里主要讲述偏向应用层的固件升级,应该怎么设计。用户需要通过一个系统,对固件进行管理、升级派发、记录监控等需要,那么FOTA应运而生。

固件升级的核心逻辑是将固件包推送到设备中,在设备中最终完成固件升级操作。

而推送固件包的过程中,根据产品类型与实际业务的不同,存在不同的通讯方式:

  • 有线通讯技术

以太网、RS-232、RS-485、M-Bus、PLS等

  • 无线通讯技术

蓝牙、蜂窝移动通信(2G/3G/4G)、WIFI、ZigBee、Zwave等

各系统的协作关系

通过蓝牙升级,需要由三端同步,分别是:APP端、升级设备端、云服务器端。

 

主要升级流程

根据FOTA的模式,优化后的固件升级系统,产品流程分为以下几个部分:

1. 上传固件包

将固件包上传至云平台,并人为对该固件包进行定义,如添加版本号、支持升级设备、版本说明等

2. 固件包合并

因为每个设备包含多个固件,实际业务只能对设备中的多个固件进行统一升级,所以有了固件包合并的环节。

3. 建立升级任务

选中需要下发升级的固件包,通过任务配置,将固件包升级的前置步骤完成。比如定义可升级时间、指定设备SN、指定特定用户升级等。

4.执行升级步骤

最终进行升级步骤的执行。比如在升级任务中,选择了蓝牙升级,则用户靠近设备,在APP上通过蓝牙连接了该设备,就能从云服务器下载固件升级包到APP,通过APP蓝牙传输至设备中,完成升级任务。

最后

以上就是醉熏羽毛为你收集整理的物联网IOT 固件升级的全部内容,希望文章能够帮你解决物联网IOT 固件升级所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部