8 posts / 0 new
Last post
liyang
Offline
Last seen:5 months 4 weeks ago
Expert
Joined:2014-09-24 11:51
自定义服务的属性读写问题

您好,很久没来论坛了。从14年到现在一直用DA14580在做产品。之前用的SDK3所以一直都没什么问题。
现在公司的新产品打算用SDK5,我参考“Dialog SDK 5.0.3培训材料2自定义协议“文件并使用了SDK5.0.4下的ble_app_all_in_one这个项目来进行试验。
添加新的特征值之后,运行起来的设备能被手机上的工具软件扫描并且能和手机上的工具软件进行连接。
我发现当我用手机上的蓝牙工具对自定义的特征进行写入数据时,并没有回调对应的gattc_write_cmd_ind_handler(...)函数,我记得在SDK3上是会回调
gattc_write_cmd_ind_handler(...)的。请问ble_app_all_in_one这个项目能实现对特征值进行操作吗?写入数据是会调用哪个回调函数?

Device:
CYibin
Offline
Last seen:6 months 2 weeks ago
Staff
Joined:2017-12-14 02:48
你好,

你好,

对于 SDK5.0.4 的 all in one 工程,当手机(central)向 DA14580(peripheral) 发数据时,会回调 gattc_write_cmd_ind_handler,并向用户层发送 CUSTS1_VAL_WRITE_IND 消息。用户接收到该消息之后,根据不同的特征索引值,接收不同的特征接收到的数据。

当 DA14580(peripheral) 向手机(central)发送数据时,可以参照函数 user_app_adcval1_timer_cb_handler 的做法,即发送 CUSTS1_VAL_NTF_REQ 消息

liyang
Offline
Last seen:5 months 4 weeks ago
Expert
Joined:2014-09-24 11:51
你好, 那么就是说正常的情况是会回调gattc_write

你的好,那么就是说正常的情况是会回调gattc_write_cmd_ind_handler(……)的,但是我用的这个官方提供的SDK5.0.4下的ble_app_all_in_one这个Project来进行试验发现不能回调可能是什么原因?
请问还有合适的project来进行试验验证吗?

CYibin
Offline
Last seen:6 months 2 weeks ago
Staff
Joined:2017-12-14 02:48
你好,你是通过什么判断没有回到该函数的?

你好,

你是通过什么判断没有回调该函数的?

liyang
Offline
Last seen:5 months 4 weeks ago
Expert
Joined:2014-09-24 11:51
我在那个gattc_write_cmd_ind

我在那个gattc_write_cmd_ind_handler(……)函数定义处设置了断点,用jlink仿真调试的,在手机上面write完数据后,没有进入那个属性值对应的gattc_write_cmd_ind_handler(……)中。

CYibin
Offline
Last seen:6 months 2 weeks ago
Staff
Joined:2017-12-14 02:48
你在 App 上 write 完之后,再点一下 read

你在 App 上 write 完之后,再点一下 read,能读出来你 write 的那个数据吗?

liyang
Offline
Last seen:5 months 4 weeks ago
Expert
Joined:2014-09-24 11:51
会有的,APP提示已经写成功了。请问有能用的软件demo

会有的,APP提示已经写成功了。请问有能用的软件demo project 吗?我用官方的SDK5下的别的蓝牙工程也是不能跳转到那里的。能不能给我一个确实可以跳转的?我邮箱:liyang19871228@aliyun.com

CYibin
Offline
Last seen:6 months 2 weeks ago
Staff
Joined:2017-12-14 02:48
你好,可在 SDK 中用 prox_reporter

你好,可在 SDK 中用 prox_reporter 工程尝试