你好呀,
我对BLE特征的许可有一些疑问。
我们的客户希望我们的一个设备的特点支持通知和指示,因此我将其设置如下:
[customer_idx_control_point_val] = {customer_control_point_uuuid_128,ATT_UUID_128_LEN,PERM(WR,ENABLE)|perm(write_req,启用)|perm(ind,启用)|perm(ntf,启用),def_cust1_indicatabled_char_len,0,null},
我只是想知道,它是否合法地将一个特征与通知和指示许可设置?这是一个正常情况吗?
我发现对话框的SDK不适用于通知和指示。
如果我设置了“perm(ind,启用)| perm(ntf,启用)”,只有通知工作。当主机发送“02 00”(启用指示)时,DA14585将返回PRF_ERR_INVALID_PARAM。
请检查代码“status = check_client_char_cfg(perm_is_set(perm,ntf,启用),param);”在“\ sdk \ ble_stack \ profiless \ custom \ custs \ src \ custs1_task.c”中?
非常感谢。
关键词:
设备:
嗨斯坦利_yeh,
我们不支持在相同特征中的通知和指示,因为它没有意义。您只会收到一个指示或仅限通知。您已发布的代码,请检查特性是否可指定或通报。
谢谢,PM_DIALOG.
嗨pm_dialog,
我的意思是特征支持这2个权限,指示和通知,但只有一个权限将一次启用。
我不是说这两个权限同时启用。
如果主机发送01 00到我们设备的0x2902描述符,我们的设备将通知邮件到主机,
如果主机发送02 00到我们设备的0x2902描述符,我们的设备将指示托管的消息。
你能告诉我为什么没有意义吗?
非常感谢。:)
嗨斯坦利_yeh,
是的,这是预期的,只有一次权限将一次启用。特征只有可欺骗或仅通知一次,这就是我们不支持相同特征中的通知和指示的原因。
谢谢,PM_DIALOG.