我的要求是连接已连接到传感器和iOS应用程序的蓝牙模块,然后读取传感器数据
为此,我使用了以下设备和技术
1)蓝牙模块 - HM-10(BLE模块)2)iPhone 6 3)arduino代码在这里解释 - http://ladvien.github.io/robots/connect-an-arduino-to-iphone/传感器 - 力传感器
事情顺利发生,因为我预期可以通过蓝牙连接连接和接收数据
我使用了7 6个传感器,这是我收到的消息格式:b:c:d:e:f
a = 3位数
但如果这个格式大小超过20个chracters流将打破它并发送,所以我做了一个小研究,似乎BLE Gatt默认大小是20字节
so my first question is , is this configurable ? can i revieve more than 20 bytes
还有我用apple doc读过的东西,它说我们可以在一个连接间隔内发送/接收多组数据
我怎么能调整这个配置?通常,设备在读取下一组数据之前需要休息60ms
来源 - :https://spin.atomicobject.com/2014/10/30/ios-core-bluetooth-read-requests/
对此的任何解释?????
1 回答
在iOS上,据我所知,你无法以任何方式改变BLE数据包的大小 . 事件,如果你可能那么必须在外围设备而不是在中央配置 . 我知道在BT 4.2上他们已经添加了一些数据包长度扩展的东西,但我还没有看过它..
说完这一切之后,我没有看到尝试扩展数据包大小的原因 . 如果您无法在一个数据包中放入所需的数据,那么您可以将数据分成几个数据包 . 如果使用写命令,则可以在同一连接间隔内容纳多个数据包,但缺点是它们在应用程序级别不受影响 . 虽然他们仍然处于“BLE级别” . 写命令对应于iOS上的CBCharacteristicWriteWithoutResponse .
我不知道这是否有用..