方法ble_gattc_indicate_custom尾部 ble_gattc_process_status 释放了,或者说是修改了状态
我曾经碰到过的是wm_ble_uart_if.c 中RING_BUFFER_SIZE 太小,导致不能全部发送
wm_bt_util.c
你可以在wm_ble_server_api_demo.c中ble_server_indication_sent_cb,加上几句代码,验证是否存在环形buff缓冲区小了的问题。
个人认为能解决办法有几个:
1、适当增加环形buffer的长度(最简单,前提ram足够,数据包长度足够单一、固定)
2、自己分包发送,收到返回,再发送下一包。(一问一答,稳健,但速度慢)
3、实现demo 的 event并注册,发送成功后,写入下一包。(未验证)
看没人回复,我提供下自己的思路,希望对你有帮助
只跑示例代码,设置mtu,是能超过23字节的。
没碰到过,mtu我设置的是256,还用做了ota升级
代码没看出啥问题,唯一跟示例有区别的是 rev_data, rev_data 缓冲区大小对吗?只打印长度试试?
问 ubuntu 下如何下载程序到开发板