W801 蓝牙发送数据到手机只有第一次有效以及如何修改 W801 的 MTU

发布于 2022-04-17 12: 46: 38

[1] 尝试在手机端使能 indicate 后, 返回若干条信息, 以及在程序对蓝牙命令处理后返回若干条消息, 但是发现只有第一条消息能成功接受, 其他消息则无法接受, 实验结果下图所示.
5. png
6. jpg

[2] 由于从手机 APP 往蓝牙发送的数据较长, 手机和蓝牙交换 MTU 后, 发现 W801 的 MTU 最大为 256, 是否能够通过修改程序的中某些设置来提升 W801 的 MTU?

查看更多

关注者
0
被浏览
2. 8k
Mrzhao
Mrzhao 认证专家 2022-04-17
一个嵌入式爱好者. CSDN 主页: https: //blog. csdn. net/qq_37280428? spm=1011. 2415. 3001. 5343

你进入 tls_ble_server_demo_api_send_msg 函数, 做如下修改:

int tls_ble_server_demo_api_send_msg (uint8_t *data,  int data_len) 
{
    int rc; 
    struct os_mbuf *om; 
    
    //TLS_BT_APPL_TRACE_DEBUG ("### %s len=%d\r\n",  __FUNCTION__,  data_len) ; 
    //if (g_send_pending)  return BLE_HS_EBUSY; 

    if (data_len "=0 || data == NULL) 
    {
        return BLE_HS_EINVAL; 
    }
    
    om = ble_hs_mbuf_from_flat (data,  data_len) ; 
    if  (! om)  {
        return BLE_HS_ENOMEM; 
    }
    rc = ble_gattc_indicate_custom (g_ble_demo_conn_handle, g_ble_demo_attr_indicate_handle,  om) ;  
    /*
    if (rc == 0) 
    {
        g_send_pending = 1; 
    }
    */
    return rc; 
}
1 个回答

撰写答案

请登录后再发布答案, 点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览