完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我们使用的芯片是esp32-C3
IDF版本版本:2.8.1 Build id:20230207-1119 我们尝试连续发送261字节的报文,发几次后mesh_core/transport.c的send_seg方法会打印 Out of segment buffers 的错误信息,回调函数中ESP_BLE_MESH_MODEL_SEND_COMP_EVT事件得到了 -ENOBUFS(-105)从错误码,请问我需要进行哪方面的配置调整,以满足连续发送261字节报文的要求呢? 谢谢! |
|
相关推荐
1个回答
|
|
要解决这个问题,我们需要从以下几个方面进行调整:
1. **增加缓冲区大小**:ESP32-C3的缓冲区可能不足以支持连续发送261字节的报文。你需要调整缓冲区的大小以满足你的需求。这可能涉及到修改ESP-IDF的源代码,以增加缓冲区的大小。 2. **优化数据发送策略**:如果可能的话,尝试优化你的数据发送策略,例如,将较大的数据包拆分成较小的数据包进行发送。这样可以减少缓冲区的压力,并避免出现缓冲区不足的问题。 3. **调整传输参数**:检查你的传输参数设置,例如传输速率、重传次数等,这些参数可能会影响缓冲区的使用情况。适当调整这些参数可能会有所帮助。 4. **升级ESP-IDF版本**:你当前使用的ESP-IDF版本是2.8.1,可以尝试升级到较新的版本,看看是否有改进或修复了这个问题。 5. **查看错误日志**:仔细查看错误日志,了解问题的具体原因。这有助于你更准确地找到问题所在,并进行针对性的调整。 6. **联系技术支持**:如果以上方法都不能解决问题,你可以考虑联系ESP32的技术支持,他们可能会提供更专业的建议和解决方案。 7. **社区支持**:ESP32有一个庞大的开发者社区,你可以在社区论坛上寻求帮助,看看是否有其他开发者遇到过类似的问题,并找到了解决方案。 8. **硬件限制**:最后,需要注意的是,ESP32-C3的硬件限制可能会影响其处理大报文的能力。如果上述方法都不能解决问题,可能需要考虑更换硬件或者使用其他方法来实现你的需求。 希望这些建议能帮助你解决问题。 |
|
|
|
只有小组成员才能发言,加入小组>>
486 浏览 1 评论
552浏览 6评论
461浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
443浏览 5评论
445浏览 4评论
415浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-23 20:16 , Processed in 0.881788 second(s), Total 82, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号