BLE外设在读取通知时每30秒断开一次

⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子//www.wsdof.com/support.我们将在未来几天修复bug /优化搜索和标记。
5个职位/ 0个新
最后发表
BVR
离线
最后看到:1年11个月前
加入:2017-09-15 11:04
BLE外设在读取通知时每30秒断开一次

你好,

我有一个BLE特性,可在READ / NOTIFY模式。

我正在使用一个自定义的ble_peripheral_app为我的测试基础。

/ /特征
ble_uuid_from_string (xxx_UUID uuid);
ble_gatt_add_characteristic (&uuid, GATT_PROP_NOTIFY | GATT_PROP_READ, ATT_PERM_READ,
xxx_SIZE, 0, NULL, &service->xxx);
/ /描述符
ble_uuid_create16 (UUID_GATT_CLIENT_CHAR_CONFIGURATION uuid);
ble_gatts_add_descriptor(&uuid, ATT_PERM_RW, sizeof(uint16_t), 0,
技术服务- > xxx_desc);

我定期更新这个值

if (m_conn_idx != BLE_CONN_IDX_INVALID){/ /创建连接
ble_gatts_send_event (m_conn_idx类型、GATT_EVENT_NOTIFICATION
xxx_SIZE、平差);

通知和读取工作良好的前30秒,然后我的android应用程序断开连接。

我在BLE配置中使用类似于wrbl项目的设置
#定义BLE_ADV_INTERVAL (320)
#定义BLE_CONN_FAST_INTV_MAX (15)
#定义BLE_CONN_FAST_INTV_MIN (15)
#定义BLE_CONN_SLOW_INTV_MAX (520)
#定义BLE_CONN_SLOW_INTV_MIN (480)
#定义BLE_MTU_SIZE (131)

我需要修改哪些设置,以确保我可以阅读我的通知超过30秒?

非常感谢,

设备:
MT_dialog
离线
最后看到:三个月三个星期前
工作人员
加入:2015-06-08 34
嗨BVR,

嗨BVR,

如果你的android设备断开了连接,那么你必须检查断开的原因,首先,你必须检查当你断开连接时设备是否仍在运行。您是否能够在设备断开连接后立即看到设备广告?如果设备仍然在运行,你必须检查断开的原因,所以当断开发生时,你应该得到一个BLE_EVT_GAP_DISCONNECTED事件,该事件带有断开的原因,所以检查原因是调试的开始。

由于MT_dialog

BVR
离线
最后看到:1年11个月前
加入:2017-09-15 11:04
谢谢你的回复。

谢谢你的回复。

基于以下测试:
- ble_peripheral project from DA1468x_DA15xxx_SDK_1.0.12.1078.zip
- DA14681开发工具包- Pro
-更新ble_peripheral_task.c(见附件)。自定义部分在#if CFG_USER_SERVICE部分中,以简化调试+ handle_evt_gap_connected方法
-通知阅读器应用:B-BLE android (https://play.google.com/store/apps/details?id=com.billy.billylightblue)来测试我的特性(也用我们自己的软件测试)。
-我没有问题的通知从wrbl固件。

我仍然有断开连接的问题0x13:

名称:evt
细节:0 x7fd36f0
十六进制:0 x7fd36f0

名称:hdr
详细信息:{evt_code = 258, length = 10}

名称:evt_code
细节:258
十六进制:0 x102

名称:长度
细节:10
十六进制:0 xa

名称:conn_idx
细节:0
十六进制:0 x0

名称:地址
详细信息:{addr_type = PRIVATE_ADDRESS, addr = "çH\217xkr"}

名称:addr_type
细节:PRIVATE_ADDRESS
十六进制:0 x1

名称:addr
细节:“cH \ 217着”
十六进制:0 x7fd36f7

名称:原因
细节:19 \ 023的
十六进制:0 * 13

当然,设备在使用后仍可继续使用,可以直接重新连接。

谢谢你的支持。

BVR
离线
最后看到:1年11个月前
加入:2017-09-15 11:04
我只是忘了把手

我只是忘记了结尾描述符的handle_write_request。

现在一切都好。

添加最终的示例文件可能会有用:)

MT_dialog
离线
最后看到:三个月三个星期前
工作人员
加入:2015-06-08 34
嗨BVR,

嗨BVR,

谢谢您的提示,您可能还想看看681的教程部分,那里有一个关于68x系列的自定义配置文件的教程。

由于MT_dialog