繁体   English   中英

iOS BLE 特性控制点写入 - ATT 错误

[英]iOS BLE Characteristic Control Point Write - ATT Error

我在control point characteristic上执行write时遇到问题。

也许我提供了一个错误的值,因为我不完全理解控制点的性质。 我已经注意到了一些关于实现旁边的控制点值的规范。

即便如此,我不会收到比ATT Unknown更详细的错误描述,所以我无法找出根本原因。

char buffer[1];
buffer[0] = 0x01; // opCode - 1 byte
// buffer[1] = 0x00; // Operand - variable length, N/A in this case
// buffer[2] = 0x00; // Crypto Data, 3 bytes, (handled by encryption manager? investigating)
NSData *data = [NSData dataWithBytes:buffer length:1];
NSData *data2 = [self.encryptionManager encrypt:data];
[_peripheral writeValue:data2 forCharacteristic:characteristic type:CBCharacteristicWriteWithResponse];

ATT错误说明

顺便说一下,所有其他配置文件/控制点都可以成功读取和写入。 这已在 Android 上成功测试 - 不是我。

返回该错误代码的是您的远程设备。 规范提到设备应何时发送此代码,如下所示:

2.3 客户端特征配置描述符配置不当(0xFD)

当未根据配置文件或服务的要求配置客户端特征配置描述符时,使用客户端特征配置描述符不正确配置错误代码。

如果错误代码被正确使用 - 我不知道。 请阅读您的远程设备的文档如何使用它。 因为现在有点像您在问为什么随机 http 服务器响应错误 500。

“控制点”或多或少仅表示您写入的特征。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM