OTA AT命令集
备注
OTA AT命令集默认未启用。
可以参考 配置 SDK (menuconfig) 进入 CONFIG AT CMD
配置,勾选 Enable OTA
来启用 OTA AT命令集
OTA功能相关说明请参考 OTA
AT+OTAHTTP
描述
通过HTTP的GET方式获取OTA固件,并且将其烧录到对应的区域进行升级
OTA过程通常需要几十秒到几分钟,为了保证期间其他AT命令可以正常进行,OTA过程在后台运行,通过 AT消息 来提示OTA的状态和进展
命令格式
AT+OTAHTTP=<sysrst>,<host>,<path>[,<port>],<conn_type>[,<cert_index>]
响应格式
成功响应:
OK
错误响应:
ERROR:<error_no>
AT消息
OTA后台运行时,会有如下进度和结果的提示消息提示消息
[$][OTA][HTTP]: UPDATE <百分比>
[$][OTA][HTTP]: UPDATE SUCCESS
[$][OTA][HTTP]: UPDATE FAIL
参数
<sysrst>:升级完成后是否自动重启
0: 升级完成后不自动重启
1: 升级完成后自动重启
<host>:目标主机,不需要
http://
或者https://
前缀支持域名或IPv4地址
最大长度:128字符
<path>:资源路径
最大长度:256字符
<port>:HTTP服务器端口
范围:[0,65535] (默认值0)
0:HTTP使用80端口,HTTPS使用443
<conn_type>:HTTP连接类型
1: HTTP
2: HTTPS(不校验证书)
3: HTTPS(用CA证书验证服务器证书)
4: HTTPS(提供客户端证书给服务器验证)
5: HTTPS(双向认证,3和4的合集)
<cert_index>:安全证书套件索引,参考 AT安全证书
[1-10]
仅<conn_type>是3-5时需要
错误码
1: 参数错误
2: 内存分配错误
3: OTA正在进行中
4: OTA初始化错误
5: OTA任务创建错误
示例
- 从服务器地址192.168.137.11的端口8082上获取ota_all.bin固件进行升级,并且升级完成后自动重启
AT+OTAHTTP=1,192.168.137.1,8082,ota_all.bin OK [$][OTA][HTTP]: UPDATE 10% [$][OTA][HTTP]: UPDATE 20% [$][OTA][HTTP]: UPDATE 30% [$][OTA][HTTP]: UPDATE 40% [$][OTA][HTTP]: UPDATE 50% [$][OTA][HTTP]: UPDATE 60% [$][OTA][HTTP]: UPDATE 70% [$][OTA][HTTP]: UPDATE 80% [$][OTA][HTTP]: UPDATE 90% [$][OTA][HTTP]: UPDATE 100% [$][OTA][HTTP]: UPDATE SUCCESS
AT+OTAUSER
描述
用 透传(TT)模式 发送OTA升级固件,进行升级
备注
该命令仅支持在 主控控制模式 下使用。
命令格式
AT+USEROTA=<sysrst>,<length>
响应格式
成功响应:
OK
错误响应:
ERROR:<error_no>
参数
- <sysrst>:升级完成后是否自动重启
0: 升级完成后不自动重启
1: 升级完成后自动重启
- <length>:
OTA固件总长度
错误码
1: 参数错误
2: 内存分配错误
3: 升级过程中发生错误
4: OTA正在进行中
5: OTA初始化错误
示例
发送一个1120704字节长度的ota固件进行升级,升级完成后不重启
AT+OTAUSR=0,1120704
>>>
<发送ota固件内容>
OK