关于iPhone:蓝牙LE配置文件,用于读取测量数据

Bluetooth LE Profile for reading measured data

在过去的几个小时里,我读了很多有关Bluetooth LE的文章,但是我不太了解配置文件的工作原理。我想将iPhone与BTLE上的自制设备配对。
设备应通过蓝牙发送测得的温度值,湿度或其他值,iPhone应该读取该数据。

我了解了BTLE规范中的不同配置文件(甚至涉及心脏测量),但是例如当阅读CO排放时,如何进行?

非常感谢!

关于玛丽,


这有两个方面:您将在设备上定义的配置文件,以及为与iOS应用程序中的此配置文件进行通信而编写的代码。

在设备上,您将为要收集的测量定义包含特定服务的配置文件。您可以在主要的蓝牙开发者网站上的列表中找到几种标准的蓝牙LE配置文件。其中包括温度,心率和步行节奏的配置文件,因此,如果您在以下类别之一中提供测量,则可以使您的设备提供其中一项服务,并且可以从中读取的任何iOS应用程序均可使用服务。

对于现有服务之一未涵盖的值(例如您提到的湿度读数),您需要创建自己的自定义服务。您只需要定义服务特征(您将提供的数据类型以及提供方式),并为该服务提供唯一的标识符,因为它是您正在创建和识别的标识符。不属于蓝牙组织制定的标准规范的一部分。

如何定义这些服务和特征将取决于您用于设备的特定Bluetooth LE硬件。我最近在Bluegiga的BLE112芯片上完成了大部分工作,该芯片结合了低功耗微控制器和蓝牙LE发射器。他们有很好的工具来定义设备配置文件和创建匹配的固件,并且可以在其芯片上进行设??置非常简单。我不能代表其他制造商,但是他们很可能有类似的东西。

在硬件上定义了配置文件后,您将需要寻找宣传该配置文件的设备,并能够在您的iOS应用程序中连接到它们。您将为此使用Core Bluetooth,我强烈建议从Apple的示例应用程序之一开始,例如其温度传感器示例。该示例使用标准的健康温度计配置文件,但是您可以对其进行调整以找到除温度读数之外的专有服务。在该示例中,您可以看到它们如何读取和处理从LE设备返回的二进制数据。

我强烈建议观看有关该主题的Apple的两个WWDC 2012会话视频,即Session 703-Core Bluetooth 101和Session 705-Advanced Core Bluetooth,因为它们提供了有关该主题的大量背景并展示了此示例的实际示例。在使用中。