Page 1 of 1

esp32 idf 中的gatt_client 例程连接 ble 5.3的蓝牙设备时出现问题,无法发送数据。

Posted: Thu Jun 01, 2023 3:10 am
by duruoa
esp32 和esp32c3 使用idf 里example 的gatt_client, 在连接 ch582 ble 5.3芯片时出现BT_APPL: service change write ccc failed的错误,log如下:
企业微信截图_16855888829123.png
企业微信截图_16855888829123.png (41.55 KiB) Viewed 1423 times
。这是什么原因引起的错误?怎么解决?

Re: esp32 idf 中的gatt_client 例程连接 ble 5.3的蓝牙设备时出现问题,无法发送数据。

Posted: Fri Jun 09, 2023 1:44 pm
by ESP_zhanghaipeng
问题出现的可能原因分析:

1-出现BT_APPL: service change write ccc failed的错误,表示写入 Client Characteristic Configuration Descriptor (CCCD) 没有成功,你可以打印 esp_ble_gattc_register_for_notify 的返回值看看是否成功了。
2-出现这种情况,一般是因为 server 端 ccc 的 permission 不对,检查一下 server 端的 CCC 的 permission 是否是可写的?

解决方法:
正确定义 server 端的database,例如 ccc 的permission 是"可读、可写"的、ccc 对应的 characteristic 的属性"可读、可写、通知"

如果还有问题,请打印下 server 端的 database