RTT源码用的9月9日版
AT Device是使用最近半个月新重构版本的 SIM76xx,个人开发会用到 TCP HTTP都没有问题。
硬件是STM32L476 , SRAM1 + SRAM2合并大堆使用
翻看帖子历史记录也有网友遇到卡83%左右问题。大固件卡83%,小固件卡50%左右这类,感觉这跟固件大小没啥关系。
开启串口波特率926100查看AT日志,看起来好像也没啥问题。
运行时系统内存充足,这点其他网友也有提到过。结果总是跑到83-84%左右就提示接收6秒超时,搜索源码发现是at组件源码的,但是这个6秒参数16进制或10进制的宏定义却没有找到,
看AT日志只要超时后就CIPCCLOSE 此时及其容易返回+CIPCLOSE: 1,4 (1是代表HTTPOTA链路, 4是模块返回的异常操作的错误码),这些好像也没什么,AT接收超时然后关闭链路很正常的操作,问题重点是为什么总是在84%的时候总是触发6秒超时呢?? 我也怀疑过是不是服务器闪断,后来在异常发生后,检查了服务器是好的,并没有中途断开的情况。
使用潘多拉最新SDK + ESP8266 + 局域网WIFI没有复现此问题。有点怀疑4G信号问题,但是我没证据。如果真是信号问题,也不会总是83%吧。因为潘多拉使用的是比较旧的 源码智能匹配旧版的AT DEVICE,跟我的工程有较大的移植差异性,所以并没有什么对比意义
使用潘多拉最新SDK + ESP8266 + 局域网WIFI没有复现此问题。有点怀疑4G信号问题,但是我没证据。如果真是信 …
建议用逻辑分析仪抓一下串口的数据,先确定 84% 左右的时候到底是模块自己断开了没有给你发数据还是数据都发送晚了,AT Device 这块接收有问题,OTA 这中数据量大的情况开启 RAW 其实看的意义不大,建议还是关了吧分析逻辑分析仪抓出来数据