ESP使用巴法云远程OTA(Platform)
什么是OTA:
-
OTA(Over-the-AirTechnology)即空中下载技术,是通过移动通信的空中接口实现对移动终端设备及SIM卡数据进行远程管理的技术。OTA升级是物联网(IOT)产品设计的一个非常重要的部分,能够实现智能设备系统漏洞修复、系统升级,通过固件和软件的升级,提供更好的服务。OTA固件升级功能不仅能够更新固件,而且还能重新配置芯片上硬件资源。同时,设备固件可通过OTA固件升级流程获得更新的补丁和更多安全算法防范病毒攻击。
-
ESP32集成了2.4GHzWi-Fi和蓝牙双模,以其超高的射频性能、稳定性、通用性和可靠性,以及超低的功耗,满足不同的功耗需求,适用于各种物联网应用场景,受到低成本系统和制造商的欢迎。
-
此外,使用ESP32 OTA还可以实现远程控制,即通过网络来远程控制设备。例如,我们可以通过网络将新的固件发送到设备,实现设备的远程升级。
-
总之,使用OTA可以提高设备的维护效率,方便我们进行远程控制和升级。因此,ESP32支持OTA升级是非常有用的功能。
实验环境:
硬件:ESP32
软件:VScode 下 Platform io
平台: 巴法云
步骤
- VScode 下 Platform io 创建工程
- 编译一个准备用作OTA之后的测试用例
- 编写支持OTA功能的代码,并使用数据线完成第一次下载
- 在巴法云平台上传测试固件bin文件
- 测试OTA功能
实操:
- 创建工程
)
- 添加串口波特率:
115200
- 编写代码测试用例
实际上测试用例和基础OTA代码是一样的,只是用了不同的宏定义区分一下模块功能
//基础OTA就取消LED的宏定义,定义LED是用来测试OTA升级之后的程序,
#include <Arduino.h>
#include <WiFi.h>
#include <httpUpdate.h>
#define LED
#ifdef LED
#define led_pin 2
#define LED_INIT \
do \
{
\
Serial.println("LED灯初始化"); \
pinMode(led_pin, OUTPUT); \
} while (0)