-->

我可以阅读使用Arduino的iBeacon显示的数据?(Can I read iBeacon da

2019-10-23 17:26发布

我使用的是HM-10模块的Arduino UNO。

我的要求是使用Arduino的靠近我ibeacons读取数据。 可能吗? 我一直没能找到任何这文章。 所有文章谈谈你的android手机与Arduino的连接。 任何想法?

Answer 1:

对的,这是可能的。 我使用的HM-10作为iBeacon显示检测器(linksprite.com BLE 4.0盾),并且它被成功地检测iBeacon显示模式运行的RadBeacon。 在我的HM-10的固件是540版本。

之前,它会检测RadBeacon,我只好送HM-10下面的命令:

AT+ROLE1
AT+IMME1
AT+RESET

然后我用了AT-DISI? 命令,串行监控是示出从RadBeacon(和一个其它信标)接收的广播(例如)如下:

OK + DISISOK + DISC:4C000215:2G234454CF6D5A0FADF2F4911BA9FFA7:00000001AC:0CF3EE041CCE:-052OK + DISC:00000000:00000000000000000000000000000000:0000000000:B9782E08068C:-071OK + DISCE

在这个例子中,HM-10检测我RadBeacon具有2G234454的UUID ...与-052信号强度。 它也检测另一个BLE信标(我的AppleTV的楼下)用的-071信号强度B9782E08068C的UUID。

我绝对没有任何的这个东西非常有见地,但它似乎是为我工作至今。 我的下一个挑战将是找出如何解析接收文本数据。 我在远方/信号强度数据,以便触发动作,最感兴趣的当RadBeacon变得非常接近HM-10。

[全面披露:我搞乱了一些上面,因为我不知道任何信息都是私人或非法侵入或任何UUID号]

[顺便说一句,在nRF8001 BLE盾是不会这样做的,因为它只能在外围模式下运行。]



Answer 2:

在HM-10的固件版本V539,它增加了一个AT命令列出附近iBeacons。 该命令是AT+DISI? 。 你只需要建立Arduion通过串行口发送命令和解析返回的数据。



Answer 3:

是的,你可以得到附近iBeacons的最小和最大数量。 您需要安装HM-10 Arduino的乌诺。

尝试使用这个库: https://github.com/dinosd/BLE_PROXIMITY您可以配置适当的AT命令,如果你想配置它。 但是,应该使用默认设置正常工作。

使用SoftwareSerial访问HM-10。



文章来源: Can I read iBeacon data using Arduino?