乐鑫技术交流
直播中

赵辉

12年用户 853经验值
私信 关注
[问答]

ESP-AT-MINI-1固件使用BTSPP传输时出现异常的原因?

烧录固件类型:ESP-AT-MINI-1固件 开启经典蓝牙功能
问题: 引用pyserial(python)库通过串口测试发送200K数据所用时间时,经常出现发送"AT+BTSPPSEND=0,40960"进入透传后,发送数据但esp32没有回复,第二次发送才会成功。
场景复述:使用python脚本串口检测到OK则执行一次40K数据的发送:
1. PC发送"AT+BTSPPSEND=0,40960",等待回复"<"
2. PC发送40K数据,等待回复"OK"
反复执行50次,发送约2Mb数据。在某一次发送完成后,出现如下图1所示情况:                                                                                                                        
串口发送40K数据后没有蓝牙没有任何回复,脚本内超时后再次发送蓝牙回复busy。                                                                                                                        
                                                                                                                                                         

回帖(1)

周必镜

2024-6-26 17:30:27
根据您提供的信息,我将尝试分析ESP-AT-MINI-1固件在使用BTSPP传输时出现异常的原因。以下是可能的原因及其解决方案:

1. **固件问题**:可能是ESP-AT-MINI-1固件存在一些已知或未知的bug,导致在大量数据传输时出现问题。您可以尝试查找是否有固件更新或修复版本,并进行升级。

2. **串口通信问题**:在大量数据传输过程中,串口通信可能会出现问题,如数据丢失、延迟等。您可以尝试调整串口的波特率、数据位、停止位和奇偶校验等参数,以提高通信稳定性。

3. **内存不足**:在大量数据传输过程中,ESP32的内存可能会不足,导致无法正常处理数据。您可以尝试优化代码,减少内存占用,或者升级硬件以获得更大的内存空间。

4. **BTSPP协议限制**:BTSPP协议本身可能存在一些限制,如数据包大小、传输速率等。您可以尝试调整数据包大小或传输速率,以适应BTSPP协议的要求。

5. **电源问题**:在大量数据传输过程中,ESP32的功耗可能会增加,导致电源不稳定。您可以尝试更换更稳定的电源,或者使用外部电源模块来提高电源稳定性。

6. **硬件问题**:ESP32硬件本身可能存在一些问题,如焊接不良、元件损坏等。您可以尝试检查硬件连接,或者更换新的硬件。

7. **软件问题**:您的Python脚本可能存在一些问题,如发送数据的方式、等待回复的逻辑等。您可以尝试优化脚本,以提高数据传输的稳定性。

8. **串口驱动问题**:您的计算机上的串口驱动可能存在一些问题,导致串口通信不稳定。您可以尝试更新或重新安装串口驱动。

综上所述,您可以根据这些可能的原因逐一排查问题,并尝试相应的解决方案。希望这些信息能帮助您解决问题。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分