你好,对话,
首先,让我为主题描述一下我们的情况。我们的问题几乎与下面的链接相同,
https://support.dialog semiconductor.com/ble stack未接收discon。。。
区别仅在于SDK版本。我们使用的是SDK3.0.10,因为我们的产品已经推出一年多了,但是我们仍然需要为基于SDK3.1.10的指定客户定制系统功能。然后,我们遇到了这种问题。
根据上面的链接,他用SDK5.0.2.1修复了这个问题。
在SDK3.1.10中,我们找不到用户\u custs1 \u b\u data \u ntf \u cfm \u handler()或类似的函数。
您能在SDK3.0.10中帮助我们修复这个问题吗?
----链接中的注释---
我在user\u custs1\u impl.c中的user\u custs1\u b\u data\u ntf\u cfm\u handler()中设置了一个标志,以确保未提交新的BLE通知,除非上一个通知已被确认,并且我的问题已得到解决。
----结束---,
Mamoru
First, some background info. I'm using a modified version of the 5.0.2.1 SDK's ble_app_peripheral example. I'm running one custom service, adapted from user_custs1. I'm running the DA14580 as a standalone MCU that communicates with another MCU over UART. The DA14580 primarily functions as a relay that takes packets and sends them over BLE, and receives packets and sends them over UART. The DA14580 also sends packets to the second MCU to inform it of BLE state changes (connect, disconnect, etc) .
The problem that I'm seeing is that if I start sending data from the DA14580-based system to another BLE device and carry that device out of range, the BLE connection will drop but the DA14580 doesn't seem to realize it. The DA14580 doesn't start advertising again, and it never notifies the second MCU of the disconnect event. If I'm not streaming any data over BLE, then the connection drop is properly recognized.
Any ideas? I'm informing my second MCU of disconnect events within the gapc_disconnect_ind_handler() function in custs1_task.c.