ble mesh sample application ユーザーマニュアル...ble mesh sample application 図 16 android...
Post on 25-Jul-2020
1 Views
Preview:
TRANSCRIPT
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
1
TAIYO YUDEN CO., LTD
BLE mesh sample application
BLE mesh sample application
ユーザーマニュアル
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
2
TAIYO YUDEN CO., LTD
BLE mesh sample application
目次
1. Introduction ......................................................................................... 3
2. Requirement ........................................................................................ 4
2.1. 準備物一覧 ...................................................................................... 4
2.2. nrfjprog のインストール ......................................................................... 4
2.3. nRF Mesh mobile application のインストール ............................................. 4
2.4. sample application の書込み ................................................................ 5
3. ソースコード ............................................................................................. 7
3.1. Build 方法 ....................................................................................... 7
3.2. ソースコード変更点 ............................................................................... 9
3.2.1. 共通ファイル ................................................................................. 9
3.2.2. Client ..................................................................................... 10
3.2.3. Server .................................................................................... 10
4. BLE mesh Network の設定(Android) ........................................................ 12
5. BLE mesh Network の設定(iOS) .............................................................. 33
6. Evaluation Board 操作 .......................................................................... 47
変更履歴
Version 日付 Description
1.00 2020/06/18 初版
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
3
TAIYO YUDEN CO., LTD
BLE mesh sample application
1. Introduction
本ドキュメントは EBSHSNZWZ の Evaluation Board を使用した BLE mesh のサンプルアプリ
ケーションの使用方法について記載する。本 sample application は client 側の Evaluation
Board からの GPIO 操作によって server 側の Evaluation Board の特定 GPIO PIN の
Status を一括操作する application となっている。
以下にサンプルアプリケーションの概要図を示す。
図 1 サンプルアプリケーション概要図
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
4
TAIYO YUDEN CO., LTD
BLE mesh sample application
2. Requirement
2.1. 準備物一覧
・EBSHSNZWZ Evaluation Board 3 台
・J-Link Lite (J-Link Lite は EBSHSNZWZ の Evaluation Kit に同封)
・PC (Windows 10)
・nrfjprog
・nRF Mesh mobile application (Android/iOS)
・ble_mesh_client_nrf52832_sample_application.hex
・ble_mesh_server_nrf52832_sample_application.hex
・s132_nrf52_7.0.1_softdevice.hex
[For debug]
・nRF5 SDK(ver16.0.0)
・nRF5 SDK for Mesh(ver4.0.0)
・変更ソースファイル一式
2.2. nrfjprog のインストール
以下の URL より「nrfjprog」をダウンロードし、PC にインストールを行う。
https://www.nordicsemi.com/Software-and-tools/Development-Tools/nRF-
Command-Line-Tools/Download
2.3. nRF Mesh mobile application のインストール
以下の URL より「nRF Mesh」の mobile application をインストールする。
https://www.nordicsemi.com/Software-and-Tools/Development-Tools/nRF-
Mesh/GetStarted
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
5
TAIYO YUDEN CO., LTD
BLE mesh sample application
2.4. sample application の書込み
Evaluation Board と J-Link Lite を接続し、「windows キー」 → 「windows セキュリティーツー
ル」 フォルダの中のコマンドプロンプトを実行する。「cd」コマンドにて sample application が格納されて
いるフォルダに移動する。以下のコマンドを実行して各 hex ファイル (softdevice, sample
application)を書き込む。
■client sample application
・softdevice の書込み
「nrfjprog -f nrf52 --program s132_nrf52_7.0.1_softdevice.hex --chiperase --verify」
・sample application の書込み
「nrfjprog -f nrf52 --program ble_mesh_client_nrf52832_sample_application.hex -
r」
※client 側の application は用意している Evaluation Board の 1 台にのみ書込むこと。
※Evaluation Board と J-Link Lite の詳しい接続方法は以下の URL 上の「Device Firmware
UpdateSample application manual」のマニュアルをご参照ください。
https://www-yuden.co.jp/jp/product/category/module/lineup/eyshsnzwz/
図 2 sample application(client)書込み実行例
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
6
TAIYO YUDEN CO., LTD
BLE mesh sample application
■server sample application
・softdevice の書込み
「nrfjprog -f nrf52 --program s132_nrf52_7.0.1_softdevice.hex --chiperase --verify」
・sample application の書込み
「nrfjprog -f nrf52 --program ble_mesh_server_nrf52832_sample_application.hex -
r」
図 3 sample application(server)書込み実行例
※server 側の application は複数の Evaluation Board に書込み可能(例:3 台持っている場
合、2 台に書込み可能)
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
7
TAIYO YUDEN CO., LTD
BLE mesh sample application
3. ソースコード
本 sample application は、nRF5 SDK(ver16.0.0)、nRF5 SDK for Mesh(ver4.0.0)の
「light_switch」を使用して作成している。本章では、SDK の変更ソースコードの説明を記載す
る。
各 SDK のダウンロードは、以下より行うこと。
・nRF5 SDK
https://www.nordicsemi.com/Software-and-tools/Software/nRF5-
SDK/Download
・nRF5 SDK for Mesh
https://www.nordicsemi.com/Software-and-tools/Software/nRF5-SDK-for-
Mesh/Download
3.1. Build 方法
本ドキュメントでは、SES(Segger Embedded Studio)を使用した Build 方法について記載する。
SES(Segger Embedded Studio)のインストトール方法、セットアップ手順などは Segger
Embedded Studio の NRF のクイックスタートガイド『SES NRF52 Quickstart Guide 1.01
JP.pdf』を参照すること。)
ダウンロードは、以下のサイトより行う。
https://www.yuden.co.jp/wireless_module/login
① ダウンロードした nRF5 SDK、nRF5 SDK for Mesh の圧縮ファイルを任意のフォルダに解凍する。
② nRF5 SDK for Mesh の SDK_ROOT/example/light_switch/client/
light_switch_client_nrf52832_xxAA_s132_7_0_1.emProject,
SDK_ROOT/example/light_switch/client/
light_switch_server_nrf52832_xxAA_s132_7_0_1.emProject を開き、SES を立ち上
げる。
③ 「Tools」タブ→「Options」を開く
④ 「Building」タブを開く
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
8
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑤ 「Global Macros」の内容を”SDK_ROOT=< nRF5 SDK を解凍し作成したフォルダパス>に指
定し、ok をクリックして設定を保存する
図 4 Set up Global Macros
⑥ 「Build」タブ→「Build light_switch_client(server)_nrf52832_xxAA_s132_7_0_1」を
クリックして、build が開始される。
※本作業は client, server の両方の emProject ファイルで行うこと。
※Cmake で build を行いたい場合は、以下の URL を参考にすること。
https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.
meshsdk.v4.0.0%2Fmd_doc_getting_started_how_to_build.html
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
9
TAIYO YUDEN CO., LTD
BLE mesh sample application
3.2. ソースコード変更点
ソースコードの変更点について記載する。
3.2.1. 共通ファイル
■pca10040.h (../<nRF5 SDK_root>/components/boards)
・GPIO 入力配置を変更
■simple_hal.c (../<nRF5 SDK for Mesh_root>/examples/common/src)
・nrf_gpiote.h を追加
・GPIO 入力を有効化するため処理を変更
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
10
TAIYO YUDEN CO., LTD
BLE mesh sample application
3.2.2. Client
■ sdk_config.h(../<nRF5 SDK for
Mesh_root>/examples/light_switch/client/include)
・EBSHSNZWZ の Evaluation Board を使用するため、クロック設定を変更
3.2.3. Server
■ sdk_config.h(../<nRF5 SDK for
Mesh_root>/examples/light_switch/client/include)
・EBSHSNZWZ の Evaluation Board を使用するため、クロック設定を変更
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
11
TAIYO YUDEN CO., LTD
BLE mesh sample application
■main.c(../<nRF5 SDK for Mesh_root>/examples/light_switch/server/src)
・GPIO の状態を変更させる Pin 配置設定の変更
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
12
TAIYO YUDEN CO., LTD
BLE mesh sample application
4. BLE mesh Network の設定(Android)
Android 向けの「nRF Mesh」を使用した BLE mesh Network の設定(provisioning)方法を
記載する。
① 2 章で書き込んだ Evaluation Board に電源が入っていることを確認し、Android 向けの「nRF
Mesh」を起動する。起動後画面右下の「ADD NODE」を押下する。
図 5 Android nRF mesh 1
② 押下後、以下のような画面に移動する。まず初めに、Client 側の設定を行う。移動後、「nRF5x
Mesh Switch」を押下する。
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
13
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 6 Android nRF mesh 2
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
14
TAIYO YUDEN CO., LTD
BLE mesh sample application
③ 押下後、以下のような画面に移動する。移動後、画面右下の「IDENTIFY」を押下する。
図 7 Android nRF mesh 3
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
15
TAIYO YUDEN CO., LTD
BLE mesh sample application
④ 押下後、以下のような画面に移動する。この時、デバイス側の名前を変更したい場合は、「Name」
を押下後、任意の名前に変更することができる。その後、画面右下の「PROVISION」を押下する。
図 8 Android nRF mesh 4
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
16
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑤ 押下後、OOB Type の選択画面に移動するため、ここでは、「No OOB」を選択して OK を押下す
る。
図 9 Android nRF mesh 5
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
17
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑥ 押下後、provisioning が実行されるため、処理が完了するまで待機する。処理が完了すると以下
のような画面が表示される。表示された場合「OK」を押下する。
図 10 Android nRF mesh 6
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
18
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑦ 次に server 側の設定を行う。①と同様に画面右下の「ADD NODE」を押下する。その後
「nRF5x Mesh Light」を押下する。
図 11 Android nRF mesh 7
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
19
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑧ 押下後、以下のような画面に移動する。移動後、画面右下の「IDENTIFY」を押下する。
図 12 Android nRF mesh 8
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
20
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑨ 押下後、以下のような画面に移動する。この時、デバイス側の名前を変更したい場合は、「Name」
を押下後、任意の名前に変更することができる。その後、画面右下の「PROVISION」を押下する。
図 13 Android nRF mesh 9
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
21
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑩ 押下後、OOB Type の選択画面に移動するため、client 側の時と同様に、「No OOB」を選択し
て OK を押下する。
図 14 Android nRF mesh 10
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
22
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑪ 押下後、provisioning が実行されるため、処理が完了するまで待機する。処理が完了すると以下
のような画面が表示されるので、表示された場合「OK」を押下する。
Server 側の Evaluation Board が複数台ある場合、⑦~⑪の手順を行いすべての
Evaluation Board で provisioning を完了させる。
図 15 Android nRF mesh 11
⑫ すべての provisioning が完了した場合、Network タブ上に先ほど設定したデバイス名が表示され
る。次に各 Node に対する設定を行うため「nRF5x Mesh Switch」を押下する。
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
23
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 16 Android nRF mesh 12
⑬ 押下後、以下のような画面に移動する。移動後、「Element:0x0003」を押下し、「Generic On
Off Client」を押下する。
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
24
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 17 Android nRF mesh 13
⑭ 押下後、以下のような画面に移動する。移動後、「BIND KEY」を押下する。
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
25
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 18 Android nRF mesh 14
⑮ 押下後、以下のような画面に移動する。移動後、「Application Key 1」を選択する。
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
26
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 19 Android nRF mesh 15
⑯ 押下後、以下のように Application Key 1 が登録される。その後、「SET PUBLICATION」を押
下する。
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
27
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 20 Android nRF mesh 16
⑰ 押下後、以下のような画面に移動する。移動後、「Publish Address」を押下する。
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
28
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 21 Android nRF mesh 17
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
29
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑱ 押下後、以下のような画面に移動する。移動後、「All Nodes 0xFFFF」に設定して OK を押下す
る。
図 22 Android nRF mesh 18
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
30
TAIYO YUDEN CO., LTD
BLE mesh sample application
押下後、以下のような画面に移動する。移動後設定が反映されていることを確認し、右下の「APPLY」
を押下する。
図 23 Android nRF mesh 19
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
31
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑲ 次に⑫の画面に戻り、「nRF5x Mesh Light」を押下すると次のような画面に移動する。移動後、
「Element:0x0005」を押下し「Generic On Off Server」を押下する。
図 24 Android nRF mesh 20
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
32
TAIYO YUDEN CO., LTD
BLE mesh sample application
㉑ 押下後、以下のような画面に移動する。移動後、client 側の時と同様に「BIND KEY」を押下し
て、「Application Key 1」を選択して Application Key を登録する。
Server 側の Evaluation Board が複数台ある場合、⑳~㉑の手順を行いすべての Node の設定を
完了させる。
図 25 Android nRF mesh 21
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
33
TAIYO YUDEN CO., LTD
BLE mesh sample application
5. BLE mesh Network の設定(iOS)
iOS 向けの「nRF Mesh」を使用した BLE mesh Network の設定(provisioning)方法を記載す
る。
① 2 章で書き込んだ Evaluation Board に電源が入っていることを確認し、iOS 向けの「nRF
Mesh」を起動する。起動後 Network タブを開いて、右上の「+」を押下する。
図 26 iOS nRF mesh 1
② 押下後、デバイス名の一覧が表示されるため、「nRF5x Mesh Switch」を押下する。
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
34
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 27 iOS nRF mesh 2
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
35
TAIYO YUDEN CO., LTD
BLE mesh sample application
③ 押下後、以下のような画面に移動する。移動後、デバイス名を変更する場合は、「Name」を押下
して任意の名前に変更する。その後、右上の「Provision」押下する。押下後、OOB Type の選択
画面が表示される。「No OOB」を選択すると provisioning が完了し、Network タブに
provisioning が完了したデバイス名が表示される
図 28 iOS nRF mesh 3
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
36
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 29 iOS nRF mesh 4
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
37
TAIYO YUDEN CO., LTD
BLE mesh sample application
④ ②~③同様に「nRF5x Mesh Light」の provisioning を完了させる。
図 30 iOS nRF mesh 5
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
38
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑤ Setting タブを開き、「Application Keys」を押下する。押下後、次の画面に移動する。移動後
右上の「+」を押下する。押下後、図 31 の画面に移動する。移動後、右上の「Done」を押下す
る。
図 31 iOS nRF mesh 6
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
39
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 32 iOS nRF mesh 7
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
40
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑥ 押下後、Network タブに戻り、「nRF5x Mesh Switch」を押下し、「Application Keys」を押
下する。押下後、図 32 のような画面に移動する。移動後右上の「+」を押下して「App Key 1」を
選択し、右上の「Done」を押下して Application Key を登録する。
登録完了後、同様の作業を他のデバイスに対して行う。
図 33 iOS nRF mesh 8
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
41
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 34 iOS nRF mesh 9
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
42
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑦ Network タブに戻り、「nRF5x Mesh Light」を押下し、「Element 1」を押下する。押下後、
「Generic OnOff Server」を押下し、「Bind Application」を押下する。押下後、「App Key
1」を選択し右上の「Done」を押下する。
完了後、Server 側のデバイスが複数台ある場合、その数だけ同様の設定を行う
図 35 iOS nRF mesh 10
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
43
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 36 iOS nRF mesh 11
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
44
TAIYO YUDEN CO., LTD
BLE mesh sample application
⑧ Network タブに戻り、「nRF5x Mesh Switch」を押下し、「Element 2」を押下する。押下後、
「Generic OnOFF Client」を押下し、「Bind Application Key」を押下する。押下後、「App
Key 1」を選択し右上の「Done」を押下する。押下後、「Set Publication」を押下し、以下の画
面の「App Key 1」を押下する。押下後、画面下の「All Nodes」を選択し、「Set Publication」
画面に戻り、右上の「Done」を押下する。
図 37 iOS nRF mesh 12
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
45
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 38 iOS nRF mesh 13
図 39 iOS nRF mesh 14
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
46
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 40 iOS nRF mesh 15
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
47
TAIYO YUDEN CO., LTD
BLE mesh sample application
6. Evaluation Board 操作
3 章、または 4 章の設定が完了後、client 側の Evaluation Board の P.04 を low にすることで、す
べての server 側の Evaluation Board の P.20 を low から high に切り替えることができる。
図 41 server 側_P.20_low
図 42 client 側_GPIO 操作_low
18-Jun.2020 Ver.1.0
TAIYO YUDEN CO., LTD.
48
TAIYO YUDEN CO., LTD
BLE mesh sample application
図 43 server 側_P.20_確認
図 44 server 側_P.20_high
top related