我正在使用CBCharacteristicWriteWithResponse
(使用 BGLib 的 BLE112)向外围设备写入/发送 40 个字节,我原以为它会以两个 20 个字节的块到达。相反,它是在 18、18 和 4 三个街区到达的。
知道为什么我会看到这种行为吗?
我正在使用CBCharacteristicWriteWithResponse
(使用 BGLib 的 BLE112)向外围设备写入/发送 40 个字节,我原以为它会以两个 20 个字节的块到达。相反,它是在 18、18 和 4 三个街区到达的。
知道为什么我会看到这种行为吗?
我一直在嗅探连接后的初始交换。
通过 ATT_Exchange_MTU_Req,iDevice 说它可以支持 135 字节的 MTU!(0x0087) BLE112 然后以 23 字节的 ATT_Exchange_MTU_Rsp 响应。iOS 会记住并使用此值作为未来与外围设备通信的基础(ATT_Exchange_MTU_Req/Rsp 的全部要点)
在 BTSpec4.0.pdf 部分 3.4.6.1 Prepare Write Request 中,它说 Part Attribute 值具有 ATT_MTU-5 = 23 - 5 = 18 个字节来使用包含该值的一部分。
如果 BLE 专家@Apple 确认了这一点,那么可以合理地确定这是正确的。