乐鑫技术交流
直播中

王银喜

8年用户 2558经验值
私信 关注
[问答]

在esp32-c3例程esp-idf-v4.4中gatt_client作为主机模式,连接从机的注册方式怎么改成indicate方式?

在esp32-c3 例程esp-idf-v4.4中gatt_client作为主机模式,连接从机的注册方式怎么改成indicate方式?

例程中定义了NOtiFY的UUID

//#define REMOTE_SERVICE_UUID        0x00FF

//#define REMOTE_NOTIFY_CHAR_UUID    0xFF01

现在想使用esp32-c3 作为客户端通过indicate的方式链接 蓝牙服务端模块,例程只是描述了NOTIFY的方式,这种方式读写是在一个UUID上的,但是indicate的读写和特征描述都是在不同的UUID上,请问作为客户端模式下怎么使用indicate的方式 蓝牙服务端模块,同时能够实现读写操作?


Code: [Select all] [Expand/Collapse]

  •                     status = esp_ble_gattc_get_char_by_uuid( gattc_if,
  •                                                              p_data->search_cmpl.conn_id,
  •                                                              gl_profile_tab[PROFILE_A_APP_ID.service_start_handle,
  •                                                              gl_profile_tab[PROFILE_A_APP_ID.service_end_handle,
  •                                                              remote_filter_char_uuid,
  •                                                              char_elem_result,
  •                                                              &count);
  •                     if (status != ESP_GATT_OK){
  •                         ESP_LOGE(GATTC_TAG, "esp_ble_gattc_get_char_by_uuid error");
  •                     }
  •                     /*  Every service have only one char in our 'ESP_GATTS_DEMO' demo, so we used first 'char_elem_result' */
  •                     if (count > 0 && (char_elem_result[0.properties & ESP_GATT_CHAR_PROP_BIT_NOTIFY)){
  •                         gl_profile_tab[PROFILE_A_APP_ID.char_handle = char_elem_result[0.char_handle;
  • [color=#FF0000]                        esp_ble_gattc_register_for_notify (gattc_if, gl_profile_tab[PROFILE_A_APP_ID].remote_bda, char_elem_result[0].char_handle);
  • //此处怎么怎么更改?
  •                     }



GeSHi © Codebox Plus Extension

更多回帖

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