Bluetoothコア仕様

Bluetoothデバイスの構成ブロック

Bluetoothコア仕様は、開発者が繁栄するBluetoothエコシステムを構成する相互運用性のあるデバイス作成に使用する、技術的構成ブロックを定義します。Bluetooth仕様は、進化する技術上、およびマーケティング上の必要性を満たすため、Bluetooth Special Interest Group (SIG)が監督し、Bluetooth SIGワーキンググループによって定期的に更新、強化されています。 

Bluetoothの2つの種類

仕様の最も基本的な実装はバージョン2.0/2.1として採用されたBluetooth Basic Rate/Enhanced Data Rate (BR/EDR)とバージョン4.0/4.1/4.2.として採用されたBluetooth低エネルギー (LE)の2つです。各実装は異なるユースケースを持ち、各実装は異なるチップセットを使用して必須ハードウエア要件を満たしています。両方のユースケースを含むアプリケーションのためのデュアルモードチップセットも利用できます。

違いは何ですか?’

  • Bluetooth BR/EDRは比較的短距離の継続的ワイヤレス接続を確立します。これはオーディオのストリーミングなどのユースケースに理想的です。
  • Bluetooth LEは、長距離短時間の一気に行う無線接続を可能にし、長時間の接続を必要としないが、バッテリを長く持たせる必要のあるモノのインターネット (IoT)アプリケーションに最適です。’
  • デュアルモードスマートフォンやタブレットなど1つのデバイスが、BRおよびEDRデバイス(ヘッドホンなど)とLEデバイス(ウエラブルやリテールビーコンなど)の両方にアクセスする必要のある場合に対応するデュアルモードチップセットも利用可能です。

コアシステムアーキテクチャ

各実装について特殊な要件があり、これについてはBluetooth仕様に詳述されていますが、Bluetoothコアシステムのアーキテクチャには多くの共通要素があります。システムにはRFトランシーバー、ベースバンド、プロトコルスタックがあり、デバイスを接続し、さまざまなデータクラスを交換できるようにします。

Bluetoothデバイスは、Bluetooth仕様に従ってプロトコル信号を交換します。コアシステムのプロトコルは無線(RF)プロトコル、リンク制御(LC)プロトコル、リンク管理(LM)プロトコル、そして論理リンク制御・適応プロトコル(L2CAP)となっており、すべてBluetooth仕様で完全に定義されています。

下位の3つのシステムレイヤは—無線、リンク制御、リンク管理のプロトコルで、Bluetoothコントローラとして知られるサブシステムにグループ化されます。—これはオプションの標準インタフェース、—ホスト-コントローラーインタフェース(HCI)—を使用する一般的な実装です。HCIは、Bluetoothホストと呼ばれるBluetoothシステムの残りの部分と双方向通信を可能にします。

プライマリコントローラは、ユースケースにより、以下の構成のいずれかとなります。

  • BR/EDRコントローラ。これには無線、ベースバンド、リンクマネージャーが含まれオプションでHCIが含まれます。
  • LEコントローラ。これにはLE 物理レイヤ、リンクレイヤが含まれ、オプションでHCIが含まれます。
  • BR/EDRコントローラとLEコントローラの合体したもの。1つのBluetoothデバイスのアドレスを一体化したコントローラが共有します。

Bluetooth仕様は、同等のレイヤ間で交換されるプロトコルメッセージを定義することにより、システム間の相互運用性を可能にします。Bluetooth仕様はまた、BluetoothコントローラとBluetoothホスト間の共通のインタフェースを定義することにより、独立したBluetoothサブシステム間の相互運用性を確保します。

Bluetoothスタック

物理(PHY)レイヤ

2.4Ghzの無線のBluetooth通信チャネルを使用して送受信を制御します。BR/EDRはより狭い帯域幅でより多くのチャネルを提供します。LEではチャネル数は少なくなりますが、帯域幅は広くなります。

リンクレイヤ

パケット構造/チャネル、検出/接続プロシージャ、送受信データを定義します。

直接テストモード

テスト担当者が、物理レイヤに、指定の一連のパケットの送受信を指示できるようにします。HCIまたは2線UARTインタフェース経由でコマンドを出します。

ホスト-コントローラーインタフェース(HCI)

Bluetoothコントローラ サブシステム(下位の3つのレイヤ)とBluetoothホストの間の標準インタフェース(オプション)

論理リンク制御・適応プロトコル(L2CAP)レイヤ

パケットをHCIへ、またはホストのないシステムで直接リンクマネージャへ転送するパケットベースのプロトコル 高次プロトコルの多重化、パケットのセグメント化と再組み立て、およびサービス品質情報を上位レイヤへ伝える作業に対応します。

Attribute Protocol (ATT)

接続確立後にデータ交換のためのクライアント/サーバープロトコルを定義します。属性はGeneric Attribute Profile(GATT)を使用して意味のあるサービスにグループ化されます。ATTはLE実装で使用され、BR/EDR実装で使用されることもあります。

セキュリティ管理者

Bluetoothデバイス間のペアリングの整合性、認証、暗号化を管理するプロトコルと動作を定義し、他のコンポーネントが使用するセキュリティ機能のツールボックスを規定して、多種多様なアプリケーションにおいて必要となるほとんどすべてのセキュリティレベルに対応できるようにします。

Generic Attribute Profile (GATT)

GATTはAttribute Protocolを使用して、サービスをグループ化します。これらのサービスはデバイスの一部の動作をカプセル化し、GATT機能に基づいた一般動作、ユースケース、ロールを記述します。サービスフレームワークは、サービスとその特性のプロシージャと形式を定義します。これには特性の検出、読み取り、書き込み、通知、表示、ならびに特性のブロードキャスト設定が含まれます。GATTはBluetooth LE実装でのみ使用されます。 GATTに関する詳細情報はこちら 

Generic Access Profile (GAP)

Bluetooth LE実装においてGATTと連携して動作し、Bluetoothデバイスと共有情報の検出に関係するプロシージャとロールを定義し、接続する管理要素をBluetoothデバイスにリンクします。