Bluetooth®|基礎編

プロファイルの例 : Health Thermometer Profile

2018.02.13

この記事のポイント

・Health Thermometer Profileを例にコレクタとサーモメータのロール、サービス、キャラクタリスティックを示した。

今回は、実際のプロファイルの例として、Health Thermometerのプロフィルを示します。構造などに関しては、前回のGATTのまとめを参照してください。

Health Thermometer Profile

Health Thermometer Profileは、Bluetooth SIGが提供している標準の体温計プロフィルです。このプロファイル、サービスの仕様などは、Bluetooth SIGのウェブサイトからダウンロードすることができます。詳細に関しては、実際の仕様書を参照してください。

サーモメータのロール

Health Thermometer Profileは、サーモメータとコレクタの2つのロール(role:役割)を規定しています。サーモメータは温度を測定するデバイスで、コレクタはサーモメータからの温度などのデータを受け取るデバイスです。サーバとクライアントという関係においては、サーモメータはGATTサーバであり、コレクタはGATTクライアントになります。

Bluetooth SIGのHealth Thermometer Profileのロール

この図は2つのロールの関係を示しており、サーモメータはHealth Thermometer ServiceとDevice Information Serviceの2つのサービスを必要とします。

コレクタのロール

コレクタはHealth Thermometer Serviceをサポートする必要があります。Device Information Serviceのサポートはオプションです。Device Information Serviceは、製造社名、モデル名などの情報を提供するものです。

Health Thermometer Profileの、コレクタに対する機能(Procedure、GATT機能参照)要求は以下になります。コレクタは、Health ThermometerとDevice Informationのサービス検索(Discovery)と、Health Thermometer Serviceのキャラクタリスティックとディスクリプタ、そして、Device Information Serviceのキャラクタリスティックを検索する必要があります。これらはGATTサブプロシージャとともに行われます。

キャラクタリスティックについて、簡単に説明します。

Temperature Measurement Characteristic
コレクタは、温度測定値を受け取るためにサーモメータに接続し、複数種の通告を受け取ることができる。

Intermediate Temperature Characteristic
オプションです。コレクタは、温度測定の進行を表示する目的で、サーモメータから中間温度の通知(Notification)を受け取れる。

Measurement Interval Characteristic
オプションです。コレクタは、サーモメータからの周期的な通告を受け取ることができる。

  • – Valid Range Descriptor
    Measurement Interval Characteristicが書き込み可能時に、コレクタはサーモメータに対しサポートされている測定インターバルレンジを決定するために、Valid Range Descriptorの値を読むことが可能。

Temperature Type Characteristic
オプションです。コレクタは、人体のどこの温度測定かを示す値を読むことが可能になる。

以上、概略ですが、実際のプロファイルはこの様な構成であることをイメージできればと思います。プロファイルにはさらに細かい仕様が含まれていますので、これをベースに仕様書を読んでいただければと思います。