错误读取长未完成(给出错误)

3个帖子/ 0个新帖子
最后发表
布莱恩
离线
最后看到:6年5个月前
专家 主
加入:2014-10-16 18:10
错误读取长未完成(给出错误)

我有一个温度计设备,在它的设备信息服务中有8个特点。配对(成功)后,我尝试阅读8个特征。在最后一个,即reg-cert-data特征上,实际读取该值;至少有22个字节被读取。我得到读指示,但事件给出一个错误。如文档所示,所有其他的读取都是完整的(但它们要短得多)。错误是“属性不长”。为什么我得到这个错误在这里,而不是其他任何地方,当其他属性都不是长?

文档是否不完整,关于GATT_READ_LONG,我需要做一些其他的事情,而不仅仅是处理读指示?(我使用GATT_READ_LONG,因为文档声明我可以使用其中之一,一切都处理好了;以这种方式,我用相同的代码涵盖长字节和< 22字节的读取。)

我应该补充的是,在gapm_set_dev_config_cmd中有一个max_mtu参数,但是没有在任何地方记录它。设置这个参数有什么作用吗?如果对mtu进行全局搜索,则通过API将许多参数的值固定为23。

JE_Dialog
离线
最后看到:2个月1个星期前
工作人员
加入:2013-12-05 14:02
你好,布莱恩,我已经登录了

你好,布莱恩,我已经记录了你的问题,并将尽快回应一些反馈。
BR JE_Dialog

布莱恩
离线
最后看到:6年5个月前
专家 主
加入:2014-10-16 18:10
作为我的一项工作

作为一种解决方法,我检查ATT_ERR_ATTRIBUTE_NOT_LONG错误并继续,就像没有错误一样。这样做会导致设备的正确行为,就好像读取没有报告错误一样。我不确定这是设备问题还是DA14580问题。错误毕竟应该是错误(通常表示违反规范)。这个“错误”更像是信息。我想知道是否还有其他的“错误”,应该像信息一样处理,人们可以继续前进,就像操作正常完成一样?