BLEモバイル アプリ向けの強力な開発およびデバッグ ツールを紹介します。
最近では、Bluetoothデバイスは、PCやスマートフォン/タブレットなどのより強力なプラットフォームにリンクされた付属製品として、ほぼあらゆる用途向けに開発されています。
アプリケーションの種類が非常に多いため、Bluetoothインターフェースの開発とデバッグは困難なプロセスになる可能性があります。たとえば、設計者がデータを視覚化して受信側で検証できない場合、GATTサーバー用にデバイスを構成するのは困難になる可能性があります。Silicon LabsのEFR Connect BLEアプリを使用すると、あらゆるBLEチップでBLEテストを実行できます。この記事では、受信データのテスト/読み取り、周波数と更新レートの監視、BLEモジュールの平均消費電力の測定に関連するデバッグ ツールと、無線デバイス ファームウェア更新 (OTA DFU) を使用してファームウェア更新をテストする方法について簡単に説明します。
より詳細な記事へのリンクは最後にあります。
ユースケース例
この例を、非常に標準的な設計と仕様で設定してみましょう。スマートフォン アプリに接続されているときは1秒あたり1回読み取り、アドバタイズ中は1秒あたり2回読み取ります (平均消費電流25 µA未満)。ここで、ファームウェア開発者は、関連アプリが並行して開発されているため、まだそのアプリにアクセスできないとします。ここでの目標は、一連のツールを使用してファームウェアをテストおよびデバッグし、仕様が満たされていることを確認することです。
最初の要件は、GATTサーバー上の温度データを読み取り、一貫性と正確性があることを確認することです。EFR Connect BLEモバイル アプリには、デモ側と開発者側の2つの側面があります。デモ ビューではすぐに使用できる設計と事前に構築されたサンプル アプリケーションを使用できますが、開発者ビューではファームウェア エンジニアが近くにある検出可能なすべてのBLEデバイスをすばやく検索し、それらの接続をテストできます。開発者ビューでのアプリのデモについては、 図1 を参照してください。ユーザーがデバイスを識別して接続できるようになると、GATT情報が表示され、温度の読み取り値を確認できます。
図1: GATTサービスを使用してBLEデバイスを検出およびテストするためのビューとプロセスの開発
Silicon Labsのワイヤレス システムオンチップ (SoC) を使用して設計する場合、開発者は通常、Packet Trace Interface (PTI) と呼ばれる周辺機器にアクセスできます。PTIはすべての生データを出力し、ネットワーク アナライザー プログラムを実行しているPCに接続されたSilicon LabsのPro Kitのボード コントローラーで使用して、さらに分析を行うことができます。これにより、温度測定値とそのタイムスタンプの表示を含む、モジュールとの間のすべてのBLEアクティビティを完全に視覚化できます。これらのタイムスタンプは、すべてのデータ トランザクションとその発生頻度を確認するために使用できます。この例には、2つの無線パケットが含まれています。1つはSoC (GATTサーバー) から携帯電話にデータを送信するためのもので、もう1つは携帯電話からSoCに送信され、データが受信されたことを確認するためのものです。図2 は、ネットワーク アナライザーの読み取り値と、実際に約1秒間隔で発生するトランザクションの間隔を示しています。必要に応じて、トラブルシューティングに役立つように、表の右側でデータの完全なデコードを確認できます。
図2: BLEパケットを分析するためのSimplicity Studioのネットワーク アナライザー
特定のエネルギー フットプリントを満たすことはアプリケーションにとって非常に重要であり、ワイヤレス伝送では構成に基づいて非常に広範囲の電力を消費する可能性があります。これらの値を測定および検証することは必ずしも簡単ではありません。この例では、1秒あたり2回 (2 Hz) でアドバタイズするときに25 µA未満に抑えることが要件となります。ネットワーク アナライザーで記録されたタイムスタンプで伝送速度を確認できますが、Silicon Labs Pro Kitのもう1つの便利な機能は、高度なエネルギー監視です。このプログラムを使用すると、対象デバイスの電流を直接測定することができ、その測定結果をSimplicity Studioに中継し、Energy Profilerを使用して視覚化することができます。図3 は、この例の初期の読み取り値を示しています。
図3: 広告の初期消費電流プロット
プロットには、広告に対応するベースライン (スリープ) 電流とピーク (無線) 電流の両方が表示されます。また、この例の広告レートは、およそ100ミリ秒ごと、つまり10 Hzであることが分かります。この速度では、電流は平均約125 µAとなり、目標の25 µAを大幅に上回ります。ファームウェアの変更によりアドバタイジング間隔が1秒あたり2回に短縮され、Tx電力も6 dBmから0 dBmに低下すると、電流が25 µA未満に低下することが確認できます ( 図4)。ファームウェアのレバーを引いて設定を構成し、エネルギー フットプリントに合わせるこの方法は、直接検証のためにプロットを視覚化することと組み合わせると、迅速かつ簡単なアプローチになります。
図4: 広告の最終的な最適化された電流消費プロット
最後に、最後の要件は、必要に応じてリモート ファームウェア更新を実行することです。Silicon Labs GSDKに基づいて設計する場合、OTAファームウェア アップデートはデフォルトで含まれる必要があり、EFR Connect BLEアプリを介してテストできます。リモート デバイスとそのOTAサービスが検出されると、アプリは右上の「OTA DFU」オプションを介してファームウェアの更新を許可します ( 図5 を参照)。
図5: EFR Connect BLEアプリを使用したOTA DFUテスト
結論
Silicon LabsのEFR Connect BLEモバイル アプリとSimplicity Studioソフトウェアは、アプリケーションのテストとトラブルシューティングのための強力な開発およびデバッグ ツールを提供し、システム要件の定量的および定性的な検証を可能にします。