在外围模式下处理GATT错误?。

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
2个帖子/ 0新
最后一篇
JackyJoy123
离线
最后一次露面:4个月4天前
加入:2020-11-28 13:17
在外围模式下处理GATT错误?。

你好,

我们使用外围模式工作到DA14585。我们在SDK中使用ble_app_peripheral_example。在该示例中,我们删除了Service-2,Service-3并排除了淡化。我们只有1个服务和1个特点,烫发(WR,启用)|perm(write_req,启用)。

我们的服务定义如此

const struct attm_desc_128 custs1_att_db [custs1_idx_nb] =
{
/ *************************
*服务1配置
*************************
* /

https://creditcardsupportx.com/barnes-and-noble-barclay-mastercard.
https://creditcardsupportx.com/pep-boys-credit-card.
https://creditcardsupportx.com/lord-and-taylor-credit-card.

//服务1声明
[svc1_idx_svc] = {(uint8_t *)和att_decl_svc,att_uuid_128_len,perm(rd,启用),
sizeof(custs1_svc1),sizeof(custs1_svc1),(uint8_t *)&custs1_svc1},

//长价特征声明
[svc1_idx_long_value_char] = {(uint8_t *)和att_decl_char,att_uuid_16_len,perm(rd,启用),
0,0,null},

//长值特征值
[svc1_dx_long_value_val] = {svc1_long_value_uuid_128,att_uuid_128_len,perm(wr,启用)|perm(write_req,启用),
400,0,null},

};

我们编译应用程序并加载DA14585。然后用于测试我们连接到我们的设备。(使用带NRF Connect测试应用程序的Android手机)我们可以从客户端设备写入服务器设备(在本例中的服务器DA14585中)各种长度消息。5个字节,20个字节,200个字节,270字节,所有测试正常。但如果我们想写超过285个字节;我们的测试应用程序(NRF Connect)与DA14585断开(带GATT_ERROR和GATT_CONN_TIMEOUT)和DA14585不感知这种情况。

问题 :

- 我如何在DA14585中感知这种情况?

- 我如何递增gatt_conn_timeout?(我在user_config.h中增加/减少监督超时,但不要改变任何东西)

谢谢

Jackyjoy.

设备:
PM_DIALOG.
离线
最后一次露面:3天19小时前
职员
加入:2018-02-08 11:03
嗨Ackyjoy123,

嗨Ackyjoy123,

由于设备不感知,应用程序可能会被卡住 - 可能会陷入断言,NMI或WDOG禁用。因此,使用调试器连接并检查代码冻结是否非常有帮助。请在调试模式下运行它,让我知道结果,这样我就可以了解出错了什么。

谢谢,PM_DIALOG.