はじめに
今回は、オンセミ社のRSL10を用いてEddystone Beaconでデータ送信おこないます。
ここでは初めてRSL10を開発する方、これから開発する方にRSL10を用いてEddystone Beaconでデータ送信方法を案内します。
Eddystoneとは
Eddystoneとは、2015年7月14日にGoogleが発表したBLEの規格で、近接したBeaconの情報をBLE通信でアドバタイズするデータフォーマットを規定した仕様です。
また、Eddystoneには4つのフレームタイプがあります。
Eddystone-UID … ペイロードとして16byteのUnique IDを送信
Eddystone-URL … ペイロードとしてBeacon自体がURLを送信
Eddystone-TLM … Beaconのバッテリー電圧や温度などのメンテナンス情報を送信
Eddystone-EID … 128Bitにて暗号化されたEID送信
用意するものと接続方法、開発ツール、開発環境の準備
用意するもの
・スマートフォン :RSL10で送信されたEddystone Beaconのデータを確認するために必要となります。
・評価ボード
ハードウェア接続方法
RSL10-SIP-001GEVBを以下のように接続してください。
開発ツール
・onsemi IDE:Eclipse®ベースの統合開発環境です。
開発環境の準備
開発環境の準備については、第一弾の記事を参照してください。
onsemi IDEで設計スタート
Eddystone Beaconでデータ送信のサンプルコードのインポート
1. オンセミ社の IDE の起動をおこないます。ON Semiconductor IDE を開くには、Windows の [スタート] メニューから [ON Semiconductor] > [ON] を選択します。
2.「Example」タブをクリックすると、RSL10 CMSIS-Packに含まれるすべてのサンプルプロジェクトが一覧で表示されます。
3. Eddystone Beacon Firmware(Sleep,FOTA)(RSL10-COIN-GEVB)というサンプルプロジェクトを選択し、コピーボタンをクリックして、ワークスペースにインポートします。(図1参照)
4. Project Explorer上に C/C++が開き、新しくコピーされたプロジェクト(ble_broadcaster_eddystone)が表示されます。
5. Project Explorer上のble_broadcaster_eddystoneフォルダーの中のmain.cをクリックする事でC言語でのコードが確認できます。(図2参照)
Eddystone Beaconでデータ送信のサンプルコードビルド方法
1. ビルド前の準備としてincludeフォルダー内のapp.config.hファイルを右クリックし、Open Withにカーソルを合わせます。そしてCMSIS Configuration Wizardを選択し左クリックを押します。(図3参照)
2. そしてEddystone Beacon ConfigurationとHardware Configuration中身を以下の様に変更して、Ctrl+Cを押します。(図4参照)
・Eddystone Beacon Configuration
⇒ Eddystone URLにチェックを入れる。
・Hardware Configuration
⇒Board SelectionでRSL10 Evaluation Boardを選択。
⇒Temperature Sensor ConfigurationのOperation modeではNot presentを選択。
3.同様にdefaultsファイルの内のapp_config_rsl10_evb.hでも同様に、ファイルを右クリックし、Open Withにカーソルを合わせます。そしてCMSIS Configuration Wizardを選択し左クリックを押します。
4. そしてEddystone Beacon ConfigurationとHardware Configuration中身を同様に、以下の様に変更してCtrl+Cを押します。(図5参照)
・Eddystone Beacon Configuration
⇒Eddystone URLにチェックを入れる。
・Hardware Configuration
⇒Board SelectionでRSL10 Evaluation Boardを選択。
⇒Temperature Sensor ConfigurationのOperation modeではNot presentを選択。
5. ble_broadcaster_eddystone用のフォルダを右クリックし、Build Projectをクリックします。または、プロジェクトを選択し、[Build Project]をクリックします。
6. ビルドが実行されると、図6に示すようにビルドの出力がオンセミIDE C/C++上で表示されます。
7. プロジェクトエクスプローラー上のDebugフォルダーに出力される主な結果は以下の通りです。(図7参照)
Eddystone Beaconのデータ送信で使用するファイルはble_broadcaster_eddystone.elfになります。
図7 ビルドによる出力ファイル
Eddystone Beaconでデータ送信のサンプルコードのデバッグ方法
ble_broadcaster_eddystone.elfファイルを用いてデバッグをおこないます。
1. Project Explorer内でble_broadcaster_eddystone.elfファイルを右クリックし、Debug As > Debug Configurationsを選択します。
2. Debug Configurationsダイアログが表示されたら、GDB SEGGER J-Link Debuggingを右クリックしNew Configurationを選択します。GDB SEGGERの見出しの下にble_broadcaster_eddystone.elfの新しいコンフィギュレーションが表示されます。右側のパネルに新しいコンフィギュレーションの詳細が表示されます。
3. Debuggerタブに移動し、「デバイス名」欄に「RSL10」と入力します。ターゲット・インターフェースにSWDが選択されていることを確認してください。(図8参照)
4. コンフィギュレーションの更新が完了したら、評価・開発ボードをマイクロUSBケーブルでPCに接続し、デバッグをクリックします。
J-Linkは自動的にble_broadcaster_eddystoneというサンプルコードをダウンロードし、RSL10 のフラッシュメモリーに保存します。
5. デバックをクリックした後に下記、図9のResume(F8)をクリックします。
BLE Scannerを用いたEddystone Beaconでデータ送信の確認方法
1.スマートフォンにてBLE Scannerというアプリをダウンロードします。こちらはRSL10にて送信されたEddystone Beaconのデータを確認するために、今回使用しました。
2. アプリを開いて左側のScanner箇所を選択します。
3.以下よりBLE Scannerを用いて、Eddystone Beaconでデータ送信されている事を確認できます。(図12参照)
さいごに
今回はRSL10を用いてEddystone Beaconでデータ送信をおこないました。
・第1弾「LEDを点灯」
・第2弾 前編「RSLでセンシング エラーが発生するまで」
・第2弾 後編「RSLでセンシング エラーの原因と解決方法」
・第3弾 「RSL10でBLE通信を用いたデモ環境の構築」
お問い合わせ
今回紹介した内容及び製品にご興味がある方は、ぜひお問い合わせください。
オンセミ メーカー情報Topへ
オンセミ メーカー情報Topに戻りたい方は以下をクリックしてください。