前几节, 咱们介绍了使用RT-Thread Studio开发环境使用各种片内外设的配置方法, 包括OTA, 这节, 给大家介绍下使用OTA进行设备远程升级的一个操作实例, 即在不同网络条件下, 如何进行远程升级的操作。以下,是机动车检测站设备升级的一个实例。
1. 前 言
设备远程升级基于不同网络条件,常见有四种方式:外网云服务器升级方式,内网服务器升级方式,串口(USB)升级方式,通过4G网络升级方式。
- 外网云服务器升级方式需要具备两个必要条件,一、设备可以通过以太网或WiFi连接到外网。二、远程服务器必须具有固定的IP地址并允许web服务器的端口通过防火墙。使用时最为方便。
- 内网服务器升级方式,需要用户自己建立web服务器,不受设备能否上网限制。
- 串口(USB)升级方式,在没有网络的情况下,可以使用串口通过Ymodem协议进行升级,需要使用标准串口线。
- 通过4G、5G网络升级方式,带有4G模块的设备,插入4G卡连接外网升级,方便快捷,缺点是成本较高。
2. 参考文件
《设备调测软件使用说明》
3.1.1 通过手机热点连接到外网
通过手机进行远程升级的网络拓补图如下图所示:
一般检测站使用的是专线,无法登录到外网服务器,所以需要通过手机建立热点,设备连接到手机热点,通过手机4G/5G连接到外网,配置方式为:设置--个人热点--设置WLAN热点--设置网络名称和密码,选择AP频段为2.4GHz--保存,保持便携式热点打开状态。
注意:设备默认连接的WiFi网络名称为:ESP32,,密码为:9998855588,如热点按此设置,设备可以直接连接。
如下图所示:
3.1.2 热点配置完成后,重启设备,观察已连接设备是否已经连接。(注意:设备只有在重启后才能自动连接网络)
3.1.3 打开调测软件,通过串口或RS485连接到设备,(默认检测线设备均为此两种通讯方式),查看WiFi信息及远程升级地址是否正确。注意:无线SSID和密码也可以根据实际情况重新设置,重新设置后,单击设备重启按钮进行重启连接。
3.1.4 启动远程升级
查询服务器地址是否正确,使用外网服务器时无需修改,单击启动远程升级,之后耐心等待,升级完成后设备会重新启动,可通过查询关键版本号确认升级是否完成。
3.1.5 升级过程信息查看
如果有条件,使用标准串口线连接到调试串口,打开串口调测软件,(推荐使用Xshell,SecureCRT等终端软件,也可以使用串口调试助手),串口软件波特率设为115200bps,以ASCII方式接收,字符编码为GBK(如有)。整个升级过程,会有全部信息提示。如下入所示:
- 保证路由器能够连接外网
- 通过调测软件设置设备WIFI的SSID和密码为路由器的SSID和密码
- 重启设备联网
- 其他步骤和手机热点方式一致
5. 内网服务器升级方式
需要自己建立web服务器, 对用户要求稍高, 目前不推荐使用
6.1 准备升级文件,下载到本地电脑。
6.2 使用标准串口线连接到调试串口,打开串口调测软件,(推荐使用Xshell,SecureCRT等终端软件),串口软件波特率设为115200bps,(汉字编码为GBK),如使用串口调试助手,需设置为ASCII显示方式(非HEX)。
6.3 打开串口终端后,重启设备,此时终端会提示启动过程的全部信息
6.4 启动完成后,输入help并回车,会有设备支持的指令及说明,我们使用ymodem_ota指令进行串口升级。
6.5 启动升级,终端会一直提示C
6.6 通过Ymodem发送升级固件包,等待完成即可
插入手机卡联网成功后,使用调测软件,单击启动升级,即可完成升级操作。