电子说
用户在设计产品的时候考虑到让产品尺寸尽量小,成本低的情况下可以考虑使用SOC模式进行开发,SOC采用ESP8266作为主控芯片,可降低产品的成本。
用户如果将开发了的产品发布上线销售,后期先更新固件和程序,就需要用到远程OTA固件升级,就能对已发布的产品进行远程升级。
01 正式开发
1、创建智能产品
登录机智云开发平台,进入开发者中心,点击左侧的”创建”
根据自己产品需求按照如图选择产品分类
填写产品名称,类型等参数
产品名称:自定义
类型:含WiFi、移动网络、NB-IoT、网关(Mesh、蓝牙、Lora等方式)
数据传输方式:定长、变长
功耗方式:低功耗、正常
2、编辑数据点,进行产品功能开发
创建好产品,设立好产品名称后,开始定义数据点
创建如下数据点,参考宠物屋数据点
此处我选择了应用“宠物屋数据点”模板,再根据需要修改数据点。
3、MCU功能开发,进行代码移植
进入MCU开发,选择SOC,和ESP8266_32M,输入Product Secret(在产品的基础信息里面可以复制),之后生成代码包,下载代码包。
注意:由于我的是ESP 8266开发,所以选择SOC方案
生成代码包在之后下载代码,解压代码备用,解压位置在哪儿都可以,修改一下文件夹名称,避免多项目重复名称。
在官网“下载中心”,下载开发板的传感器驱动程序,解压备用。
将下载驱动程序中的.c文件复制到代码的appdriver目录下
将下载驱动程序中的.h文件复制到代码的appincludedriver目录下
按照如下步奏导入程序到开发环境。
修改根目录Makefile文件里面的编译信息。
4、配置入网
烧录成功之后,将设备进行配置入网,在设备云端日志查看设备。
初始代码为25版本。在程序代码里面修改代码版本为26,新版本比原版本数字大。
修改过后编译生成新的固件,云端点击OTA,切换到新版本OTA,点创建新固件
设置好推送方式,固件类型,上传生成的user1.4096.new.6.bin文件以及版本信息之后保存
输入测试设备MAC进行验证,验证过后才能正式推送
在这个界面如果上面选的是静默升级,模块会进行自动升级。
如果手动升级,需要到手机APP里面设备页面进行检测固件升级。
升级过程中wifi模块打印日志如下
升级之后云端版本更新为26,程序运行新的版本,OTA推送新的固件就能正常使用。
原文标题:开发技巧 | SOC开发模式下,如何实现OTA远程升级功能
文章出处:【微信公众号:机智云开发者】欢迎添加关注!文章转载请注明出处。
责任编辑:haq
全部0条评论
快来发表一下你的评论吧 !