写信到长度的特征价值

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
2个帖子/ 0新
最后一篇
JarireneJensen.
离线
最后一次露面:1年5个月前
加入:2017-02-05 14:44
写信到长度的特征价值

读取“training_02_custom_profile_example_v1.1”它指出user_custs1_def.h中的长特征“演示写入长度的特征值”。它被定义为50个字节长。但我没有看到代码处理写入这个特征。
形式
https://support.dialog-semicondiondiondum/forums/post/dialog-smartbond-bl ...
似乎堆栈应该能够处理大小最多512字节的特性。
我可以导致r / w 20字节,但不得更多。我正在使用示例的user_catch_rest_hndl()函数并捕捉svc1_idx_control_point_val。在该示例中,这调用了一个空函数。该信号仅包含前20个字节。
要测试我有Ben使用BlueGiga GUI工具发送数据50bytes,似乎快乐地写入50字节,但不是51个字节,即大小为50.使用读取或读取长度的读数仅产生20个字节。
您在哪里隐藏代码“展示写入长度特征值”的代码?

最好的祝福

设备:
PM_DIALOG.
离线
最后一次露面:2周2天前
职员
加入:2018-02-08 11:03
嗨Jarirenejensen,

嗨Jarirenejensen,

SDK的BLE_APP_PHERIALAL示例实现了写入长特征值。请看看SDK的这个例子。如果要写入的特征值的长度大于20字节,则将触发user_catch_rest_hndl()函数中的user_svc1_long_val_att_info_req_handler()。如果长度小于20字节,则将执行user_svc1_long_val_wr_ind_handler()。因此,如果要在没有MTU Exchange的情况下发送超过20个字节的字节,则应在BLE_APP_PERITIALLAL示例的user_svc1_long_val_att_info_req_handler()函数中执行相同的实现。由于您这样做,主机将发送“准备写入请求”,从设备将响应“准备写入响应”。否则,如果要执行简单的写请求并发送20多个字节,则应增加MTU大小。

谢谢,PM_DIALOG.