【紹介動画も公開中】ムセンコネクト著書『Bluetooth無線化講座―プロが教える基礎・開発ノウハウ・よくあるトラブルと対策―』絶賛発売中

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データを送信しています。

0201060F09426C696E6B79204578616D706C65
‘B’‘l’‘i’‘n’‘k’‘y’‘ ‘‘E’‘x’‘a’‘m’‘p’‘l’‘e’

Advertising時のAdvertising Channel Index(37, 38, 39)の順序はランダム(BT 5.1仕様)です。

接続 ― スマホアプリ(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)で確認する場合の手順を記載します。

STEP
サンプルプロジェクト(soc_blinky_bgm220p)を実行します。
STEP
スマホアプリ(EFR Connect)からDevelopアプリを起動します。
EFR Connectを起動
Developアプリを選択
STEP
DevelopからBrowserを選択し、探索デバイスリストから対象の”Blinky Example”デバイスを選択します。
Browserを選択
Blinky Exampleデバイスを選択
STEP
Advertising情報を確認します。
①AdvertisingがAdvertising Extensionであることを確認
②Primary PHY/Secondary PHYがLE Codedであることを確認

本企画に関するお問い合わせ

以上で連載企画「シリコンラボ(Silicon Labs)製BLE開発キットBGM220x Wireless Gecko Module Start Kitを使ってみました」の全7回が終了です。

本企画に関するご質問はムセンコネクトまでお問い合わせください。可能な範囲でお答えいたします。

また、ムセンコネクトではコンプリートBLEモジュールLINBLEシリーズを開発・販売しておりますが、シリコンラボ社やノルディック社製BLEモジュールのファームウェア開発も承っております。

ご相談は無料です。お気軽にお問い合わせください。

よろしければシェアをお願いします
目次