Silicon Labs BLEモジュールのLong Range化手順④【Tips集】
こんにちは、ムセンコネクトCMOの清水です。(プロフィール紹介はこちら)
連載企画「シリコンラボ(Silicon Labs)製BLE開発キットBGM220x Wireless Gecko Module Start Kitを使ってみました」の最終回です(企画の趣旨や概要説明はこちらの記事をご覧ください)。
最終回はSilicon Labs BLEモジュールLong Range化手順の「Tips集」です。
サンプルプロジェクトのGATTカスタムサービスについて
ここでは、サンプルプロジェクトSoC – BlinkyのGATTカスタムサービス(Blinky Example)を見てみます。
Blinky Exampleカスタムサービス
Project Explorer Viewの\config\btconf\gatt_configurator.btconfファイルをダブルクリックします。
サンプルプロジェクトSoC – BlinkyのLEDとButtonを制御するためのカスタムサービスはBlinky Exampleです。Blink ExampleサービスにはLED制御用のキャラクタリスティック(LED Control)とButton制御用のキャラクタリスティック(Report Button)が定義されています。
LED Controlキャラクタリスティック
Blinky ExampleサービスのLED Controlをクリックします。
LED Controlキャラクタリスティックの定義{UUID、データ長、プロパティ等}を確認できます。LED Control用のデータ長は1バイトです。操作としてはRead/Writeが可能です。
Report Buttonキャラクタリスティック
Blinky ExampleサービスのReport Buttonをクリックします。
Report Buttonキャラクタリスティックの定義{UUID、データ長、プロパティ等}を確認できます。Report Button用のデータ長は1バイトです。操作としてはRead/Notifyが可能です。
LED Control/Report Buttonキャラクタリスティックのハンドル
LED Control/Report Buttonキャラクタリスティックのハンドル値は、gatt_db.hファイルで確認できます。
LED Controlキャラクタリスティックのハンドルは21、Report Buttonキャラクタリスティックのハンドルは23となっています。
BLE SnifferによるLong Range動作の確認
BLE Snifferを使用したLong Range化の動作確認手順を記載します。
使用したBLE SnifferはTeledyne Lecroy社製のSodera LE(BT v5対応 ComProbe Protocol Analysis System Release 15)です。
Advertising ― サンプルプロジェクトを実行
ペリフェラル(84:2E:14:23:BE:F2 Public)からCoded PHY(125kbps)で以下のAdvertisingデータを送信しています。
02 | 01 | 06 | 0F | 09 | 42 | 6C | 69 | 6E | 6B | 79 | 20 | 45 | 78 | 61 | 6D | 70 | 6C | 65 |
‘B’ | ‘l’ | ‘i’ | ‘n’ | ‘k’ | ‘y’ | ‘ ‘ | ‘E’ | ‘x’ | ‘a’ | ‘m’ | ‘p’ | ‘l’ | ‘e’ |
接続 ― スマホアプリ(Blinky)のDEVICE LISTで”Blinky Example”を選択
セントラル(76:B4:40:B7:64:E4 Resolvable)からCoded PHY(125kbps)で接続要求(AUX_CONNECT_REQ)を送信しています。
Write受信 ― Blinkyアプリ画面でLightをタップ
Light点灯のとき、セントラルからCoded PHY(125kbps)でWrite Request(ハンドル:21、データ:0001)を送信しています。
※ハンドル:21はLED操作のハンドル
Light消灯のとき、セントラルからCoded PHY(125kbps)でWrite Request(ハンドル:21,データ:0000)を送信しています。
Notify送信 ― 評価ボードのBTN0ボタンを押す/離す
ボタンを押したとき、ペリフェラルからCoded PHY(125kbps)でNotification(ハンドル:23,データ:0001)を送信しています。
※ハンドル:23はButton操作のハンドル
ボタンを離したとき、ペリフェラルからCoded PHY(125kbps)でNotification(ハンドル:23,データ:0000)を送信しています。
切断 ― Blinkyアプリ画面から戻るとき
セントラルからCoded PHY(125kbps)で切断指示(LL_TERMINATE_IND)を送信しています。
スマホアプリ(EFR Connect)によるLong Range化の確認
Long Range化したAdvertisingをスマホアプリ(EFR Connect)で確認する場合の手順を記載します。
本企画に関するお問い合わせ
以上で連載企画「シリコンラボ(Silicon Labs)製BLE開発キットBGM220x Wireless Gecko Module Start Kitを使ってみました」の全7回が終了です。
本企画に関するご質問はムセンコネクトまでお問い合わせください。可能な範囲でお答えいたします。
また、ムセンコネクトではコンプリートBLEモジュールLINBLEシリーズを開発・販売しておりますが、シリコンラボ社やノルディック社製BLEモジュールのファームウェア開発も承っております。
ご相談は無料です。お気軽にお問い合わせください。