HM-10 AT命令:使用信标方式广播传感器数据
问题描述:
我尝试使用信标(HM-10)广播我的传感器数据,但是有一个问题,我使用循环写入AT命令,过了一段时间,它没有任何回应。HM-10 AT命令:使用信标方式广播传感器数据
这里是代码的一部分:
String pre = "AT+MARJ0x";
int sensorData = 0;
loop() {
sensorData = getSensorData(); // always returns 100 ~180
String atCommand = pre + sensorData; // ex: AT+MARJ0x100
BTSerial.print (atCommand);
delay (200);
}
它最初成功地工作约3分钟,然后将其不工作,不能在命令被发送任何。 任何人都可以帮我解决这个问题吗?
答
你正在尝试的是Ibeacon不可能的。 您只需要在传感器数据中反复设置HM-10设备中的主要Ibeacon数据。 主号码是iBeacon显示数据规格的一部分: (来源:https://developer.mbed.org/blog/entry/BLE-Beacons-URIBeacon-AltBeacons-iBeacon/)
数据规格:
IBeacons广播四种信息:
- 的UUID识别灯塔。
- 一个主号码,用于识别大型组内的信标子集。
- 标识特定信标的次要号码。
-
2的补码TX功率级别,指示离设备一米的信号强度。 此编号必须由用户或制造商为每个设备进行校准。
扫描应用程序读取UUID,主号码和次号码,并将它们引用到数据库 以获取有关信标的信息; 信标本身没有描述性信息 - 它需要这个外部数据库有用。 TX功率字段与测量的信号强度一起使用,以确定信标离智能手机有多远。 请注意,TxPower必须由用户逐个灯塔进行校准以保证准确。
对于AT-命令通常仅用于建立的装置中,不用于发送数据的HM-10设备。谷歌的一些例子,并学习如何设置BLE设备之间的通信。