【发布时间】:2014-12-13 14:27:47
【问题描述】:
我以前从未使用过蓝牙。我必须通过 BLE 发送数据,我发现每个块 20 个字节的限制。
发送者是 Arduino,接收者可以是 Android 或 PC 上的 Node.js 应用程序。
我必须发送 9 个值,存储在浮点值中,所以 4 字节 * 9 = 36 字节。我需要 2 个块来通过 BLE 存储我的所有数据。接收部分需要两个块来处理它们。如果丢失了一些数据,我不在乎。
我不是网络协议方面的专家,我认为我必须给每条消息一个递增的时间戳,以便接收者可以使用相同的时间戳粘合两个块,或者如果新的时间戳更高,则丢弃最后一个。但是我不确定如何进行校验和,如果我真的需要它,我是否真的需要关心它,或者如果 - 对于我的系统的简单 beta 版本 - 我可以忽略所有这些问题..
有人可以给我一些建议吗?类似使用 BLE 通信处理的类似情况的示例?
【问题讨论】:
-
BLE 在许多方面与经典蓝牙不同,因为您不能将这两个设备指定为“发送者”和“接收者”。您需要了解 BLE 中的通用属性配置文件 (GATT) 的基本原理,它定义了如何使用基于 UUID 的 Gatt Client 从 GATT Server 访问服务。
-
@OsmanEsen:你能说得清楚一点吗?你说得对,BLE 与普通蓝牙不同,但我需要一次连接一个设备。你的意思是使用不同的配置文件我可以发送超过 20 个字节?
-
没有。我使用德州仪器 (Texas Instruments) 的 BLE 设备进行了很多工作,这些设备也都有 20 字节的限制。此限制是 BLE 的常见限制,因此您一次不能发送超过 20 个字节。
-
@OsmanEsen 那么关贸总协定有什么用处?谴责新特性并通知客户?
标签: bluetooth arduino bluetooth-lowenergy communication chunks