本指南将介绍如何创建可运行于英特尔® Galileo 或英特尔® Edison 开发板的蓝牙* 智能/低能耗 (BLE) iBeacon*,从而宣告开发板以 BLE 设备的形式存在着。应用运行后,您可以使用移动应用扫描并测量移动设备与开发板之间的距离。关于运行于开发板的 BLE iBeacon 应用的源代码,请访问:https://github.com/gomobile/iotapp-template-ble-ibeacon。
该示例展示了 BLE iBeacon 技术能够有效确定 BLE 设备(本例中为您的开发板)所处的位置(相对于移动设备的位置)。如欲了解设计考虑事项,包括有关该应用的详细技术信息,请访问 https://github.com/gomobile/iotapp-template-ble-peripheral#design-considerations。该项目在带有 Arduino* 扩展板的英特尔® Edison 开发板上进行了测试。
由于移动设备和开发板之间的所有通信均通过蓝牙低能耗模块完成,因此它们不必连接相同的无线网络。但英特尔 XDK IoT Edition 和开发板必须连接相同的网络。
要求
- 您已安装英特尔® XDK IoT Edition 并将其连接至英特尔® Galileo 或英特尔® Edison 开发板。具体步骤请参阅英特尔® XDK IoT Edition 入门。
- 您的开发板必须通过相同的网络连接至系统。开发板连接步骤请参阅英特尔® XDK IoT Edition 入门。
- 您的开发板必须包含蓝牙模块:
- 对于英特尔® Edison 开发板:蓝牙模块已内置于开发板。
- 对于英特尔® Galileo 开发板:您需要购买并安装可兼容 BLE 产品,比如 Grove* - BLE。
- 支持蓝牙低能耗模块的移动设备。如欲获取受支持设备列表,请访问 http://www.bluetooth.com/Pages/Bluetooth-Smart-Devices-List.aspx。
借助 BLE 外设功能创建新项目
本部分将介绍如何使用示例代码通过 BLE 宣告开发板的存在。
- 运行英特尔 XDK IoT Edition。
- 在左上方点击“Projects”选项卡。
- 点击“Start a New Project”。
- 在“Internet of Things Embedded Application”下方点击“Templates”。
- 在右侧点击“(BLE) BLE-Peripheral”。点击“Continue”。
- 在“Project Name”字段中输入项目名称,然后点击“Create”。新项目打开。
在开发板上启用 BLE
本部分将介绍如何在您的开发板上启用 BLE。
通过下列步骤,您可以使用英特尔 XDK IoT Edition 中的 “SSH Terminal”或“Serial Terminal”选项卡连接开发板。如欲详细了解如何在英特尔 XDK IoT Edition 外部创建串行终端与开发板的连接,请参阅以下文档:
- 对于英特尔® Edison 开发板,请参阅设置串行终端
- 对于英特尔® Galileo 开发板,请参阅针对 Windows*、Mac* OS X*和 Linux*系统的相应步骤。
- 在 SSH 或串行终端连接中,输入以下命令:
rfkill unblock bluetooth hciconfig hci0 up
- 输入以下命令,在 vi 文本编辑器中打开 base-feeds.conf 文件:
vi /etc/opkg/base-feeds.conf
- 在 base-feeds.conf 中插入以下行:
src/gz all http://repo.opkg.net/edison/repo/all src/gz edison http://repo.opkg.net/edison/repo/edison src/gz core2-32http://repo.opkg.net/edison/repo/core2-32
保存更改,并退出编辑器。如欲了解更多关于 vi 编辑器的信息,请访问 http://www.cs.colostate.edu/helpdocs/vi.html。 - 如欲成功运行 bleno Node.js 包,请输入以下命令:
rfkill unblock bluetooth killall bluetoothd hciconfig hci0 up
将 BLE-iBeacon Node.js* 应用上传至开发板
本部分将介绍如何构建、上传和运行相关代码,以通过蓝牙低能耗模块通知、读取并写入数据。
- 点击“Install/Build”图标
。如果提示选择上传还是创建您的项目,请点击“Build”。
- 项目创建完成后,会显示构建完成消息。点击“Upload”图标
,将项目上传至您的开发板。
- 点击“Run”图标
以运行项目。
注:如果底部的控制台窗口显示无法找到 MRAA 的消息,必须更新开发板的 MRAA 通用库。具体方法是:在英特尔 XDK IoT Edition 右下方点击“Manage your daemon/IoT device”图标,然后选择“Update libraries on board”。
测试您的应用
推荐您下载并使用支持您查看附近开发板 (iBeacon) 的移动应用以及其他 BLE iBeacon 设备来进行测试。使用 Locate Beacon,帮助您查找带有实时距离预估功能的所有附近 beacon:
参考资料