求助!关于使用ESP32-C3芯片在STM32F427上作OTA升级模块时,无线通信数据收发问题

Moderator: XCGuang

JasonZhong
Posts: 1
Joined: Mon Aug 11, 2025 2:04 am

求助!关于使用ESP32-C3芯片在STM32F427上作OTA升级模块时,无线通信数据收发问题

Postby JasonZhong » Mon Aug 11, 2025 2:52 am

背景:STM32F427上需要进行OTA升级,选择C3芯片作为通信芯片。MCU与C3使用USART DMA进行通信,串口通信波特率2M。
AT固件版本:官方2.4.2.0与3.3.0.0分别进行测试。
问题:在C3使用WIFI AT指令进行WIFI联网后,使用AT+HTTPCLIENT=2,0,"下载地址",,,2,进行数据下载后转MCU串口接收保存到外部FLASH,文件大概有3.5MB大。
1、官方2.4.2.0固件,下载地址为http,全部数据下载完全后,MCU验证数据大小完整性会出现数据丢失的情况;当下载地址为https时,下载速度稍慢,但是成功率增加,还会有一种情况出现,时不时出现下载到某一时刻直接中止发送并且发送完成标志SEND OK。
2、官方3.3.0.0固件,下载地址为http,也是全部数据下载完,在验证数据大小完整性阶段易出现数据丢失情况;下载地址为https时,此版本容易出现下载到某一时刻直接中止发送并且发送完成标志SEND OK。
以上问题后面使用断点续传分包下载依旧存在,现将服务器下载速度降低到30KB/s,限制传输速度,保持串口通信波特率为2M,可缓解下载数据从服务器到C3模块传输时数据丢失的情况。
请问,在服务器与C3模块通信过程中丢失数据如何解决?怎么保证在下载数据时服务器与C3模块中数据不丢失?

esp-at
Espressif staff
Espressif staff
Posts: 335
Joined: Mon May 09, 2022 3:00 am

Re: 求助!关于使用ESP32-C3芯片在STM32F427上作OTA升级模块时,无线通信数据收发问题

Postby esp-at » Thu Sep 04, 2025 7:12 am

您好!
1. 关于 “出现下载到某一时刻直接中止发送并且发送完成标志SEND OK” 这个问题。
这是一个已知的已修复的问题:https://github.com/espressif/esp-at/com ... a698526479

烦请使用 master 上的代码编译,或者从 GitHub Actions 里下载对应固件: https://docs.espressif.com/projects/esp ... ithub.html

2. 关于 “MCU验证数据大小完整性会出现数据丢失的情况”
您使用的是 UART 来通信,请问有配置 UART 硬件流控吗。示例命令:AT+UART_CUR=2000000,8,1,0,3。同时需要接 CTS 和 RTS 管脚到 STM32F427 的 RTS 和 CTS。

3. 关于 “下载地址为https时,下载速度稍慢,但是成功率增加”
因为 https 的情况下,数据的传输速度稍微慢于 http,所以理论上 uart 那边就有更多的时间来传输数据,这样成功率增加是可能的。

烦请使用 master 上版本进一步验证。

Who is online

Users browsing this forum: No registered users and 2 guests