我的项目是从DSPS主机修改的。我遇到了一些问题,希望得到你的帮助
当主人连接到我的奴隶,它必须发送命令给奴隶,然后奴隶发送数据给主人。
Q1:我知道连接后,主服务器应该向从服务器发送写请求,我想问一下如何做,哪一个是最好的
执行函数的位置。
Q2。哪里调用gattc_cmp_evt_handler ?
第三季。在函数gattc_cmp_evt_handler中,param->status = ATT_ERR_ATTRIBUTE_NOT_FOUND?正确吗?
如果不是,该如何改变呢?
Q4:在sps_client_task.c
第266行,status = prf_check_svc_char_validity_128(SPS_CHAR_MAX,spsc_env->sps.chars,spsc_sps_char)
status = PRF_ERR_STOP_DISC_WRONG_CHAR_PROP
如何解决这个问题
我的问题有点奇怪,但是希望你能给我一个帮助,非常感谢
设备:
嗨RandyYu,
Q1:你可以尝试在主服务器在gapc_param_update_req_ind_handler()中接受从服务器的更新参数后立即执行写请求,在gapc_param_update_req_ind_handler()中,确认消息从主机端发送,你也可以尝试通过内核计时器来完成这一点,只是在连接回调后触发一个计时器,以便给设备一些时间来完成服务发现。交换MTU并执行参数更新,当内核计时器过去时,您可以触发写请求。
问题2:gattc_cmp_evt_handler()回调在所有与GATT相关的事件中执行,以指示事件的完成并启动下一个过程。
Q3:属性未找到并不一定是错误的指示,而是发现过程的一部分,在主机发现第一个服务并且没有任何服务报告后,设备将回复该请求没有相关属性。
Q4:您提到的函数检查刚刚发现的服务的特征是否应该是spsc_sps_char数组中声明的特定属性。
由于MT_dialog
你能告诉我怎么解Q4吗?
嗨Chenpenglai,
你会说中文吗?
为了获得更好的本地支持,请将您的问题转移到CN论坛,然后我们可以用中文交谈:
https://support.dialog-semiconductor.com/forums/dialog-smartbond-bluetooth-low-energy-——software-dialog- " smartbond "系列低功耗蓝牙-软件
Br
CYibin
是的,我可以