Silicon Labs社 Bluetooth Xpress
クイックスタートガイド(初級編)
2019年 2月
2019年 2月
ver. 1.2 2019年 2月 2/62 TecStar Company
Silicon Labs社 Bluetooth Xpress
クイックスタートガイド(初級編)
目次
1 はじめに ................................................................................................................... 4
2 Bluetooth Xpressの概要............................................................................................ 5
2-1 製品ラインナップ ...................................................................................................................... 5
2-2 Bluetooth Xpressの動作モード ................................................................................................. 6
3 開発環境のご紹介 ..................................................................................................... 7
3-1 ハードウェア ............................................................................................................................ 7
3-1-1 Wireless Xpress BGX13P Starter Kit (SLEXP8027A) ............................................................. 7
3-2 ソフトウェア .............................................................................................................................. 8
3-2-1 Xpress Configurator ............................................................................................................... 8
3-2-2 BGX Commander................................................................................................................... 9
3-2-3 VCP driver ............................................................................................................................. 9
3-2-4 ターミナルソフト ..................................................................................................................... 9
4 各種ドキュメントの入手方法 ...................................................................................... 10
4-1 使用方法に関する情報 ........................................................................................................... 10
4-2 ドキュメントの入手方法 ........................................................................................................... 10
5 使用方法 ................................................................................................................ 11
5-1 基本動作を確認する (BGX単体) .......................................................................................... 11
5-1-1 セットアップ (BGX) ............................................................................................................ 11
5-1-2 UARTを使ってコマンド制御する (local COMMANDモード) .............................................. 14
5-1-3 設定値を取得する (get コマンド) ........................................................................................ 17
5-1-4 設定値を変更する (set コマンド) ........................................................................................ 20
5-1-5 設定値の変更を ROMに書き込む (save コマンド) ............................................................. 22
5-1-6 BGXをリスタートする (reboot コマンド) .............................................................................. 24
5-1-7 設定値を初期状態に戻す (facコマンド) ............................................................................. 25
5-2 基本動作を確認する (BGX ⇔ スマートフォン) ...................................................................... 27
5-2-1 セットアップ (スマートフォン) .............................................................................................. 27
5-2-2 接続する ............................................................................................................................. 29
5-2-3 データを送受する (STREAMモード) ................................................................................. 30
5-2-4 スマートフォンからリモート制御する (remote COMMANDモード) ...................................... 34
5-2-5 接続情報を消す (clrb) ....................................................................................................... 37
5-3 基本動作を確認する (BGX ⇔ BGX) ................................................................................... 41
5-3-1 セットアップ .......................................................................................................................... 41
5-3-2 接続対象を検出する (scan コマンド) .................................................................................. 42
ver. 1.2 2019年 2月 3/62 TecStar Company
5-3-3 接続する (con コマンド) ..................................................................................................... 44
5-4 モード遷移を制御する (BGX単体) ........................................................................................ 47
5-4-1 str_selectピンの実装 (local COMMANDモード ⇔ STREAMモード) ............................... 48
5-4-2 str コマンド (local COMMANDモード ⇒ STREAMモード) ............................................... 51
5-4-3 ブレークアウト・シーケンス (STREAMモード ⇒ local COMMANDモード) ....................... 52
5-5 モード遷移を制御する (BGX ⇔ BGX) ................................................................................. 53
5-5-1 セットアップ .......................................................................................................................... 53
5-5-2 モード遷移を行う ................................................................................................................. 54
5-5-3 切断する (dct コマンド) ...................................................................................................... 56
6 ファームウェアのアップデート方法 ............................................................................. 57
6-1 BGX Commanderを使用したアップデート ............................................................................... 57
7 FAQ ....................................................................................................................... 59
7-1 仕様・提供サービス ................................................................................................................ 59
7-2 認証 ...................................................................................................................................... 61
参考文献 .................................................................................................................... 62
TSC-01017
ver. 1.2 2019年 2月 4/62 TecStar Company
1 はじめに
この資料は、Silicon Laboratories(以下、Silicon Labs)社製 Bluetooth®モジュール Bluetooth Xpress(以
下、BGX)の使用方法について簡易にまとめたものです。内容に誤りがないよう注意は払っておりますが、
もし Silicon Labs社が提供するドキュメント等と差異がございましたら、メーカー提供のものを優先してご参
照ください。
本資料は、初めて BGX をご使用になる方を対象としたクイックスタートガイド(初級編)です。クイックス
タートガイドの内容を理解した上で、更に詳しく知りたい方は、アドバンストガイド(上級編)をご参照くださ
い。
また、Silicon Labs社の ナレッジベース(FAQ)やコミュニティフォーラム(ユーザ同士で問題解決。
Silicon Labsのエンジニアも頻繁にコメントしています)には、本資料で取り上げていない様々な情報が記
載されております。
製品をご使用頂く過程で疑問や課題が生じることもあると思いますが、他のユーザが既に解決方法を
見つけている場合も多々ございます。非常に有益ですので、ぜひご活用下さい。
アクセス方法
https://www.silabs.com/community (Silicon Labs社製品全般)
https://www.silabs.com/community/wireless/bluetooth (Bluetoothに特化)
使用方法
キーワードを入力 (例:BGX13)
TSC-01017
ver. 1.2 2019年 2月 5/62 TecStar Company
2 Bluetooth Xpressの概要
Bluetooth Xpress(BGX)は、Silicon Labs社Wireless Xpressファミリの 1つで、Bluetooth 5に対応した
Bluetoothモジュールです。
Bluetooth Xpress には制御ソフトウェアがあらかじめ実装されており、手軽に Bluetooth を使用したい用
途に最適です。外部からコマンドを送ることで動作を制御することができ、コマンドは UART もしくは
Bluetooth経由で送ることができます。
また、Bluetooth に関する幾つかのパラメータや GPIO の設定は変更可能になっています。コマンドで設
定変更することもできますし、変更をアシストする GUI(Simplicity Studio)も用意しています。
2-1 製品ラインナップ
ラインナップは以下の通りです。無線テストが必要な国(中国など)での使用をご検討の場合には、
BGX13Sをご選択ください。無線信号をモジュール外に取り出せるようになっており、conductedでのテスト
が可能です。
型番 形状 サイズ 出力レベル Bluetooth 5 アンテナ
BGX13P PCBモジュール 12.9 x 15.0 x 2.2 mm + 8 dBm 1M, 2M PHY 内蔵
BGX13S SIP モジュール 6.5 x 6.5 x 1.4 mm + 8 dBm 1M, 2M PHY 内蔵
TSC-01017
ver. 1.2 2019年 2月 6/62 TecStar Company
2-2 Bluetooth Xpressの動作モード
Bluetooth Xpressモジュールは、以下の 3つの動作モードを持っています。
モード 概要
local COMMANDモード Bluetooth Xpress コマンドを使い、UART経由で制御します。
remote COMMAND インタフェースとは排他になっています。
STREAMモード UART と BLE インタフェースとを直接繋ぎ、データ転送を行います。
remote COMMANDモード Bluetooth Xpress コマンドを使い、BLE経由で制御します。
local COMMANDインタフェースとは排他になっています。
local COMMANDモードについては本資料 5-1-2章で、STREAMモードについては本資料 5-2-3章で、
remote COMMANDモードについては本資料 5-2-4章で紹介していますので、詳しくはそちらをご覧くださ
い。
TSC-01017
ver. 1.2 2019年 2月 7/62 TecStar Company
3 開発環境のご紹介
Bluetooth Xpress の開発環境について、ハードウェアとソフトウェアに分けてご紹介します。
3-1 ハードウェア
評価環境として、Wireless Xpress Starter Kitを用意しています。
3-1-1 Wireless Xpress BGX13P Starter Kit (SLEXP8027A)
このWireless Starter Kitには、BGX13Pモジュール と CP2102N(USB-UART変換)が搭載されてい
ます。
BGX13P の制御インタフェースは UART で、Expansion Header および USB(CP2102N 経由)を介し
て外部デバイスに接続することができます。PC とUSBで接続し、PC上のターミナルソフトで操作するの
が最も簡易な評価方法です。
TSC-01017
ver. 1.2 2019年 2月 8/62 TecStar Company
3-2 ソフトウェア
Bluetooth Xpressのコンフィグレーションには、Simplicity Studioの Xpress Configuratorが使用できま
す。評価用のスマホアプリ(BGX Commander)も提供しております。
3-2-1 Xpress Configurator
Xpress Configuratorは、Bluetooth Xpressの設定変更を直感的に行うことができるソフトウェアです。制
御インタフェースである UARTの設定、Bluetoothの通信インターバルなどの設定、GPIOの設定などを行
い、モジュールに書き込むことができます。
Bluetooth Xpressの設定項目には、(a)Xpress ConfiguratorでもUART/Bluetoothコマンドでも変更できる
もの、(b) Xpress Configuratorでしか変更できないもの、がありますので、変更したい項目によっては
Xpress Configuratorを使用せずに済む場合もあります。
TSC-01017
ver. 1.2 2019年 2月 9/62 TecStar Company
3-2-2 BGX Commander
BGX Commanderは、Bluetooth Xpress評価用のスマホアプリです。iOS用は App Storeから、Android
用は Google Playからダウンロード頂けます。
3-2-3 VCP driver
BGX Starter KitにはCP2102N(USB-UART変換)が搭載されており、PCに専用ドライバのインストール
が必要になります。
最新ドライバは、Silicon Labs社のWeb Siteからご入手ください。
https://www.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx
3-2-4 ターミナルソフト
UARTを使ったデータ送受を行うことができるソフトウェアです。WEB上に、フリーソフトウェア/シェア
ウェアが多数ありますので、そういったものを活用頂くのが手軽です。
TSC-01017
ver. 1.2 2019年 2月 10/62 TecStar Company
4 各種ドキュメントの入手方法
Bluetooth Xpressの使用方法に関する情報や、ドキュメントの入手方法について紹介します。
4-1 使用方法に関する情報
Bluetooth Xpressの使用方法や、制御に使うコマンド(API)については、専用WEBサイトに集約されて
います。
https://docs.silabs.com/bgx/
4-2 ドキュメントの入手方法
Bluetooth Xpressのデータシートや Starter Kitのユーザガイドなどは、Silicon Labs社WEBからご入手
頂けます。
https://www.silabs.com/support/resources
<データシート>
BGX13P Blue Gecko Bluetooth® Module Data Sheet (リンク)
BGX13S Blue Gecko Xpress Bluetooth® SiP Module Data Sheet (リンク)
<キットの使い方に関するドキュメント>
QSG161: Wireless Xpress BGX13P22GA Expansion Kit Quick-Start Guide (リンク)
UG369: Wireless Xpress BGX13P SLEXP8027A Kit User's Guide (リンク)
<設計方法に関するドキュメント>
AN1157: Developing Products Using Bluetooth® Xpress (リンク)
TSC-01017
ver. 1.2 2019年 2月 11/62 TecStar Company
5 使用方法
5-1から5-5の手順に従って作業することで、BGXの基本的な使い方を理解できるようになっています。
BGXを初めてご使用になる方は、まずは順番に一通りお試しください。
5-1 基本動作を確認する (BGX単体)
BGXを UART経由で PCに接続し、UART経由でターミナルソフトから制御してみます。
最近の PCはUARTインタフェースを搭載していませんので、USB-UART変換 ICを利用してUSB接続
します。BGX Starter Kitには USB-UART変換 IC(CP2102N)が搭載されています。CP2102Nを使用する
には仮想 COM ドライバ(VCP driver)のインストールが必要です。
5-1-1 セットアップ (BGX)
① BGX Starter Kitを USB経由で PCに接続します。
TSC-01017
ver. 1.2 2019年 2月 12/62 TecStar Company
② デバイスマネージャを使い、BGX Starter Kitに割り振られた COMポート番号を確認します。
COM として認識されていない場合には、VCP ドライバのインストールを行ってください。
③ ターミナルソフトを起動し、BGX Starter Kitに割り当てられた COMポートをオープンします。ボー
レートは 115200に設定します。下図は Tera Termを使用した場合の設定例です。
TSC-01017
ver. 1.2 2019年 2月 13/62 TecStar Company
④ BGX Starter Kitの左上にあるリセットボタン(RESET と印字)を押します。
⑤ ターミナルソフト上に[COMMAND_MODE]の文字が表示され、コマンド待ちの状態になります。
文字が壊れている場合には、おそらくボーレートが適当に設定されていません。
なお、手順④で RESETボタンを押しましたが、ターミナルソフト上でリターンキーを押すことでも代用
できます。その場合には、Readyと表示されます。COMMANDモードでコマンド待ちの状態です。
TSC-01017
ver. 1.2 2019年 2月 14/62 TecStar Company
5-1-2 UARTを使ってコマンド制御する (local COMMANDモード)
local COMMANDモードは、UART経由でコマンドを送り、BGXを制御するモードです。
用意されているコマンドの一覧は、WEB ドキュメントにて参照できます。
制御コマンドは色々と用意されていますが、まずは BLEアドバタイズ信号の送信停止・送信開始を制
御する adv コマンドを使用してみましょう。書式は、
adv 設定
です。adv と設定の間に半角スペースが入ります。設定は、high, low, off の 3種が用意されています。
設定 説明
high アドバタイズ信号を高頻度(high duty)で送信する。周期や期間は変更可変。
デフォルト設定: 20ms周期(設定値 32), 期間は 30秒
low アドバタイズ信号を低頻度(low duty)で送信する。周期や期間は変更可変。
デフォルト設定: 546.25ms周期(設定値 874), 期間は無制限
off アドバタイズ信号の送信を停止する
制御コントローラ側
(UART側)
今回はPC/ターミナルソフトが
その役割
コマンド制御系が
有効になっている
TSC-01017
ver. 1.2 2019年 2月 15/62 TecStar Company
BGXは、起動すると自動でアドバタイズ送信を開始するように設定されています。Bluetooth検出がで
きるスマホアプリを使うと、BGXが検出できます。下図はシリコンラボ社のWireless Geckoアプリを使用
した場合ですが、本資料 5-2で紹介するスマホアプリを使用しても同様のことが行えます。
TSC-01017
ver. 1.2 2019年 2月 16/62 TecStar Company
アドバタイズ信号の送信を停止してみましょう。ターミナルソフトで、
adv off とタイプして、リターンキーを押します。これでアドバタイズ信号の送信が停止します。
スマホアプリで情報更新すると、BGXが見えなくなったことが確認できます。
次に、アドバタイズ信号の送信を行ってみましょう。ターミナルソフトで、
adv high とタイプして、リターンキーを押します。これでアドバタイズ信号の送信を再開します。
スマホアプリで情報更新すると、BGXが再度見えるようになったことが確認できます。
TSC-01017
ver. 1.2 2019年 2月 17/62 TecStar Company
5-1-3 設定値を取得する (getコマンド)
BGXには、動作に関する設定値が書き込まれています。
設定値を読み出すことで現状の動作設定を把握したり、設定値を変更したりことで動作を変えること
ができます。用意されている設定には、Bluetooth通信に関するもの、GPIO制御に関するもの、UART
通信に関するもの、などがあります。
用意されている設定項目(variable)の一覧は、WEB ドキュメントにて参照できます。
設定項目(variable)を取得するには、get コマンドを使用します。書式は、
get 設定項目
です。get と設定項目(variable)の間に半角スペースが入ります。
では、get コマンドを使用して、設定項目(variable)を取得してみましょう。variableに al という全設定
値を読み出すためのものが用意されていますので、これを使用してみます。
TSC-01017
ver. 1.2 2019年 2月 18/62 TecStar Company
ターミナルソフトで、
get al とタイプして、リターンキーを押します。
全ての設定が読み出されます。
上図の先頭にある bl a はBLEアドレスで、資料作成時に使用したBGXのBLEアドレスはD0CF5…
であることが判ります。
TSC-01017
ver. 1.2 2019年 2月 19/62 TecStar Company
では、同様にデバイス名(Device Name)を読み出してみます。デバイス名には、sy d n という variable
が用意されています。
ターミナルソフトで、
get sy d n とタイプして、リターンキーを押します。
BGX-8D86 という値が返ってきました。資料作成時に使用した BGXの Device Nameは BGX-8D86
に設定されていることが判ります。
TSC-01017
ver. 1.2 2019年 2月 20/62 TecStar Company
5-1-4 設定値を変更する (setコマンド)
設定項目(variable)を変更するには、setコマンドを使用します。書式は、
set 設定項目 新設定値
です。set と設定項目(variable)の間、および設定項目と新設定値の間に半角スペースが入ります。
では、set コマンドを使用して、設定項目(variable)を変更してみましょう。BLEの connection interval
(通信周期)には、bl c i という variableが用意されています。
TSC-01017
ver. 1.2 2019年 2月 21/62 TecStar Company
bl c iのデフォルト値は 12 (15ms相当)です。get コマンドで念のため確認します。
set コマンドで設定値を 12から 24に変更してみましょう。
ターミナルソフトで、
set bl c i 24 とタイプして、リターンキーを押します。
Success という値が返ってきました。これで設定変更は成功です。
念のため、get コマンドで設定値を取得してみます。正しく変更できていることが確認できます。
TSC-01017
ver. 1.2 2019年 2月 22/62 TecStar Company
5-1-5 設定値の変更を ROMに書き込む (save コマンド)
setコマンドで設定値を変更しても、内部 RAMの値が変更されているだけで、実は ROMの設定情報
は変更されていません。ですからリセットしたり、電源を OFF/ON したりすると、変更前の値に戻ってしま
います。
5-1-4で bl c iを 24に変更しましたが、BGX Starter Kitのリセットボタンを押してみましょう。getコマン
ドで、bl c iがデフォルトの 12に戻ってしまったことが確認できます。
変更を恒久的なものにするためには、save コマンドを使用して、変更内容を ROMに書き込む必要が
あります。書式は、
save です。
TSC-01017
ver. 1.2 2019年 2月 23/62 TecStar Company
前準備として、set コマンドを使用して、bl c iを 24に変更します。念のため、get コマンドで変更されて
いること確認しておきます。
ターミナルソフトで、
save とタイプして、リターンキーを押します。
Success という値が返ってきました。これで ROMへの書き込みは成功です。
BGX Starter Kitのリセットボタンを押し、get コマンド bl c iの設定値を確認しましょう。デフォルトの 12
に戻らず、新設定値 24が保持されていることが確認できます。
TSC-01017
ver. 1.2 2019年 2月 24/62 TecStar Company
5-1-6 BGXをリスタートする (rebootコマンド)
BGX Starter Kitのリセットボタンを押せば、BGX をリスタートすることができますが、reboot コマンドを
使用しても同様のことが実現できます。書式は、
reboot です。
ターミナルソフトで、
reboot とタイプして、リターンキーを押します。改行が入っていないので画面表示が崩れていますが、リスタート
には成功しています。
TSC-01017
ver. 1.2 2019年 2月 25/62 TecStar Company
5-1-7 設定値を初期状態に戻す (facコマンド)
5-1-5では、BGXの ROMに書かれた初期設定は、save コマンドを使用することで変更することが可
能であることを紹介しました。変更した設定を初期状態に戻すためのコマンドも用意されています。
書式は、
fac BLEアドレス
です。fac と BLEアドレスの間に半角スペースが入ります。
TSC-01017
ver. 1.2 2019年 2月 26/62 TecStar Company
意図せず初期設定に戻してしまわないために、BLEアドレスを指定してコマンド実行するようになって
います。
5-1-3で少し触れましたが、BLEアドレスの取得は get bl aで行います。資料作成時に使用した BGX
の BLEアドレスは D0CF5E828D86であることが判ります。
ターミナルソフトで、
fac D0CF5E828D86 とタイプして、リターンキーを押します。
ファクトリーリセットが行われ、COMMAND_MODEに移行しました。
BGX Starter Kitのリセットボタンを押し、get コマンド bl c iの設定値を確認してみましょう。新設定値
24が書き込まれていましたが、デフォルトの 12に戻っていることが確認できます。
TSC-01017
ver. 1.2 2019年 2月 27/62 TecStar Company
5-2 基本動作を確認する (BGX ⇔ スマートフォン)
次は、スマートフォンと BLE接続をしてみます。
なお、本章では、BGXがデフォルトの状態であることを前提に解説していきます。本資料 5-1-7の手順
に従い、BGXをファクトリーリセットしてください。
5-2-1 セットアップ (スマートフォン)
① BGX Commander というスマホアプリをインストールします。iOSの場合は Apple App Storeから、
Android OSの場合には Google Playから入手できます。
TSC-01017
ver. 1.2 2019年 2月 28/62 TecStar Company
② BGX Commanderを起動すると、検出した BGXがリストアップされます。下図は 2台のBGXを検
出した場合です。1台の BGX Starter Kitを使用して評価を行う場合には、1台だけがリストアップされま
す。リストアップされない場合には、画面左上の Scanをタップしてください。また、BGX Starter Kitのリセ
ットボタンを押してみてください。
デバイス名
デフォルトでは、BGX-####(####は BTアド
レスの下 4桁)となっています。変更可能。
RSSI(信号強度)
受信した信号の強さを示すパラメータ。単位は dBm。値
が大きいほど信号が強い。一般的に、距離が離れている
と値が小さくなり、距離が近いと値が大きくなる。
上図の場合、上段の BGXの RSSIは-42dBm、下段の
BGX の RSSI は-50dBm で、上段の BGX からの信号
の方が強く、通信条件が良いと言える。
UUID
Bluetoothのサービスやキャラクタリスティッ
クを識別するためのユニーク ID。変更不可。
TSC-01017
ver. 1.2 2019年 2月 29/62 TecStar Company
5-2-2 接続する
① BGX Commanderから BGX Starter Kitに接続します。接続したい BGXをタップします。(下図左)
② Bluetoothのペアリングを要求されますので、ペアリングを行います。(下図右)
③ 接続すると、自動的に STREAM モードに移行します。BGX Commander のコンソールに、
STREAM_MODE と表示が出ます。
このあたりをタップします
TSC-01017
ver. 1.2 2019年 2月 30/62 TecStar Company
また、ターミナルソフトにも、STREAM_MODE という表示が出ます。
5-2-3 データを送受する (STREAMモード)
STREAMモードは、データの土管のような動作をします。UARTから受け取ったデータをそのまま
BLEで飛ばす、或いは BLEで受け取ったデータをそのまま UARTから出力します。コマンドによる制御
は行えません。
制御コントローラ側
(UART側)
今回はPC/ターミナルソフトが
その役割
スマホ側 (BLE側)
今回はスマホ/BGX Commanderがその役割
コマンド制御系が
無効になっている
直結
TSC-01017
ver. 1.2 2019年 2月 31/62 TecStar Company
① まずは、スマホ側からターミナルソフト側へデータを送ってみます。BGX Commanderの入力欄に
文字列をタイプし、Send ボタンをタップします。下図では「Hello new BLE world !!」という文字列を送っ
ています。
ターミナルソフト側にデータが届いていることを確認します。
TSC-01017
ver. 1.2 2019年 2月 32/62 TecStar Company
② 次は、ターミナルソフト側からスマホ側へデータを送ってみます。ターミナルソフト上で、「Welcome
<リターン>」とタイプしてみましょう。
ターミナルソフト上では入力した文字は表示されていませんが(ターミナルソフトの設定の問題)、
BGX Commander上では「Welcome」という文字列を受信できています。
③ ターミナルソフト上でタイプした文字を見えるようにするには、ローカルエコーを有効にしてくださ
い。
TSC-01017
ver. 1.2 2019年 2月 33/62 TecStar Company
④ もう一度、今度は「Welcome !!!!! <リターン>」と入力してみます。ターミナルソフト上でもタイプした
文字が見えるようになりました。
BGX Commander上でも、「Welcome !!!!!」という文字列を受信できていることが確認できます。
TSC-01017
ver. 1.2 2019年 2月 34/62 TecStar Company
5-2-4 スマートフォンからリモート制御する (remote COMMANDモード)
remote COMMANDモードは、スマホ側からBLE通信でコマンドを送り、BGXを制御するモードです。
① BGX Commanderで、STREAMモードから remote COMMANDモードに切り替えます。
COMMANDボタンをタップすると、コンソールに REMOTE_COMMAND_MODE と表示が出ます。
スマホ側 (BLE側)
今回はスマホ/BGX Commanderがその役割
コマンド制御系が
有効になっている
TSC-01017
ver. 1.2 2019年 2月 35/62 TecStar Company
ターミナルソフト上にも REMOTE_MODE と表示が出ます。
② スマホ側から、BGXへコマンドを送ってみます。コマンドは色々と用意されていますので、ここで
は 1例をご紹介します。
BGX Starter Kitにはボタンが実装されていますが、ボタン 0(BTN0)は BGXの GPIO2 と繋がってい
ます。remote COMMANDを使ってBGXのGPIO2を入力ピンに設定し、ボタン 0を押した(押してない)
状態の値を読み取ってみたいと思います。
まずピンの初期設定を行います。BGX Commander で、
gfu 2 stdio とタイプして Send します。これは GPIO2をユーザ制御ピンとして設定するためのコマンドです。
次に、
gdi 2 ipu とタイプして Send します。これは GPIO2を pullup付き入力ピンとして設定するためのコマンドです。
TSC-01017
ver. 1.2 2019年 2月 36/62 TecStar Company
これで設定は終わりました。まずは、ボタンを押していない状態で値を読んでみます。GPIO2の値を
読み取るためのコマンドは、
gge 2 です。レスポンスが‘1’ですので、GPIO2には Highが入力されていることが判ります。
次に、ボタン 0を押してみます。この状態で再度 gge 2を実行すると、レスポンスが‘0’となり、GPIO2
に Lowが入力されていることが判ります。
ボタン 0を押していない状態で、
コマンド「gg2」に対して、
レスポンスは 1
ボタン 0を押した状態で、
コマンド「gg2」に対して、
レスポンスは 0
TSC-01017
ver. 1.2 2019年 2月 37/62 TecStar Company
5-2-5 接続情報を消す (clrb)
いったんスマホと BGX をペアリングすると、ボンディング情報(鍵情報)がそれぞれに保持されます。
このボンディング情報は clrb コマンドを使用することで消去することができます。
書式は、
clrb です。
TSC-01017
ver. 1.2 2019年 2月 38/62 TecStar Company
スマホとBGXの接続を終了し、local COMMANDモードに移行しましょう。スマホアプリを終了するか、
リセットボタンを押してください。ターミナルソフトで、
clrb とタイプして、リターンキーを押します。
これで、BGX内のボンディング情報が全消去されました。では、もう一度、スマホアプリから BGXに
接続してみましょう。接続に成功しないのではないかと思います。
これは、BGXのボンディング情報が消失したため、スマホと BGXのボンディング情報が一致しなくな
ったためです。
TSC-01017
ver. 1.2 2019年 2月 39/62 TecStar Company
このような場合には、スマホ側のボンディング情報も消去する必要があります。iPhoneの場合には下
図の手順で登録を解除できます。
双方のボンディング情報を消去すれば、5-2-2の手順で再度ペアリングを行うことができます。
本資料5-1-7で紹介した facコマンドを使用してもボンディング情報は消失しますので、繋がらないなと
思ったら、ボンディング情報の削除を行ってみましょう。
TSC-01017
ver. 1.2 2019年 2月 40/62 TecStar Company
ボンディング情報の消去は、全消去だけではなく、特定の BLEアドレス(BDアドレス)に対して行うこ
ともできます。書式は、
clrb BLEアドレス
です。
ファームウェアバージョン 1.1.1229.0以降でサポートされた機能ですので、それ以前のファームウェア
バージョンをご使用の場合には、アップデートしてご利用ください。
TSC-01017
ver. 1.2 2019年 2月 41/62 TecStar Company
5-3 基本動作を確認する (BGX ⇔ BGX)
2つの BGXを使用して通信を行ってみます。
5-1章で BGXを PCから制御しましたが、同じものを 2セット用意します。2つの BGXのうち、一方がセ
ントラルに、他方がペリフェラルになります。説明の都合上、ペリフェラル側を BGX(ペ)、セントラル側を
BGX(セ)として説明します。
(弊社での評価は、1台の PCに 2つの BGXを接続して行っています。)
5-3-1 セットアップ
① 本資料 5-1-1の手順に従い、BGX Starter Kit(ペ)を USB経由で PCに接続し、ターミナルソフト
から COMポートを開きます。
② 本章では、BGXがデフォルトの状態であることを前提に解説していきます。本資料 5-1-7の手順
に従い、BGXをファクトリーリセットしてください。
③ BGX(セ)に対しても、同様の作業を行ってください。
BGXペ
BGXセ
TSC-01017
ver. 1.2 2019年 2月 42/62 TecStar Company
5-3-2 接続対象を検出する (scan コマンド)
2つの BGXを接続するには、セントラル側(BGX セ)からペリフェラル側(BGXペ)を探し、接続を試
みることになります。接続可能な BGXデバイスを探すには scan コマンドを使用します。書式は、
scan 設定
です。scanと設定の間に半角スペースが入ります。設定は、high, low, off, result の 4種が用意されてい
ます。
設定 説明
low スキャンを低頻度(low duty)で実施する。周期や期間は変更可変。
デフォルト設定: 1280ms周期(設定値 2048), 期間は 300秒
high スキャンを高頻度(high duty)で実施する。周期や期間は変更可変。
デフォルト設定: 60ms周期(設定値 96), 期間は 30秒
off スキャンを停止する
result スキャン結果を意図したタイミングで出力したい場合に使用します
TSC-01017
ver. 1.2 2019年 2月 43/62 TecStar Company
では、セントラル側(BGX セ)でスキャンしてみましょう。ターミナルソフトで、
scan high とタイプして、リターンキーを押します。1台のBGXが見つかりました。周囲にBluetoothデバイスが多数
ある環境であっても、BGXのみがリストアップされます。
BGXペ
BGXセ
TSC-01017
ver. 1.2 2019年 2月 44/62 TecStar Company
5-3-3 接続する (con コマンド)
ペリフェラル側(BGXペ)を見つけることに成功しましたので、次に接続を試みます。接続には con コ
マンドを使用します。書式は、
con インデックス
です。con とインデックスの間に半角スペースが入ります。ここでいうインデックスとは、scan コマンドで見
つけたデバイスの番号です。下図の場合では 1 です。
TSC-01017
ver. 1.2 2019年 2月 45/62 TecStar Company
ターミナルソフトで、
con 1 とタイプして、リターンキーを押します。
Successと表示が出て接続に成功し、セントラル側/ペリフェラル側の双方が自動的に STREAMモー
ドに移行したことが判ります。
<注意>
もし timeoutで接続に失敗する場合には、おそらくペリフェラル側(BGX ペ)のアドバタイズ送信が終
了しています。アドバタイズを送信する期間は、デフォルトで 30秒です。BGX(ペ)をリセットするか、或
いは本資料 5-1-2を参考にアドバタイズ送信を再開してください。
BGXペ
BGXセ
TSC-01017
ver. 1.2 2019年 2月 46/62 TecStar Company
接続には、インデックスではなく BLEアドレス(BDアドレス)を使用することもできます。書式は、
con BLEアドレス
です。一度、BGX(ペ)と BGX(セ)のリセットボタンを押して、接続を解除しましょう。
それから、ターミナルソフトで、
con D0CF5E828D86
とタイプし、リターンキーを押します。インデックスを使用した場合と同様に接続が成功(Success)し、
STREAMモードに移行したことが確認できます。
BGXペ
BGXセ
TSC-01017
ver. 1.2 2019年 2月 47/62 TecStar Company
5-4 モード遷移を制御する (BGX単体)
5-1章で local COMMANDモードを、5-2章で STREAMモードと remote COMMANDモードを紹介しま
したが、モード遷移の方法について見ていきましょう。3つのモードは下図のような関係にあります。
モード遷移の手段としては、str_selectピンを使用して制御する方法と、コマンドで制御する方法とが用意
されています。
本章では、BGX がデフォルトの状態であることを前提に解説していきます。本資料 5-1-7 の手順に従い、
BGXをファクトリーリセットしてください。
ターミナルソフトで、
fac D0CF5E828D86 とタイプして、リターンキーを押します。D0CF5…の部分は、ご使用になっているBGX Starter Kitの BLE
アドレスをご使用ください。
TSC-01017
ver. 1.2 2019年 2月 48/62 TecStar Company
5-4-1 str_selectピンの実装 (local COMMANDモード ⇔ STREAMモード)
GPIOに str_select機能を割り当てることで、local COMMANDモード/STREAMモード間の遷移を
GPIO制御することができます。
BGX Starter Kitにはボタンが実装されていますが、ボタン 0(BTN0)は BGXの GPIO2 と繋がってい
ます。このボタン 0に str_select機能を割り当ててみたいと思います。
まず str_selectピンのトリガ条件を設定します。セントラル側をリセットして local COMMANDモードに
戻り、ターミナルソフトで
set bu s c edge とタイプして、リターンキーを押します。これでエッジトリガに設定されます。
次に、
gfu 2 none とタイプして、リターンキーを押します。続いて、
gfu 2 str_select
TSC-01017
ver. 1.2 2019年 2月 49/62 TecStar Company
とタイプして、リターンキーを押します。
これは、GPIO2への割り当てを全て解除し、それから GPIO2へ str_selectを割り当てる、というコマン
ドです。GPIOへの機能割り当ては上書きできないため、このような処理になります。
TSC-01017
ver. 1.2 2019年 2月 50/62 TecStar Company
これで、ボタン 0に str_selectが割り当てられました。このままでは、リセットすると設定が消えてしまい
ますので、設定した情報を保存します。ターミナルソフトで
save とタイプして、リターンキーを押します。
では、str_selectを使うことでモード遷移できるか、実際に見てみましょう。BGX Starter Kitのリセットボ
タンを押してください。local COMMANDモードで起動します。
次に、ボタン 0を押してみましょう。STREAMモードに遷移したことが確認できます。
では再度、ボタン 0を押してみましょう。local COMMANDモードに遷移したことが確認できます。
このように、str_selectピンを使用すると、GPIO制御によりモード遷移をコントロールすることができま
す。
TSC-01017
ver. 1.2 2019年 2月 51/62 TecStar Company
5-4-2 str コマンド (local COMMANDモード ⇒ STREAMモード)
str コマンドを使用することで、local COMMANDモードから、STREAMモードへ、遷移することができ
ます。書式は、
str です。
BGX Starter Kitのリセットボタンを押してください。local COMMANDモードで起動します。
次に、
str とタイプして、リターンキーを押します。STREAMモードに遷移したことが確認できます。
TSC-01017
ver. 1.2 2019年 2月 52/62 TecStar Company
5-4-3 ブレークアウト・シーケンス (STREAMモード ⇒ local COMMANDモード)
いったんSTREAMモードに移行してしまうと、コマンドもデータとして取り扱われてしまい、BGXをコマ
ンド制御できなくなってしまいます。例えば、BGX側で get bl a (BLEアドレス取得コマンド)とタイプす
れば、通信相手に get bl a という文字列がそのまま送信されます。
STREAMモードから local COMMANDモードへ移行させる手段が 2つ用意されています。1つは
5-4-1章で紹介した str_selectピンの活用ですが、もう 1つはブレークアウト・シーケンスを使用する方法
です。特定の文字列を特定のタイミングで送信することで、BGXはそれを“文字列”ではなく“STREAM
コマンドからの離脱コマンド”だと判断します。デフォルトでは $$$ がブレークアウト・シーケンスに設定
されています。bu s s を設定変更することで、ブレークアウト・シーケンスは変更することができます。こ
のブレークアウト・シーケンスを、500 ms以上のアイドルの後、数 ms以内に送る必要があります。
なお、時間制約が厳しいため、ターミナルソフト上で手入力する方法ではブレークアウト・シーケンス
の評価は難しいかもしれません。
TSC-01017
ver. 1.2 2019年 2月 53/62 TecStar Company
5-5 モード遷移を制御する (BGX ⇔ BGX)
2つの BGXを使用して、str_selectピン使用時のモード遷移の方法について見ていきましょう。
5-5-1 セットアップ
① 本資料 5-1-1の手順に従い、BGX Starter Kit(ペ)を USB経由で PCに接続し、ターミナルソフト
から COMポートを開きます。
② 本章では、BGXがデフォルトの状態であることを前提に解説していきます。本資料 5-1-7の手順
に従い、BGXをファクトリーリセットしてください。
④ BGX(セ)に対しても、同様の作業を行ってください。
③ 本資料 5-4-1の手順に従い、BGX(セ)のボタン 0に str_selectピンを実装してください。
BGXセ
BGXペ
str_select
TSC-01017
ver. 1.2 2019年 2月 54/62 TecStar Company
5-5-2 モード遷移を行う
str_selectを実装していない BGX同士の接続については、本資料 5-3で確認したとおり、接続後どち
らも STREAMモードに移行します。ここでは、str_selectピン使用した際の挙動を見てみましょう。
まずは、以下の手順で 2つの BGXを接続します。
① BGX(ペ)で、アドバタイズ送信を開始する (adv high)
② BGX(セ)で、スキャンを開始する (scan)
③ BGX(セ)で、index 1 と接続する (con 1)
接続すると、str_selectを実装していない BGX(ペ)は自動的に STREAMモードに移行します。
BGX(セ)のボタン 0を押して STREAMモードに移行し、もう一度ボタン 0を押して local COMMAND
モードに戻ります。その間、BGX(ペ)は STREAMモードに留まったままです。str_selectピンは、自分の
モードを変更することができますが、通信相手のモードは変更しません。
BGXセ
BGXペ
str_select
TSC-01017
ver. 1.2 2019年 2月 55/62 TecStar Company
なお、BGX(ペ)および BGX(セ)の両方に str_selectピンを実装した場合には、接続後に STREAMモ
ードに移行せず、どちらも local COMMANDモードに留まります。
BGXセ
BGXペ
str_select
TSC-01017
ver. 1.2 2019年 2月 56/62 TecStar Company
5-5-3 切断する (dctコマンド)
BLE接続を終了するには dct コマンドを使用します。書式は、
dct です。セントラル/ペリフェラルのどちらからでも切断することができます。
本資料 5-5-2(ペリフェラル=STREAM)の状態で、セントラル側で dctコマンドを実効すると、ペリフェラ
ル側は切断後に自動的に local COMMANDモードに移行します。
BGXセ
BGXペ
str_select
TSC-01017
ver. 1.2 2019年 2月 57/62 TecStar Company
6 ファームウェアのアップデート方法
BGXに実装されたファームウェアをアップデートする手順をご紹介します。アップデートすることで、機能
追加やバグ修正が行われますので、最新の状態でご使用頂くことが望ましいです。
6-1 BGX Commanderを使用したアップデート
① BGX Commanderを使用して、ファームウェアをアップデートすることができます。BGX Commander
の最新バージョンをスマホ/タブレットにインストールしてください。過去にインストール済みの方は、最新
版がリリースされていないか確認ください。
② BGX Commanderを起動し、スマホ/タブレットと BGXを接続してください。
③ 新しいファームウェアがリリースされている場合には、右上のメニューアイコンに「!」が表示されて
います。メニューをタップすると、メニュー一覧が表示されますので、Update Firmwareをタップします。
ここをタップします タップします
TSC-01017
ver. 1.2 2019年 2月 58/62 TecStar Company
④ Available Firmwareに、現在インストールされているバージョンと、インストール可能なファームウェ
アバージョンの一覧が表示されます。インストールしたいものを選択し、Install Firmwareをタップすると、
ファームウェアのアップデートが始まります。
⑤ ファームウェアが更新されたことを確認するには、④の手順で現在のバージョンを確認するか、或い
は ver コマンドを使用して確認することができます。
バージョンを指定する
インストールの開始
現在のバージョン
TSC-01017
ver. 1.2 2019年 2月 59/62 TecStar Company
7 FAQ
Bluetooth Xpressについて、よく頂く質問をまとめました。
なお、BGXの使用方法に関する FAQは、アドバンストガイドをご参照ください。
7-1 仕様・提供サービス
対応する Bluetoothのバージョンは何ですか?
➢ Bluetooth 5.0 です。
Bluetooth 5.0の新機能 2M PHYに対応していますか?
➢ 対応しています。なお、2M PHYは Bluetooth 5.0の必須機能ではなくオプション機能です。
Bluetooth 5.0 の新機能 LE Long Range (Coded PHY)に対応していますか? [updated]
➢ 対応しています(ただしファームウェアバージョン 1.1.1229.0以降)。なお、LE Long Rangeは
Bluetooth 5.0の必須機能ではなくオプション機能です。
プロファイルやサービスをカスタマイズできますか?
➢ プロファイルやサービスの変更は行えません。対応が必要な場合には、BLEモジュール
BGM1xxファミリをご使用ください。
コマンドは追加できますか?
➢ コマンドの追加は行えません。また追加依頼も承っておりません。
BGX内の制御プログラムのソースコードを提供してください
➢ 提供しておりません。
コマンドや Variableについての情報はどこで入手できますか?
➢ WEB ドキュメントで情報を提供しております。
Command: https://docs.silabs.com/bgx/latest/commands
Variable: https://docs.silabs.com/bgx/latest/variables
スマホアプリの開発について情報提供してくれますか?
➢ WEB ドキュメントで情報を提供しております。
https://docs.silabs.com/bgx/latest/bgx-mobile-library-intro
BGX Commanderのソースコードはどこから入手できますか?
➢ GitHubで BGX Commanderのプロジェクトを提供しております。
https://github.com/SiliconLabs/wireless-xpress
TSC-01017
ver. 1.2 2019年 2月 60/62 TecStar Company
BGXはセントラルとして使用できますか?
➢ 想定するユースケースは、
スマホ/タブレットなど(セントラル) ⇔ BGX(ペリフェラル)
BGX(セントラル) ⇔ BGX(ペリフェラル)
になります。BGX同士で接続する場合を除き、BGXはペリフェラルとしてご使用頂けます。
BGX13P Starter Kitの回路/レイアウト図は提供していますか?
➢ Simplicity Studioをインストールの上、ドキュメント機能からご入手ください。
ファームウェアの更新履歴はどこで確認ができますか? [NEW]
➢ WEB ドキュメント(Release Note)にて情報提供されています。
実効スループットはどの程度ですか? [NEW]
➢ 使用するPHYの種別(1Mbps, 2Mbps, 500kbps, 125kbps)、コネクション・インターバル、Ackあ
り/なしなどにより、スループットに差がでます。WEB ドキュメント(Throughput)にてベンチマ
ーク結果をご覧いただけます。
TSC-01017
ver. 1.2 2019年 2月 61/62 TecStar Company
7-2 認証
電波法認証は取得していますか?
➢ BGX13は、日本、米国(FCC)、カナダ(ISED)、欧州(CE)などの電波法認証を取得済み、或
いは取得予定です。最新状況はデータシートおよびテストレポートをご参照ください。
テストレポートはどこから入手できますか?
➢ WEBからダウンロード頂けます。(リンク)
Bluetooth認証は取得していますか?
➢ Bluetooth認証を取得していますので、ユーザ側でのテストは不要です。ただし、Bluetoothは
最終製品(End Product)での登録が必要な規格ですので、ユーザ側でも Bluetoothのリスティ
ング登録が必要になります。
QDID を教えてください
➢ BGXのQDIDは以下リンクからご確認頂けます。QDIDは Bluetoothのリスティング登録の際
に必要な情報です。 (AN1157から抜粋)
Link Layer: https://launchstudio.bluetooth.com/ListingDetails/11850
Host Layer: https://launchstudio.bluetooth.com/ListingDetails/11849
RF-PHY(BGX13P): https://launchstudio.bluetooth.com/ListingDetails/25012
RF-PHY(BGX13S): https://launchstudio.bluetooth.com/ListingDetails/70538
TSC-01017
ver. 1.2 2019年 2月 62/62 TecStar Company
改版履歴
Version 改定日 改定内容
1.0 2018年 12月 ・新規作成。マクニカオンラインで公開
1.1 2018年 12月 ・FAQ追加
1.2 2019年 2月 ・ファームウェアのアップデート手順を追加。
・FW(1.1.1229.0)に準じ説明更新(clrb, FAQ)
参考文献
Silicon Labs社 各種ドキュメント
Silicon Labs社 ナレッジベース、コミュニティフォーラム
本社
〒222-8561 横浜市港北区新横浜 1-6-3 TEL 045-470-9841 FAX 045-470-9844
免責、及び、ご利用上の注意 弊社より資料を入手されましたお客様におかれましては、下記の使用上の注意を一読いただいた上でご使用ください。
1. 本資料は非売品です。許可無く転売することや無断複製することを禁じます。
2. 本資料は予告なく変更することがあります。
3. 本資料の作成には万全を期していますが、万一ご不審な点や誤り、記載漏れなどお
気づきの点がありましたら、弊社までご一報いただければ幸いです。
4. 本資料で取り扱っている回路、技術、プログラムに関して運用した結果の影響につい
ては、責任を負いかねますのであらかじめご了承ください。
5. 本資料は製品を利用する際の補助的なものとしてかかれたものです。製品をご使用
になる場合は、メーカーリリースの資料もあわせてご利用ください。
Top Related