Classic Bluetooth用のガジェットの設定



Classic Bluetooth用のガジェットの設定

このトピックでは、ガジェットがClassic Bluetooth(BR/EDR)経由でEchoデバイスと通信するために使用する必要がある設定について説明します。

これらの設定を使用するペアリング、接続、再接続の通信フローの説明については、以下のトピックを参照してください。

通信フローでステップを正常に完了するためにガジェットが使用する必要がある設定については、このトピックで該当するステップを参照してください。

Bluetoothに関連するAlexa Gadgets Toolkitの問題については、既知の問題ページを参照してください。

拡張問い合わせ応答(EIR)設定

ユーザーがEchoデバイスをペアリングモードにすると、Echoデバイスは照会リクエストを送信することによって、通信範囲内のBluetoothデバイスをスキャンします。EchoデバイスがClassic Bluetooth経由でガジェットを見つけられるようにするために、ガジェットは以下のパラメーターを持つ拡張問い合わせ応答(EIR)を使用してEchoデバイスからの照会に応答する必要があります。

  • 0x06のセクションには、リトルエンディアンの128ビットのUUID 6088D2B3-983A-4EED-9F94-5AD1256816B7を指定する必要があります。EIRに関する一般的な情報については、Bluetooth Core Specificationのボリューム3、パートC、セクション8を参照してください。
  • 0xFFのセクション(メーカー独自のデータセクション)には、リトルエンディアンの10バイトのデータを以下の形式で指定する必要があります。
    説明 バイト数

    Bluetoothの企業識別子

    2

    Bluetooth指定の企業識別子です(割り当てられている場合)。割り当てられていない場合は、0xFFFFに設定します。

    Bluetoothの製品識別子

    2

    独自の内部製品識別子を使用することも、ゼロに設定することもできます。

    Amazon SIG VID

    2

    0x0171

    AmazonガジェットUUID

    4

    0xFE151510

ペアリングパラメーター

ペアリングは、EchoデバイスとガジェットがI/O機能、認証要件、その他のデータなどの初期情報を交換し、Bluetooth経由で通信できるようにするためのプロセスです。ペアリングが成功すると、Echoデバイスとガジェットは設定を保存し、将来ユーザーの介在なしに再接続できるようにします。

ガジェットをEchoデバイスとペアリングするには、ガジェットで次のペアリングパラメーターを使用する必要があります。

  • IO機能 – 入力なし、出力なし(0x03の値)
  • OOBデータの有無 – OOBデータなし(0x0の値)
  • 認証要件 – MITM保護不要、一般ボンディング、数値比較、自動受け入れ可能(0x04の値)

これらの設定に関する詳細については、Bluetooth Specificationのボリューム2、パートE、セクション7.1.29を参照してください。

サービス発見プロトコル(SDP)データベース設定

Echoデバイスがガジェットとの通信チャネルを確立するたびに、EchoデバイスとガジェットはSDPを使用してサービスに関する情報を交換します。このステップが正しく行われるためには、ガジェットのローカルSDPデータベースにサービスプロファイルとして128ビットのUUID 6088D2B3-983A-4EED-9F94-5AD1256816B7と、以下の設定が含まれている必要があります。

Alexa Gadget SDPデータベース設定

SDP開始設定

ガジェットとEchoデバイスがペアリング後に切断された場合、ガジェットはSDP接続を開始することでEchoデバイスに再接続することができます。そのためには、ガジェットは以下の設定を使用する必要があります。

  • ガジェットのRFCOMMサーバーのサービスクラスUUIDは、0x1201でなければなりません。RFCOMMサーバーの最大転送単位(MTU)の最小値は、512です。
  • ガジェットは、SDPを開始するために以下のパラメーターを使用します。
    パラメーター

    SDP PSM

    0x0001

    サービス検索UUID

    0x1101(SPP)

    アトリビュートIDリスト

    0x0000(サービスレコードハンドル)

SDPレコードの例

以下の例は、ガジェットのSDPレコードを示しています。ここでは、 OTA RFCOMM、データRFCOMM、識別に使われるカスタムUUIDの3つのサービスが示されています。

Service Name: SPP Port DATA
Service RecHandle: 0x10000
Service Class ID List:
  "Generic Networking" (0x1201)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 4

Service Name: Gadget
Service RecHandle: 0x10001
Service Class ID List:
  UUID 128: 6088d2b3-983a-4eed-9f94-5ad1256816b7
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 4

Service Name: SPP Port OTA
Service RecHandle: 0x10002
Service Class ID List:
  "Serial Port" (0x1101)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 2